

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

# Directory Service Data の条件キー
<a name="iam_dsdata-condition-keys"></a>

「[Directory Service Data](https://docs.aws.amazon.com/directoryservicedata/latest/DirectoryServiceDataAPIReference/welcome.html)」条件キーを使用して、ユーザーおよびグループレベルのアクセスに特定のステートメントを追加します。これによって、ユーザーには、どのプリンシパルがどのリソースに対してどのような条件下でアクションを実行できるかを決めることができます。

条件要素、または条件ブロックを使用すると、ステートメントが有効になる条件を指定できます。****Condition 要素はオプションです。イコール (=) や未満 (<) などの条件演算子を使用して条件式を作成することで、ポリシーの条件とリクエスト内の値を一致させることができます。

1 つのステートメントに複数の要素を指定する場合、または 1 つの条件要素に複数のキーを指定する場合、 AWS は論理演算子 AND を使用してそれらを評価します。1 つの条件キーに複数の値を指定すると、 は論理 OR オペレーションを使用して条件 AWS を評価します。ステートメントの権限が付与される前にすべての条件が満たされる必要があります。条件を指定する際にプレースホルダー変数も使用できます。例えば、ユーザー名でタグが付けられている場合のみ、リソースにアクセスする IAM ユーザーアクセス許可を付与できます。詳細については、「IAM ユーザーガイド」の「[複数のキーまたは値を含む IAM 条件](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_multi-value-conditions.html)」参照してください。**

これらの条件キーをサポートするアクションのリストについては、*「サービス認可リファレンス*」の[AWS 「Directory Service Data で定義されるアクション](https://docs.aws.amazon.com/service-authorization/latest/reference/list_directoryservice-data.html)」を参照してください。

**注記**  
タグに基づくリソースレベルのアクセス権限の詳細については、「[IAM ポリシーでのタグの使用](IAM_Auth_Access_IdentityBased.md#using_tags_with_iam_policies)」を参照してください。

## ds-data:SAMAccountName
<a name="dsdata_condition-SAMAccountName"></a>

「[文字列演算子](https://docs.aws.amazon.com//IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)」で動作します。

このキーを使用して、IAM ロールが特定のユーザーおよびグループに対してアクションを実行することを明示的に許可または拒否します。

**重要**  
`SAMAccountName` または `MemberName` を使用する場合は、`ds-data:Identifier` を `SAMAccountName` として指定することをお勧めします。これにより、 などの AWS Directory Service Data がサポートする将来の識別子が既存のアクセス許可を破る`SID`のを防ぐことができます。

次のポリシーは、IAM プリンシパルがユーザー `joe` を記述すること、またはグループ `joegroup` を記述することを拒否します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyDescribe",
      "Effect": "Deny",
      "Action": "ds-data:Describe*",
      "Resource": "*",
      "Condition": {
        "StringEqualsIgnoreCase": {
          "ds-data:SAMAccountName": [
            "{{joe}}",
            "{{joegroup}}"
          ],
          "ds-data:identifier": [
            "SAMAccountName"
          ]
        }
      }
    }
  ]
}
```

------

**注記**  
この条件キーでは大文字と小文字は区別されません。`[StringEqualsIgnoreCase](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)` または `[StringNotEqualsIgnoreCase](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)` 条件演算子を使用して、文字の大文字と小文字に関係なく文字列の値を比較する必要があります。

## ds-data:Identifier
<a name="dsdata_condition-identifier"></a>

「[文字列演算子](https://docs.aws.amazon.com//IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)」で動作します。

このキーを使用して、IAM ポリシーのアクセス許可で使用する識別子を定義します。現在は、`SAMAccountName` のみがサポートされます。

次のポリシーは、IAM プリンシパルがユーザー `joe` を更新することを許可します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "UpdateJoe",
      "Effect": "Allow",
      "Action": "ds-data:UpdateUser",
      "Resource": "arn:aws:ds:{{us-east-1}}:{{111122223333}}:directory/{{d-012345678}}",
      "Condition": {
        "StringEqualsIgnoreCase": {
          "ds-data:SAMAccountName": [
            "{{joe}}"
          ],
          "ds-data:identifier": [
            "SAMAccountName"
          ]
        }
      }
    }
  ]
}
```

------

## ds-data:MemberName
<a name="dsdata_condition-MemberName"></a>

「[文字列演算子](https://docs.aws.amazon.com//IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)」で動作します。

このキーを使用して、オペレーションを実行できるメンバーを定義します。

**重要**  
`MemberName` または `SAMAccountName` を使用する場合は、`ds-data:Identifier` を `SAMAccountName` として指定することをお勧めします。これにより、`SID` などの Directory Service Data がサポートする将来の識別子が既存のアクセス権限を妨げるのを防ぐことができます。

次のポリシーは、IAM プリンシパルが任意のグループのメンバー `joe` に対して `AddGroupMember` を実行することを許可します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
        "Sid": "AddJoe",
        "Effect": "Allow",
        "Action": "ds-data:AddGroupMember",
        "Resource": "arn:aws:ds:{{us-east-1}}:{{111122223333}}:directory/{{d-012345678}}",
        "Condition": {
            "StringEqualsIgnoreCase": {
                "ds-data:MemberName": "{{joe}}"
            }
        }
    }
  ]
}
```

------

**注記**  
この条件キーでは、大文字と小文字は区別されません。`[StringEqualsIgnoreCase](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)` または `[StringNotEqualsIgnoreCase](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)` 条件演算子を使用して、文字の大文字と小文字に関係なく、文字列の値を比較する必要があります。

## ds-data:MemberRealm
<a name="dsdata_condition-MemberRealm"></a>

「[文字列演算子](https://docs.aws.amazon.com//IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)」で動作します。

このキーを使用して、ポリシーの `ds-data:MemberRealm` 値がリクエストのメンバー領域と一致するかどうかを確認します。

**注記**  
この条件キーでは、大文字と小文字は区別されません。`[StringEqualsIgnoreCase](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)` または `[StringNotEqualsIgnoreCase](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)` 条件演算子を使用して、文字の大文字と小文字に関係なく、文字列の値を比較する必要があります。

次のポリシーは、IAM プリンシパルが領域 `ONE.TRU1.AMAZON.COM` のメンバー `bob` が `AddGroupMember` を呼び出すことを許可します。

**注記**  
次の例では、`ds-data:MemberName` コンテキストキーのみを使用します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "addbob",
      "Effect": "Allow",
      "Action": "ds-data:AddGroupMember",
      "Resource": "arn:aws:ds:{{us-east-1}}:{{111122223333}}:directory/{{d-012345678}}",
      "Condition": {
        "StringEqualsIgnoreCase": {
          "ds-data:MemberName": "{{bob}}",
          "ds-data:MemberRealm": "{{one.tru1.amazon.com}}"
        }
      }
    }
  ]
}
```

------

## ds-data:Realm
<a name="dsdata_condition-Realm"></a>

「[文字列演算子](https://docs.aws.amazon.com//IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)」で動作します。

このキーを使用して、ポリシーの `ds-data:Realm` 値が IAM プリンシパルが Directory Service Data APIs へのリクエストを行うために使用できる領域と一致するかどうかを確認します。

**注記**  
この条件キーでは、大文字と小文字は区別されません。`[StringEqualsIgnoreCase](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)` または `[StringNotEqualsIgnoreCase](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String)` 条件演算子を使用して、文字の大文字と小文字に関係なく文字列の値を比較する必要があります。

次のポリシーは、IAM プリンシパルが領域 `one.tru1.amazon.com` で `ListUsers` を呼び出すことを拒否します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyTrustedList",
      "Effect": "Deny",
      "Action": "ds-data:ListUsers",
      "Resource": "*",
      "Condition": {
        "StringEqualsIgnoreCase": {
          "ds-data:Realm": [
            "{{one.tru1.amazon.com}}"
          ]
        }
      }
    }
  ]
}
```

------