

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

# AWS サインイン条件キーリファレンス
<a name="reference-signin-condition-keys"></a>

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

サービス認可リファレンスのアクションと条件キーの完全なリストについては、[AWS 「サインインのアクション、リソース、および条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssignin.html)」を参照してください。

## ネットワークベースの条件キー
<a name="reference-signin-condition-keys-network"></a>

これらの条件キーは、リクエストの送信元をチェックします。 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 ベースの条件キー
<a name="reference-signin-condition-keys-identity"></a>

これらの条件キーは、リクエストを行っているユーザーをチェックします。これらは、プリンシパル 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
<a name="reference-signin-condition-keys-service-specific"></a>

次の条件キーは 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/24`IP 範囲外からのコンソールアクセスを拒否します。認証前ステートメントは、認証が完了する前に `signin:PrincipalArn` を使用してルートユーザーを除外します。認証後ステートメントは`aws:PrincipalArn`、OAuth トークン交換中に、認証後に を使用して同じプリンシパルを除外します。「[ポリシーの例](console-access-control.md#console-access-control-policy-examples)」を参照してください。

## アクション別の条件キーの可用性
<a name="reference-signin-condition-keys-availability"></a>


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

| 条件キー | サインイン：認証 | signin:AuthorizeOAuth2Access | signin:CreateOAuth2Token | 
| --- | --- | --- | --- | 
| aws:SourceIp | はい  | はい | はい | 
| aws:SourceVpc | はい | はい | はい | 
| aws:SourceVpce | はい | はい | はい | 
| aws:VpcSourceIp | はい | はい | はい | 
| aws:RequestedRegion | はい | はい | はい | 
| aws:PrincipalArn | – | はい | はい | 
| aws:PrincipalAccount | – | はい | はい | 
| signin:PrincipalArn | はい | – | – | 

**注記**  
`signin:CreateAccount` アクションはコンソールプライベートアクセスの VPC エンドポイントポリシーでのみ使用され、リソースベースのポリシーまたは RCPsでは使用できません。サービス固有の条件キーは関連付けられていません。[コンソールのプライベートアクセス](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/console-private-access.html)を参照してください。

## 関連情報
<a name="reference-signin-condition-keys-related"></a>
+ [リソースベースのポリシーとリソースコントロールポリシーによるコンソールアクセスの制御](console-access-control.md)
+ [AWS マネジメントコンソール プライベートアクセス](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/console-private-access.html)
+ [AWS グローバル条件コンテキストキー](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)
+ [AWS サインインのアクション、リソース、および条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awssignin.html)