8.5. Ceph Object Gateway およびマルチファクター認証
ストレージ管理者は、Ceph Object Gateway ユーザーの時間ベースのワンタイムパスワード (TOTP) トークンを管理できます。
8.5.1. マルチファクター認証 リンクのコピーリンクがクリップボードにコピーされました!
バケッにオブジェクトのバージョニングを設定した場合、開発者は、必要に応じて、削除要求にマルチファクター認証 (MFA) を要求するように設定することができます。MFA を使用すると、時間ベースのワンタイムパスワード (TOTP) トークンは鍵として x-amz-mfa
ヘッダーに渡されます。トークンは、Google Authenticator などの仮想 MFA デバイス、または Gemalto が提供するようなハードウェア MFA デバイスで生成されます。
radosgw-admin
を使用して、時間ベースのワンタイムパスワードトークンをユーザーに割り当てます。シークレットシードおよびシリアル ID を設定する必要があります。radosgw-admin
を使用して、トークンのリスト表示、削除、および再同期を行うこともできます。
マルチサイト環境では、ゾーンごとに異なるトークンを使用することが推奨されます。これは、MFA ID がユーザーのメタデータに設定されている一方で、実際の MFA ワンタイムパスワード設定はローカルゾーンの OSD に存在するためです。
用語 | 説明 |
---|---|
TOTP | 時間ベースのワンタイムパスワード |
トークンのシリアル | TOTP トークンの ID を表す文字列。 |
トークンシード | TOTP の計算に使用されるシークレットが表示されます。16 進数または base32 にすることができます。 |
TOTP 秒 | TOTP の生成に使用される時間解決。 |
TOTP ウィンドウ | トークンの検証時に現在のトークンの前後にチェックされる TOTP トークンの数。 |
TOTP ピン | 特定の時点で TOTP トークンの有効な値。 |
8.5.2. マルチファクター認証の作成 リンクのコピーリンクがクリップボードにコピーされました!
マルチファクター認証 (MFA) を設定するには、ワンタイムパスワードジェネレーターおよびバックエンド MFA システムが使用するシークレットシードを作成する必要があります。
前提条件
- Linux システム。
- コマンドラインシェルへのアクセス。
手順
urandom
Linux デバイスファイルから 30 文字のシードを生成し、シェル変数SEED
に格納します。例
SEED=$(head -10 /dev/urandom | sha512sum | cut -b 1-30)
[user@host01 ~]$ SEED=$(head -10 /dev/urandom | sha512sum | cut -b 1-30)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow SEED
変数で echo を実行して、シードを出力します。例
echo $SEED
[user@host01 ~]$ echo $SEED 492dedb20cf51d1405ef6a1316017e
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 同じシードを使用するように、ワンタイムパスワードジェネレーターおよびバックエンドの MFA システムを設定します。
8.5.3. 新しいマルチファクター認証 TOTP トークンの作成 リンクのコピーリンクがクリップボードにコピーされました!
新たなマルチファクター認証 (MFA) 時間ベースのワンタイムパスワード (TOTP) トークンを作成します。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway がインストールされている。
- Ceph Monitor ノード上での root アクセスがある。
- ワンタイムパスワードジェネレーターおよび Ceph Object Gateway MFA のシークレットシードが生成されている。
手順
新しい MFA TOTP トークンを作成します。
構文
radosgw-admin mfa create --uid=USERID --totp-serial=SERIAL --totp-seed=SEED --totp-seed-type=SEED_TYPE --totp-seconds=TOTP_SECONDS --totp-window=TOTP_WINDOW
radosgw-admin mfa create --uid=USERID --totp-serial=SERIAL --totp-seed=SEED --totp-seed-type=SEED_TYPE --totp-seconds=TOTP_SECONDS --totp-window=TOTP_WINDOW
Copy to Clipboard Copied! Toggle word wrap Toggle overflow USERID にはユーザー名を設定し、SERIAL には TOTP トークンの ID を表す文字列を設定し、SEED には TOTP の計算に使用する 16 進数または base32 値を設定します。以下の設定は任意です。SEED_TYPE を
hex
またはbase32
に設定し、TOTP_SECONDS をタイムアウト (秒単位) に設定するか、TOTP_WINDOW を設定して、トークンの検証時に現在のトークンの前後にチェックします。例
radosgw-admin mfa create --uid=johndoe --totp-serial=MFAtest --totp-seed=492dedb20cf51d1405ef6a1316017e
[root@host01 ~]# radosgw-admin mfa create --uid=johndoe --totp-serial=MFAtest --totp-seed=492dedb20cf51d1405ef6a1316017e
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.5.4. マルチファクター認証 TOTP トークンのテスト リンクのコピーリンクがクリップボードにコピーされました!
マルチファクター認証 (MFA) のタイムベースワンタイムパスワード (TOTP) トークンをテストします。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway がインストールされている。
- Ceph Monitor ノード上での root アクセスがある。
-
MFA TOTP トークンは、
radosgw-admin mfa create
を使用して作成されました。
手順
TOTP トークンの PIN をテストして、TOTP が正しく機能することを確認します。
構文
radosgw-admin mfa check --uid=USERID --totp-serial=SERIAL --totp-pin=PIN
radosgw-admin mfa check --uid=USERID --totp-serial=SERIAL --totp-pin=PIN
Copy to Clipboard Copied! Toggle word wrap Toggle overflow USERID には MFA が設定されているユーザー名を設定し、SERIAL には TOTP トークンの ID を表す文字列を設定し、PIN にはワンタイムパスワードジェネレーターからの最新の PIN を設定します。
例
radosgw-admin mfa check --uid=johndoe --totp-serial=MFAtest --totp-pin=870305
[root@host01 ~]# radosgw-admin mfa check --uid=johndoe --totp-serial=MFAtest --totp-pin=870305 ok
Copy to Clipboard Copied! Toggle word wrap Toggle overflow PIN の初回テスト時の場合には、失敗する場合があります。失敗する場合は、トークンを再同期します。Red Hat Ceph Storage Object Gateway 設定および管理ガイドの マルチファクター認証トークンの再同期 を参照してください。
8.5.5. マルチファクター認証 TOTP トークンの再同期 リンクのコピーリンクがクリップボードにコピーされました!
マルチファクター認証 (MFA) のタイムベースのワンタイムパスワードトークンを再同期します。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway がインストールされている。
- Ceph Monitor ノード上での root アクセスがある。
-
MFA TOTP トークンは、
radosgw-admin mfa create
を使用して作成されました。
手順
タイムスキューまたはチェックが失敗した場合に、マルチファクター認証 TOTP トークンを再同期します。
これには、前のピンと現在のピンの 2 回連続して渡す必要があります。
構文
radosgw-admin mfa resync --uid=USERID --totp-serial=SERIAL --totp-pin=PREVIOUS_PIN --totp=pin=CURRENT_PIN
radosgw-admin mfa resync --uid=USERID --totp-serial=SERIAL --totp-pin=PREVIOUS_PIN --totp=pin=CURRENT_PIN
Copy to Clipboard Copied! Toggle word wrap Toggle overflow USERID には MFA が設定されているユーザー名を設定し、SERIAL には TOTP トークンの ID を表す文字列を設定し、PREVIOUS_PIN にはユーザーの以前の PIN を設定し、CURRENT_PIN にはユーザーの現在の PIN を設定します。
例
radosgw-admin mfa resync --uid=johndoe --totp-serial=MFAtest --totp-pin=802021 --totp-pin=439996
[root@host01 ~]# radosgw-admin mfa resync --uid=johndoe --totp-serial=MFAtest --totp-pin=802021 --totp-pin=439996
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 新しい PIN をテストしてトークンが正常に再同期されたことを確認します。
構文
radosgw-admin mfa check --uid=USERID --totp-serial=SERIAL --totp-pin=PIN
radosgw-admin mfa check --uid=USERID --totp-serial=SERIAL --totp-pin=PIN
Copy to Clipboard Copied! Toggle word wrap Toggle overflow USERID には MFA が設定されているユーザー名を設定し、SERIALには TOTP トークンの ID を表す文字列を設定し、PIN にはユーザーの PIN を設定します。
例
radosgw-admin mfa check --uid=johndoe --totp-serial=MFAtest --totp-pin=870305
[root@host01 ~]# radosgw-admin mfa check --uid=johndoe --totp-serial=MFAtest --totp-pin=870305 ok
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.5.6. マルチファクター認証 TOTP トークンのリスト表示 リンクのコピーリンクがクリップボードにコピーされました!
特定のユーザーが持っているすべてのマルチファクター認証 (MFA) 時間ベースのワンタイムパスワード (TOTP) トークンをリスト表示します。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway がインストールされている。
- Ceph Monitor ノード上での root アクセスがある。
-
MFA TOTP トークンは、
radosgw-admin mfa create
を使用して作成されました。
手順
MFA TOTP トークンをリスト表示します。
構文
radosgw-admin mfa list --uid=USERID
radosgw-admin mfa list --uid=USERID
Copy to Clipboard Copied! Toggle word wrap Toggle overflow USERID に、MFA が設定されているユーザー名を設定します。
例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.5.7. マルチファクター認証 TOTP トークンの表示 リンクのコピーリンクがクリップボードにコピーされました!
シリアルを指定して、特定のマルチファクター認証 (MFA) 時間ベースのワンタイムパスワード (TOTP) トークンを表示します。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway がインストールされている。
- Ceph Monitor ノード上での root アクセスがある。
-
MFA TOTP トークンは、
radosgw-admin mfa create
を使用して作成されました。
手順
MFA TOTP トークンを表示します。
構文
radosgw-admin mfa get --uid=USERID --totp-serial=SERIAL
radosgw-admin mfa get --uid=USERID --totp-serial=SERIAL
Copy to Clipboard Copied! Toggle word wrap Toggle overflow USERID には MFA が設定されているユーザー名に設定し、SERIAL には TOTP トークンの ID を表す文字列に設定します。
8.5.8. マルチファクター認証 TOTP トークンの削除 リンクのコピーリンクがクリップボードにコピーされました!
マルチファクター認証 (MFA) のタイムベースワンタイムパスワード (TOTP) トークンを削除します。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway がインストールされている。
- Ceph Monitor ノード上での root アクセスがある。
-
MFA TOTP トークンは、
radosgw-admin mfa create
を使用して作成されました。
手順
MFA TOTP トークンを削除します。
構文
radosgw-admin mfa remove --uid=USERID --totp-serial=SERIAL
radosgw-admin mfa remove --uid=USERID --totp-serial=SERIAL
Copy to Clipboard Copied! Toggle word wrap Toggle overflow USERID には MFA が設定されているユーザー名に設定し、SERIAL には TOTP トークンの ID を表す文字列に設定します。
例
radosgw-admin mfa remove --uid=johndoe --totp-serial=MFAtest
[root@host01 ~]# radosgw-admin mfa remove --uid=johndoe --totp-serial=MFAtest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow MFA TOTP トークンが削除されたことを確認します。
構文
radosgw-admin mfa get --uid=USERID --totp-serial=SERIAL
radosgw-admin mfa get --uid=USERID --totp-serial=SERIAL
Copy to Clipboard Copied! Toggle word wrap Toggle overflow USERID には MFA が設定されているユーザー名に設定し、SERIAL には TOTP トークンの ID を表す文字列に設定します。
例
radosgw-admin mfa get --uid=johndoe --totp-serial=MFAtest
[root@host01 ~]# radosgw-admin mfa get --uid=johndoe --totp-serial=MFAtest MFA serial id not found
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.5.9. MFA 対応バージョン管理オブジェクトの削除 リンクのコピーリンクがクリップボードにコピーされました!
MFA 対応のバージョン管理されたオブジェクトを削除します。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway がインストールされている。
- Ceph Monitor ノードに対するルートアクセス権があります。
-
MFA TOTP トークンは、
radosgw-admin mfa create
を使用して作成されました。 - バージョン管理が有効になっているバケットを削除するには、root ユーザーを MFA オブジェクトで認証する必要があります。
- 削除する MFA オブジェクトは、バージョン管理が有効になっているバケット内にあります。
手順
MFA 対応のバージョン管理されたオブジェクトを削除します。
構文
radosgw-admin object rm --bucket <bucket_name> --object <object_name> --object-version <object_version> --totp-pin <totp_token>
radosgw-admin object rm --bucket <bucket_name> --object <object_name> --object-version <object_version> --totp-pin <totp_token>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow USERID には MFA が設定されているユーザー名に設定し、SERIAL には TOTP トークンの ID を表す文字列に設定します。
例
[radosgw-admin object rm --bucket test-mfa --object obj1 --object-version 4SdKdSmpVAarLLdsFukjUVEwr-2oWfC --totp-pin 562813
[radosgw-admin object rm --bucket test-mfa --object obj1 --object-version 4SdKdSmpVAarLLdsFukjUVEwr-2oWfC --totp-pin 562813
Copy to Clipboard Copied! Toggle word wrap Toggle overflow MFA 対応のバージョン管理されたオブジェクトが削除されたことを確認します。
構文
radosgw-admin bucket list --bucket <bucket_name>
radosgw-admin bucket list --bucket <bucket_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow