翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS サインイン条件キーリファレンス
このページでは、 AWS サインインリソースベースのポリシーとリソースコントロールポリシー (RCPs) で使用できる条件キーを一覧表示し、各キーが適用される評価フェーズとアクションを示します。 AWS サインインにのみ固有signin:PrincipalArnであり、その他は AWS グローバル条件キーです。グローバルキーの定義については、AWS 「 グローバル条件コンテキストキー」を参照してください。
サービス認可リファレンスのアクションと条件キーの完全なリストについては、AWS 「サインインのアクション、リソース、および条件キー」を参照してください。
ネットワークベースの条件キー
これらの条件キーは、リクエストの送信元をチェックします。 AWS Sign-In は、リソースベースのポリシーと RCPs の両方で、すべての AWS サインインアクション (signin:Authenticate、signin:AuthorizeOAuth2Access、signin: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) でのみ使用できます。
| 条件キー | オペレータ | 説明 | 例 |
|---|---|---|---|
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 演算子 (
ArnEquals、ArnLike、ArnNotEquals、ArnNotLike) と文字列演算子 (StringEquals、StringLike)。 - 可用性
-
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_code、refresh_token、client_credentials。 |
signin:CreateOAuth2Token |
signin:OAuthClientAuthentication |
String | 許可された OAuth クライアント認証方法を制御します。 | signin:CreateOAuth2Token |
signin:OAuthTokenType |
String | OAuth アクセストークンと更新トークンに対して実行されるオペレーションを制御します。値: access_token、refresh_token。 |
signin:RevokeOAuth2Token,
signin:IntrospectOAuth2Token |
サインイン:OAuthClientId
を使用してsignin:OAuthClientId、アクセスをリクエストしている登録済みの OAuth クライアントに基づいて OAuth 認可を許可または拒否します。
OAuth クライアント IDs は AWS 、サインイン動的クライアント登録 (DCR) ARNs。
非インタラクティブ (クライアント認証情報) フローの場合、暗黙的なクライアント ID は ですarn:aws:signin:::client-credentials/sigv4。
- 適用可能なアクション
-
signin:AuthorizeOAuth2Accesssignin:CreateOAuth2Tokensignin: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:AuthorizeOAuth2Accesssignin:CreateOAuth2Tokensignin: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_coderefresh_tokenclient_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_tokenrefresh_token
- 適用可能なアクション
-
signin:IntrospectOAuth2Tokensignin: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では使用できません。サービス固有の条件キーは関連付けられていません。コンソールのプライベートアクセスを参照してください。