LDAPモード用にロールを作成する
LDAPでロール割り当てを管理するために、LDAPサーバー内のグループ名に一致するロールを作成します。
ロール管理モードがLDAPに設定されている場合、DataStax Enterprise Role Manager(DataStax Enterpriseロール・マネージャー)はLDAP内のユーザーを検索し、グループのリストを返します。グループ検索は、ldap_options
で構成されます。
以下の規則が適用されます。
- LDAPグループ名とロール名の照合では大文字と小文字が区別され、グループ名属性の値に完全に一致する必要があります。
- CQL要求を可能にするには、ユーザーのLDAPグループ名の1つ以上がロールに一致する必要があります。
- ユーザーのグループに一致する少なくとも1つのロールでログインが有効になっている必要があります。
- ロール名に一致するLDAPグループのメンバーであるユーザーに、ロールを割り当てます。
- 個別のパーミッション・セットを持つLDAPグループごとに1つのロールを作成します。 LDAPモードを選択している場合、ネストされたロールは無効になります。
GRANT role_name TO role_name
を使用すると、エラーが発生します。
ヒント: DSEは、名前がLDAPのユーザー名フィルターに一致するが、内部やKerberosなど別の方法で認証されているユーザーの検索をサポートしています。通常、Kerberosのフル・プリンシパル名はユーザーの電子メール・アドレスに一致します。Kerberos認証とLDAPグループ検索を使用するには、LDAPユーザー・フィルター内のKerberosプリンシパル名に一致するユーザー属性を指定します。たとえば、
mail: {0}
などです。始める前に
これらの指示は、以下の設定を持つ環境に適用されます。
- cassandra.yamlファイルでオーセンティケーター、オーソライザー、およびロール・マネージャーが設定されている。
authenticator: com.datastax.bdp.cassandra.auth.DseAuthenticator authorizer: com.datastax.bdp.cassandra.auth.DseAuthorizer role_manager: com.datastax.bdp.cassandra.auth.DseRoleManager
- dse.yamlファイルで認証、ロール管理、および権限管理オプションが設定されている。
authentication_options: default_scheme: ldap other_schemes: - kerberos - internal ... authorization_options: enabled: true ... role_management_options: mode: ldap
手順
-
ロールを作成します。
以下の例は、analyst LDAPグループ内のユーザーのロールを示しています。
CREATE ROLE analyst WITH LOGIN = true;
ヒント: スーパーユーザーは、自身を除くすべてのロールに対してパーミッションを付与したり、取り消したりすることができます。 -
割り当てをLDAP認証スキームにバインドします。
GRANT EXECUTE on LDAP SCHEME to analyst;
大文字を使用するには単一引用符でロール名を囲みます。名前は大文字と小文字が区別されます。ロール・マネージャーは、LDAPスキームで認証されたユーザーに対してのみ、ロールを割り当てます。scheme_permissionsがtrueに設定されている場合にのみ必須です。 -
cyclingキースペース内のSELECTを許可します。
GRANT SELECT on KEYSPACE cycling to analyst;
analystグループのユーザーは、cyclingキースペース内ですべてのテーブルをクエリーできます。