DSE Unified Authenticatorによって認証を構成するための手順。
DSE Unified Authenticatorでは、内部Cassandraパスワード認証、LDAPパススルー認証、およびKerberos認証の任意の組み合わせを使用して認証を提供します。
認証は、デフォルトではオフになっています。ファイルおよびファイルでプロパティを構成し、認証を有効にして構成します。LDAPを使用したユーザーの認証には、OpsCenterも使用できます。
dse.yamlファイルの場所は、インストールのタイプによって異なります。
Installer-Services |
/etc/dse/dse.yaml |
パッケージ・インストール |
/etc/dse/dse.yaml |
Installer-No Services |
install_location/resources/dse/conf/dse.yaml |
tarボール・インストール |
install_location/resources/dse/conf/dse.yaml |
cassandra.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール |
/etc/dse/cassandra/cassandra.yaml |
tarボール・インストール |
install_location/resources/cassandra/conf/cassandra.yaml |
手順
各ノードで、次のようにします。
-
ファイルで、オーセンティケーターとオーソライザーにDSE Unified Authenticationを使用するのに必要な値が含まれていることを確認します。
-
オーセンティケーターを
DseAuthenticator
に変更します。デフォルトでは、オーセンティケーター・オプションはAllowAllAuthenticatorに設定されています。
-
オーソライザーを
DseAuthorizer
に変更します。デフォルトでは、オーソライザー・オプションはAllowAllAuthorizerに設定されています。
authenticator:com.datastax.bdp.cassandra.auth.DseAuthenticator
authorizer:com.datastax.bdp.cassandra.auth.DseAuthorizer
-
ファイルで、DataStax Enterpriseオーセンティケーション・オプションを以下のように設定します。
authentication_options:
enabled:true
default_scheme:kerberos
other_schemes:
- internal
scheme_permissions:true
allow_digest_with_kerberos:false
plain_text_without_ssl:warn
transitional_mode:disabled
-
認証をオンにし、DSE Unified Authenticatorを使用してユーザーを認証します。
DSE Unified Authenticatorがユーザーを認証するかどうかを制御します。DSE Unified Authenticatorでは、内部Cassandraパスワード認証、LDAPパススルー認証、およびKerberos認証の任意の組み合わせを使用して認証を提供します。 DSE Unified Authenticatorにより、複数の認証スキームを同時に使用することが可能になります。認証時に使用するスキームは、ドライバーが選択します。
-
ドライバーによって特定のスキームが要求されない場合に使用する認証スキームを指定します。
default_scheme
の場合、以下の値のいずれかを選択します。
- internal - 内部Cassandraパスワード認証を使用するプレーンテキスト認証。「内部認証」を参照してください。
- ldap - パススルーLDAP認証を使用するプレーンテキスト認証。「LDAPを使用したクラスターの認証」を参照してください。
- kerberos - Kerberosオーセンティケーターを使用するGSSAPI認証。「Kerberosを使用した認証」を参照してください。
-
ドライバーによる使用のために自動的に選択される他のスキーマを指定します。
Analyticsデータ・センター内の他のスキーマで内部認証とKerberos認証を両方使用することはできません。たとえば、default_scheme
がinternal
に設定され、other_schemes
がkerberos
に設定されている場合、Kerberos認証のみが機能します。
other_schemes
の場合、スキーマのリストを指定するか、これらの認証スキーマを1つ以上選択します。
other_schemes:
- kerberos
- ldap
-
ロールによって特定の認証スキームのパーミッションを要求するかどうかを指定します。
強制するには、scheme_permissions:true
を設定します
-
Kerberosによるdigest-md5認証を許可するかどうかを指定します。
Kerberosによるdigest-md5認証を許可するにはallow_digest_with_kerberos:
true
を設定します
-
暗号化されていないクライアント接続経由でDseAuthenticatorがプレーンテキスト認証要求に応答する方法を指定します。
plain_text_without_ssl
の場合、以下の値のいずれかを選択します。
- block - 要求を認証エラーでブロックします。
- warn - 要求に関する警告をログに記録しますが、続行を許可します。
- allow - 警告を出さずに要求を許可します。
-
クラスターでの認証のセットアップ中、DataStax Enterprise認証は暫定モードで機能します。このモードは、ダウンタイムのない認証の有効化をサポートする一時モードです。DseAuthenticatorが暫定モードで動作するかどうかを指定し、許容、通常、または厳密な認証を設定します。
transitional_mode
の場合、以下の値のいずれかを選択します。
- disabled - 移行モードは無効になります。
- permissive - スーパーユーザーのみが認証されログインできます。他のすべての認証は匿名ユーザーとしてログインが試みられます。
- normal - 認証情報が渡された場合、認証されます。
- 認証が正常に実行された場合、ユーザーはログインします。
- 認証が行われなかった場合、ユーザーは匿名ユーザーとしてログインします。
- 認証情報が渡されなかった場合、ユーザーは匿名ユーザーとしてログインします。
- normal - 認証情報が渡された場合、認証されます。
- 認証が正常に実行された場合、ユーザーはログインします。
- 認証が行われなかった場合、認証エラーが返されます。
- 認証情報が渡されなかった場合、ユーザーは匿名ユーザーとしてログインします。
-
system_authおよびdse_securityキースペースを構成します。
-
キャッシュを構成します。パーミッションの呼び出しは負荷の大きい操作になる場合があります。必要に応じて、cassandra.yamlファイルのオプションを設定し、パーミッション・キャッシングの有効期間を調整します。あるいは、このオプションを0に設定してパーミッション・キャッシングを無効にすることもできます。
-
サポートされているクライアントを起動するために使用する同じスーパーユーザー名とパスワード(cassandra)を使用してcqlshを起動します。たとえば、Linuxでcqlshを起動するには:
./cqlsh -u cassandra -p cassandra
cassandraユーザー名は例としてのみ提供されています。
-
デフォルトのスーパーユーザーを変更します。
注: デフォルトのcassandraユーザーは、新しいユーザーとスーパーユーザーの初期セットアップを支援して、これを無効にする場合にのみ使用します。
セキュリティおよびパフォーマンスのベスト・プラクティス:
- セキュリティに基づきユーザーの権利を制限します。たとえば、他のキースペースへのアクセスを許可しないでください。
- デフォルトのスーパーユーザーを変更するには、次の手順を実行します。
-
ノードを再起動します。
-
オプションで、権限およびロールの管理を構成します。
次のタスク
認証の構成を完了するには、認証スキームを構成します。
- 内部認証の場合:
default_scheme: internal
またはother_schemes: internal
の場合は、「内部認証」を参照してください。
- LDAPの場合:
default_scheme: ldap
またはother_schemes:
ldap
の場合は、「LDAPを使用したクラスターの認証」を参照してください。
- Kerberosの場合:
default_scheme: kerberos
またはother_schemes: kerberos
の場合は、「Kerberosによる認証」を参照してください。