スーパーユーザー・ログインの追加
ロールベースのアクセス制御を有効にしたら、独自のスーパーユーザー・ログインを作成し、デフォルトのcassandra
ログインを無効にするか削除します。
ロールベースのアクセス制御を有効にしたら、独自のスーパーユーザー・アカウントを作成し、デフォルトのcassandra
アカウントを無効にするか削除します。スーパーユーザー・オプションで作成されたロールには、データベースへのフル・アクセス権があります。このロールを持つユーザーは、すべてのデータベース・リソースで任意のCQLコマンドを実行できます。
DataStax Enterpriseデータベースには、デフォルトで、パスワードcassandra
が指定されているロールcassandra
が用意されています。cassandra
ロールはスーパーユーザー・ログイン・アカウントで、データベースへのフル・アクセス権があります。ログインを含むcassandraアカウントからの要求では、QUORUMの整合性レベルを使用します。QUORUMは、複数のデータ・センター環境において重大なパフォーマンス低下を招く場合があります。セキュリティとパフォーマンスのために、DataStaxは、RBACの初回設定時に一度だけcassandraロールを使用して自分のrootアカウントを確立してから、cassandraロールを無効にするか削除することを推奨しています。
始める前に
手順
-
Cassandraユーザーとして、CQLシェル(cqlsh)にログインします。
cqlsh -u cassandra -p cassandra
-
CQLデータベースに格納されているパスワードを使用して新しいスーパーユーザー・アカウントを作成します。
CREATE ROLE root_user_name with SUPERUSER = true AND LOGIN = true and PASSWORD = 'password';
-
cqlshを終了します。
EXIT;
-
cassandraロールを無効にするか削除するために、前の手順で作成した新しいロールでログインします。
cqlsh -u root_user
プロンプトに応じてパスワードを入力します。
-
LIST ROLESを使用して、ロールがスーパーユーザーとして作成されたことを確認します。
LIST ROLES;
role | super | login | options ---------------------+-------+-------+--------- root_user | True | True | {} cassandra | True | True | {} (2 rows)
-
cassandraアカウントを削除するか更新します。
- cassandraアカウントを削除します。
DROP ROLE cassandra;
- スーパーユーザーを無効にし、パスワードを変更してcassandraロールを更新します。
ALTER ROLE cassandra WITH SUPERUSER = false AND LOGIN = false AND password='new_secret_pw';
プロダクション環境では、データベースのセキュリティを確保するために、このアカウントを削除することを推奨します。LDAPなどの外部認証方法を使用すると、昇格した権限で誤って割り当てられることがないようにできます。 - cassandraアカウントを削除します。
-
cassandraロールが削除されたことを確認します。
LIST ROLES;
これらの手順で作成されたロールのみが表示されます。role | super | login | options ---------------------+-------+-------+--------- root_user | True | True | {} (1 rows)
- ファイアウォールを再開して、プロダクションCQLトラフィックをサポートします。
次のタスク
構成された認証スキーム用のユーザー名またはグループ名に対してマップするロールを設定します。