認可

Identity はグループとロールの概念をサポートします。ユーザーはグループに所属します。グループはロールの一覧を持ちます。OpenStack サービスはユーザーがサービスにアクセスしようとしているロールを参照します。OpenStack ポリシー判定ミドルウェアにより、各リソースに関連付けられたポリシールール、ユーザーのグループとロール、関連性を考慮して、要求されたリソースへのアクセスが許可されるかを判断されます。

The policy enforcement middleware enables fine-grained access control to OpenStack resources. The behaviour of the policy is discussed in depth in ポリシー.

公式なアクセス制御ポリシーの確立

ロール、グループ、ユーザーを設定する前に、OpenStack に必要なアクセス制御ポリシーをドキュメント化します。ポリシーは組織に対するあらゆる規制や法令の要求事項に沿っているべきです。アクセス制御設定のさらなる変更は公式なポリシーに従って実行されるべきです。ポリシーは、アカウントの作成、削除、無効化、有効化、および権限の割り当てに関する条件とプロセスを含めるべきです。定期的にポリシーをレビューし、設定が承認されたポリシーに従っていることを確認します。

サービス認可

Cloud administrators must define a user with the role of admin for each service, as described in the OpenStack Administrator Guide. This service account provides the service with the authorization to authenticate users.

The Compute and Object Storage services can be configured to use the Identity service to store authentication information. Other options to store authentication information include the use of the "tempAuth" file, however this should not be deployed in a production environment as the password is displayed in plain text.

Identity は TLS のクライアント認証を有効化していると、それをサポートします。TLS クライアント認証はユーザー名、パスワードに加えて、ユーザー識別により信頼性を与えるために追加の認証要素を提供します。ユーザー名とパスワードが漏えいした場合に、権限のないアクセスのリスクを減らすことができます。しかしながら、証明書をユーザーに発行する追加の管理作業とコストが発生します。これはすべての環境で実現できるとは限りません。

注釈

Identity にサービスの認証をするとき、TLS を使用したクライアント認証を使用することを推奨します。

クラウド管理者は権限のない変更から重要な設定ファイルを保護すべきです。これは SELinux のような強制アクセス制御のフレームワークで実現できます。これらには /etc/keystone/keystone.conf や X.509 証明書などがあります。

Client authentication with TLS requires certificates be issued to services. These certificates can be signed by an external or internal certificate authority. OpenStack services check the validity of certificate signatures against trusted CAs by default and connections will fail if the signature is not valid or the CA is not trusted. Cloud deployers may use self-signed certificates. In this case, the validity check must be disabled or the certificate should be marked as trusted. To disable validation of self-signed certificates, set insecure=False in the [filter:authtoken] section in the /etc/nova/api.paste.ini file. This setting also disables certificates for other components.

管理ユーザー

管理ユーザーは Identity や証明書のような 2 要素認証をサポートする外部認証サービスを使用して認証することを推奨します。これにより、パスワード推測によるリスクを減らすことができます。この推奨事項は特権アカウントへのネットワークアクセスに多要素認証を使用するという NIST 800-53 IA-2(1) ガイドに適合しています。

エンドユーザー

Identity は直接エンドユーザー認証を提供できます。または、組織のセキュリティポリシーや要求事項を確認するために外部認証方式を使用するよう設定できます。