View a markdown version of this page

AWS サインイン条件キーリファレンス - AWS サインイン

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS サインイン条件キーリファレンス

このページでは、 AWS サインインリソースベースのポリシーとリソースコントロールポリシー (RCPs) で使用できる条件キーを一覧表示し、各キーが適用される評価フェーズとアクションを示します。 AWS サインインにのみ固有signin:PrincipalArnであり、その他は AWS グローバル条件キーです。グローバルキーの定義については、AWS 「 グローバル条件コンテキストキー」を参照してください。

サービス認可リファレンスのアクションと条件キーの完全なリストについては、AWS 「サインインのアクション、リソース、および条件キー」を参照してください。

ネットワークベースの条件キー

これらの条件キーは、リクエストの送信元をチェックします。 AWS Sign-In は、リソースベースのポリシーと RCPs の両方で、すべての AWS サインインアクション (signin:Authenticatesignin:AuthorizeOAuth2Accesssignin:CreateOAuth2Token) についてそれらを評価します。

ネットワークベースの条件キー
条件キー オペレータ 説明 使用ルール
aws:SourceIp IpAddress, NotIpAddress パブリック IP アドレスまたは CIDR 範囲 リクエストが VPC エンドポイントを使用する場合には存在しません。同じステートメントで VPC ベースの条件と組み合わせる場合は、 IfExists 演算子を使用します。
aws:SourceVpc StringEquals, StringNotEquals VPC ID (vpc-xxxxxxxx) リクエストが VPC エンドポイントを使用している場合にのみ存在します。と aws:RequestedRegionを使用して、クロスリージョン VPC ID の衝突を防止します。
aws:SourceVpce StringEquals, StringNotEquals VPC エンドポイント ID (vpce-xxxxxxxx) リクエストが VPC エンドポイントを使用している場合にのみ存在します。
aws:VpcSourceIp IpAddress, NotIpAddress VPC 内のプライベート IP aws:VpcSourceIp 条件キーは必ず aws:SourceVpcまたは aws:SourceVpce条件キーとともに使用してください。
aws:RequestedRegion StringEquals, StringNotEquals ターゲット AWS リージョンコード クロスリージョン VPC ID の衝突を防ぐために を使用する場合aws:SourceVpcに推奨されます。複数のリージョンを指定できます。
重要

1 つのリクエストにはaws:SourceIp、両方ではなく、 (パブリックネットワーク) または aws:SourceVpc (VPC エンドポイント) が含まれます。両方のパスを対象とする拒否なしポリシーを記述する場合は、IfExists演算子 ( などNotIpAddressIfExists) を使用するか、個別のステートメントを作成します。

ID ベースの条件キー

これらの条件キーは、リクエストを行っているユーザーをチェックします。これらは、プリンシパル ID が確立された認証後アクション (signin:AuthorizeOAuth2Access および signin:CreateOAuth2Token) でのみ使用できます。

ID ベースの条件キー
条件キー オペレータ 説明
aws:PrincipalArn ArnEquals, ArnLike, ArnNotEquals, StringEquals, StringLike 認証された IAM プリンシパルの ARN arn:aws:iam::123456789012:user/alice, arn:aws:iam::123456789012:role/Admin
aws:PrincipalAccount StringEquals, StringNotEquals AWS プリンシパルの アカウント ID 123456789012

サービス固有の条件キー: signin:PrincipalArn

次の条件キーは AWS サインインに固有であり、グローバル AWS キーではありません。これは、認証前評価中にのみ使用できます。を使用してsignin:PrincipalArn、認証が完了する前にサインインを開始するプリンシパルを識別します。これは と同等の事前認証でありaws:PrincipalArn、認証後までは使用できません。

オペレータ

ARN 演算子 (ArnEqualsArnLikeArnNotEqualsArnNotLike) と文字列演算子 (StringEqualsStringLike)。

可用性

AWS サインインには、事前認証フェーズ ( signin:Authenticateアクション) 中のリクエストコンテキストにこのキーが含まれます。認証後のアクション (signin:AuthorizeOAuth2Access および ) では使用できませんsignin:CreateOAuth2Token

データ型

ARN。文字列演算子ではなく ARN 演算子を使用します。

値の型

単一値。

以下でサポート

リソースベースのポリシーと RCPs。

