プロダクション環境のための手順
プロダクション環境または他の既存のDataStax Enterprise環境で実装する場合に、ダウンタイムを発生させることなくDSE Unified Authentication(DSE統合認証)を有効にする手順。
ダウンタイムを発生させることなくアクセス制御を有効にするには、移行モードを使用して、アカウントを持たないアプリケーションやユーザーを、サービスを中断させずに一時的にサポートします。
手順
-
すべてのアプリケーションを更新して認証情報を提供し、最新のDSEドライバーを使用するようにします。「DataStaxドライバー」を参照してください。
authentication.transitional_mode
を使用する場合は、空のユーザー名とパスワードを指定して、anonymous
ロールでログインできます。認証と権限管理が無効になっている場合、接続要求の認証情報部分は無視されます。認証を有効にした後、すべての接続で資格情報を提供する必要があります。 - セキュリティ・キースペースのレプリケーション係数を変更します。「セキュリティ・キースペースのレプリケーション係数の設定」を参照してください。
-
system_auth
およびdse_authキースペース
のフル・リペアを実行します。 -
各ノードで、移行モードの認証と権限管理を有効にします。
- authentication_options transitional_modeをpermissiveに設定します。
- authorization_options transitional_modeをnormalに設定します。
「DSE Unified Authentication(DSE統合認証)の有効化」を参照してください。
- ロギングをオンにして、アプリケーションが認証できることを確認できるようにします。「データベース監査の設定」を参照してください。
- JMX認証を有効します。「MBeanへのアクセスの制御」を参照してください。
-
rolling restartを実行します。
注意: トランザクション・ノードは、再起動後の悪意のあるアクティビティーに対して脆弱です。デフォルトのcassandraアカウントとパスワード「cassandra」を使用して、誰でもシステムにアクセスできます。DataStaxでは、cassandraアカウントを無効にするまでクラスターを分離しておくことを推奨します。
-
再起動が完了したら、
cqlsh
を使用してデフォルトのcassandraアカウントを置き換えます。「superuserログインの追加」を参照してください。注: デフォルトのcassandraアカウントを使用すると、パフォーマンスに影響を及ぼす可能性があります。ログインを含むすべての要求は、整合性レベルQUORUM
で実行されます。DataStaxでは、ルート・アカウントを作成する場合にのみこのアカウントを使用することを推奨します。 - 新しいrootアカウントに切り替え、ロールを構成して、パーミッションを割り当てます。「ログインとユーザーの設定」を参照してください。
- 監査ログを使用するか、Kerberosを使用しているときはKDCログを使用して、すべてのアプリケーションがトランザクション・ノードにアクセスでき、要求の実行に必要なパーミッションがあることを確認します。「ログ形式」を参照してください。
-
dse.yamlで、
authentication_options
とauthorization_options
transitional_mode
をdisabled
に設定します。 - rolling restartを実行します。