3.2.8. セキュアなトークンサービス


Amazon Web Services の Secure Token Service (STS) は、ユーザーを認証するための一時セキュリティー認証情報のセットを返します。

Red Hat Ceph Storage Object Gateway は、Identity and Access Management (IAM) 用の Amazon STS アプリケーションプログラミングインターフェイス (API) のサブセットをサポートします。

ユーザーは最初に STS に対して認証し、後続の要求で使用できる有効期間の短い S3 アクセスキーとシークレットキーを受け取ります。

Red Hat Ceph Storage は、OIDC プロバイダーを設定してシングルサインオンと統合することで、S3 ユーザーを認証できます。この機能により、Object Storage ユーザーは、ローカルの Ceph Object Gateway データベースではなく、エンタープライズアイデンティティープロバイダーに対して認証できるようになります。たとえば、SSO がバックエンドのエンタープライズ IDP に接続されている場合、Object Storage ユーザーはエンタープライズ認証情報を使用して認証して、Ceph Object Gateway S3 エンドポイントにアクセスできます。

STS を IAM ロールポリシー機能と併用することで、細かく調整された認可ポリシーを作成してデータへのアクセスを制御できます。これにより、オブジェクトストレージデータにロールベースのアクセス制御 (RBAC) または属性ベースのアクセス制御 (ABAC) 認可モデルを実装できるようになり、どのユーザーがデータにアクセスできるかを完全に制御できるようになります。

STS を使用して S3 リソースにアクセスするワークフローを簡略化する

  1. ユーザーは、Red Hat Ceph Storage 内の S3 リソースにアクセスしたいと考えています。
  2. ユーザーは SSO プロバイダーに対して認証する必要があります。
  3. SSO プロバイダーは IDP と統合され、ユーザーの認証情報が有効か確認し、ユーザーが認証されると SSO がユーザーにトークンを提供します。
  4. ユーザーは、SSO によって提供されたトークンを使用して Ceph Object Gateway STS エンドポイントにアクセスし、S3 リソースへのアクセスをユーザーに提供する IAM ロールを引き受けるように要求します。
  5. Red Hat Ceph Storage ゲートウェイはユーザートークンを受け取り、SSO にトークンの検証を要求します。
  6. SSO がトークンを検証すると、ユーザーはロールを引き受けることができます。STS を通じて、ユーザーは一時的なアクセスと秘密鍵を取得し、S3 リソースにアクセスできるようになります。
  7. ユーザーが引き受けた IAM ロールにアタッチされたポリシーに応じて、ユーザーは S3 リソースセットにアクセスできます。
  8. たとえば、バケット A を読み取り、バケット B に書き込みます。
STS ワークフロー

関連情報

3.2.8.1. Secure Token Service アプリケーションのプログラミングインターフェイス

Ceph Object Gateway は、以下の Secure Token Service (STS) アプリケーションプログラミングインターフェイス (API) を実装します。

AssumeRole

この API は、アカウント間のアクセスのための一時的な認証情報のセットを返します。これらの一時的な認証情報により、Role と、AssumeRole API で割り当てられるポリシーの両方に割り当てられるパーミッションポリシーを使用することができます。RoleArn および RoleSessionName リクエストパラメーターは必須ですが、他の要求パラメーターは任意です。

RoleArn
説明
長さが 20 ~ 2048 文字の Amazon Resource Name (ARN) を想定するロール。
String
必須
はい
RoleSessionName
説明
仮定するロールセッション名を特定します。ロールセッション名は、異なるプリンシパルや別の理由がロールを想定する場合にセッションを一意に識別できます。このパラメーターの値は、2 文字から 64 文字までです。=,.@、および - 文字は使用できますが、スペースは使用できません。
String
必須
はい
Policy
説明
インラインセッションで使用する JSON 形式の Identity and Access Management (IAM) ポリシー。このパラメーターの値は 1 文字から 2048 文字までです。
String
必須
いいえ
DurationSeconds
説明
セッションの期間 (秒単位)。最小値は 900 秒で、最大値は 43200 秒です。デフォルト値は 3600 秒です。
Integer
必須
いいえ
ExternalId
説明
別のアカウントのロールを想定する場合には、利用可能な場合は一意の外部識別子を指定します。このパラメーターの値は、2 文字から 1224 文字までになります。
String
必須
いいえ
SerialNumber
説明
関連付けられたマルチファクター認証 (MFA) デバイスからのユーザーの識別番号。パラメーターの値は、9 文字から 256 文字までのハードウェアデバイスまたは仮想デバイスのシリアル番号になります。
String
必須
いいえ
TokenCode
説明
信頼ポリシーに MFA が必要な場合は、マルチファクター認証 (MFA) デバイスから生成された値。MFA デバイスが必要で、このパラメーターの値が空または期限切れの場合には、AssumeRole の呼び出しは "access denied" エラーメッセージを返します。このパラメーターの値には、固定長は 6 文字です。
String
必須
いいえ

AssumeRoleWithWebIdentity

この API は、OpenID Connect や OAuth 2.0 アイデンティティープロバイダーなどのアプリケーションによって認証されたユーザーの一時認証情報のセットを返します。RoleArn および RoleSessionName リクエストパラメーターは必須ですが、他の要求パラメーターは任意です。

RoleArn
説明
長さが 20 ~ 2048 文字の Amazon Resource Name (ARN) を想定するロール。
String
必須
はい
RoleSessionName
説明
仮定するロールセッション名を特定します。ロールセッション名は、異なるプリンシパルや別の理由がロールを想定する場合にセッションを一意に識別できます。このパラメーターの値は、2 文字から 64 文字までです。=,.@、および - 文字は使用できますが、スペースは使用できません。
String
必須
はい
Policy
説明
インラインセッションで使用する JSON 形式の Identity and Access Management (IAM) ポリシー。このパラメーターの値は 1 文字から 2048 文字までです。
String
必須
いいえ
DurationSeconds
説明
セッションの期間 (秒単位)。最小値は 900 秒で、最大値は 43200 秒です。デフォルト値は 3600 秒です。
Integer
必須
いいえ
ProviderId
説明
アイデンティティープロバイダーからのドメイン名の完全修飾ホストコンポーネント。このパラメーターの値は、長さが 4 ~ 2048 文字の OAuth 2.0 アクセストークンでのみ有効です。
String
必須
いいえ
WebIdentityToken
説明
アイデンティティープロバイダーから提供される OpenID Connect アイデンティティートークンまたは OAuth 2.0 アクセストークン。このパラメーターの値は、4 文字から 2048 文字までです。
String
必須
いいえ

関連情報

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る