ARN 演算子を使用して値を比較します。次のプリンシパルタイプを指定できます。

  • AWS アカウント ルートユーザー (arn:aws:iam::123456789012:root)

  • IAM ユーザー (arn:aws:iam::123456789012:user/user-name)

  • IAM ロール (arn:aws:iam::123456789012:role/role-name)

ユースケース: 除外されたプリンシパル ID をネットワーク制限から除外し、他のすべてのアクセス試行に対してネットワークコントロールを適用しながらロックアウトを防止します。

例 – ルートユーザーを除き、不正なネットワークからの事前認証アクセスを拒否します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Principal": { "AWS": "*" }, "Action": ["signin:Authenticate"], "Resource": "*", "Condition": { "ArnNotEquals": { "signin:PrincipalArn": "arn:aws:iam::123456789012:root" }, "NotIpAddress": { "aws:SourceIp": "203.0.113.0/24" }, "StringEquals": { "aws:ResourceAccount": "123456789012" } } }, { "Effect": "Deny", "Principal": { "AWS": "*" }, "Action": ["signin:CreateOAuth2Token", "signin:AuthorizeOAuth2Access"], "Resource": "*", "Condition": { "ArnNotEquals": { "aws:PrincipalArn": "arn:aws:iam::123456789012:root" }, "NotIpAddress": { "aws:SourceIp": "203.0.113.0/24" }, "StringEquals": { "aws:ResourceAccount": "123456789012" } } } ] }

このポリシーは、アカウントのルートユーザーを除き、203.0.113.0/24IP 範囲外からのコンソールアクセスを拒否します。認証前ステートメントは、認証が完了する前に signin:PrincipalArn を使用してルートユーザーを除外します。認証後ステートメントはaws:PrincipalArn、OAuth トークン交換中に、認証後に を使用して同じプリンシパルを除外します。「ポリシーの例」を参照してください。

OAuth 条件キー

AWS サインインには、アプリケーションが OAuth 認可と OAuth トークンを取得する方法を制御するために IAM ポリシーで使用できる OAuth 固有の条件キーが用意されています。これらの条件キーを使用すると、接続できる OAuth クライアント、信頼できるリダイレクト URIs、許可される OAuth 認可フロー、OAuth クライアントの認証方法、管理できる OAuth トークンを制限できます。

OAuth 条件キーは、IAM ID ポリシー、サービスコントロールポリシー (SCPs)、リソースコントロールポリシー (RCPs)、および AWS サインインアクションをサポートするその他の IAM ポリシータイプで使用できます。

次の OAuth 条件キーを使用できます。

条件キー 説明 適用可能なアクション
signin:OAuthClientId String 承認された OAuth クライアントへの認可を制限します。 signin:AuthorizeOAuth2Access, signin:CreateOAuth2Token, signin:IntrospectOAuth2Token
signin:OAuthRedirectUri String OAuth 認可を承認されたリダイレクト URIs。 signin:AuthorizeOAuth2Access, signin:CreateOAuth2Token, signin:CreateOAuth2PublicClient
signin:OAuthGrantType String 許可される OAuth 許可タイプを制御します。値: authorization_coderefresh_tokenclient_credentials signin:CreateOAuth2Token
signin:OAuthClientAuthentication String 許可された OAuth クライアント認証方法を制御します。 signin:CreateOAuth2Token
signin:OAuthTokenType String OAuth アクセストークンと更新トークンに対して実行されるオペレーションを制御します。値: access_tokenrefresh_token signin:RevokeOAuth2Token, signin:IntrospectOAuth2Token

サインイン:OAuthClientId

を使用してsignin:OAuthClientId、アクセスをリクエストしている登録済みの OAuth クライアントに基づいて OAuth 認可を許可または拒否します。

OAuth クライアント IDs は AWS 、サインイン動的クライアント登録 (DCR) ARNs。

非インタラクティブ (クライアント認証情報) フローの場合、暗黙的なクライアント ID は ですarn:aws:signin:::client-credentials/sigv4

適用可能なアクション
  • signin:AuthorizeOAuth2Access

  • signin:CreateOAuth2Token

  • signin:IntrospectOAuth2Token

例 – 特定の登録済み OAuth クライアントのみを許可します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "signin:AuthorizeOAuth2Access", "signin:CreateOAuth2Token" ], "Resource": "arn:aws:signin:*:*:service-principal/aws-mcp.amazonaws.com", "Condition": { "StringEquals": { "signin:OAuthClientId": "arn:aws:signin:us-east-1::external-client/dcr/081e0aeb-e779-4dfe-9648-bd5bf6e6afa4" } } } ] }

サインイン:OAuthRedirectUri

を使用してsignin:OAuthRedirectUri、OAuth 認可レスポンスが配信される場所を制限します。

これは、開発中に localhost などの信頼されたリダイレクト URIs にのみ OAuth 認可レスポンスが返されるようにするために一般的に使用されます。

signin:CreateOAuth2PublicClient アクションの場合、この条件キーは VPC エンドポイント (VPCE) ポリシー評価にのみ適用されます。

適用可能なアクション
  • signin:AuthorizeOAuth2Access

  • signin:CreateOAuth2Token

  • signin:CreateOAuth2PublicClient

例 – localhost リダイレクト URIs とインタラクティブ OAuth フローに対してのみ、ブラウザベースの認可を許可します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "signin:AuthorizeOAuth2Access", "signin:CreateOAuth2Token" ], "Resource": "arn:aws:signin:*:*:service-principal/aws-mcp.amazonaws.com", "Condition": { "StringLike": { "signin:OAuthRedirectUri": "http://localhost:*" }, "StringEquals": { "signin:OAuthGrantType": [ "authorization_code", "refresh_token" ] } } } ] }

signin:OAuthGrantType

を使用してsignin:OAuthGrantType、アプリケーションが使用できる OAuth グラントタイプを制御します。

サポートされる値を次に示します。

  • authorization_code

  • refresh_token

  • client_credentials

適用可能なアクション
  • signin:CreateOAuth2Token

例 – ブラウザベースの OAuth 認可のみを許可し、アプリケーションがクライアント認証情報付与を使用できないようにします。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "signin:CreateOAuth2Token", "Resource": "*", "Condition": { "StringEquals": { "signin:OAuthGrantType": [ "authorization_code", "refresh_token" ] } } } ] }

サインイン:OAuthClientAuthentication

を使用してsignin:OAuthClientAuthentication、OAuth クライアントがアクセストークンをリクエストするときに使用できるクライアント認証方法を制御します。

現在サポートされている値:

  • none

適用可能なアクション
  • signin:CreateOAuth2Token

例 – OAuth オペレーションのパブリッククライアントを拒否します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "signin:CreateOAuth2Token", "Resource": "*", "Condition": { "StringEquals": { "signin:OAuthClientAuthentication": "none" } } } ] }

signin:OAuthTokenType

を使用してsignin:OAuthTokenType、どの OAuth トークンタイプをイントロスペクションまたは取り消すことができるかを制御します。

サポートされる値を次に示します。

  • access_token

  • refresh_token

適用可能なアクション
  • signin:IntrospectOAuth2Token

  • signin:RevokeOAuth2Token

例 – 更新トークンの取り消しのみを許可します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "signin:RevokeOAuth2Token", "Resource": "*", "Condition": { "StringEquals": { "signin:OAuthTokenType": "refresh_token" } } } ] }

アクション別の条件キーの可用性

次の表は、各アクションで使用できる条件キーを示しています。

条件キー サインイン:認証 signin:AuthorizeOAuth2Access signin:CreateOAuth2Token signin:RevokeOAuth2Token signin:IntrospectOAuth2Token signin:CreateOAuth2PublicClient
aws:SourceIp はい はい はい はい はい いいえ
aws:SourceVpc はい はい はい はい はい いいえ
aws:SourceVpce はい はい はい はい はい いいえ
aws:VpcSourceIp はい はい はい はい はい いいえ
aws:RequestedRegion はい はい はい はい はい いいえ
aws:PrincipalArn なし はい はい はい はい いいえ
aws:PrincipalAccount なし はい はい はい はい いいえ
signin:PrincipalArn はい いいえ いいえ いいえ いいえ いいえ
signin:OAuthClientId なし はい はい いいえ はい いいえ
signin:OAuthRedirectUri なし はい はい いいえ なし はい
signin:OAuthGrantType いいえ なし はい いいえ いいえ いいえ
signin:OAuthClientAuthentication いいえ なし はい いいえ いいえ いいえ
signin:OAuthTokenType いいえ いいえ なし はい はい いいえ
注記

signin:CreateAccount アクションはコンソールプライベートアクセスの VPC エンドポイントポリシーでのみ使用され、リソースベースのポリシーまたは RCPsでは使用できません。サービス固有の条件キーは関連付けられていません。コンソールのプライベートアクセスを参照してください。