IAM: 特定のタグのみで新しいユーザーを作成する
この例は、IAM ユーザーの作成を許可する ID ベースのポリシーを作成する方法を示していますが、タグキー Department と JobFunction の一方のみまたは両方を使用します。Department タグキーに、Development または QualityAssurance タグ値が含まれている必要があります。JobFunction タグキーに、Employee タグ値が含まれている必要があります。このポリシーを使用して、新しいユーザーに特定のジョブ機能および部門が含まれるよう義務付けることができます。このポリシーでは、AWS API または AWS CLI から、このアクションをプログラムで完了するために必要なアクセス権を許可します。このポリシーを使用するには、サンプルポリシーのイタリック体のプレースホルダーテキストを独自の情報に置き換えます。次に、ポリシーの作成またはポリシーの編集の手順に従います。
ステートメントの最初の条件では、StringEqualsIfExists 条件演算子を使用します。キーが Department または JobFunction のタグがリクエストに存在する場合は、指定された値がタグに含まれている必要があります。どちらのキーも存在しない場合、この条件は true と評価されます。指定された条件キーのいずれかがリクエストに存在していても、許可されている値とは異なる値が含まれている場合にのみ、条件は、false と評価されます。IfExists の使用の詳細については、IfExists 条件演算子 を参照してください。
2 番目の条件では、ForAllValues:StringEquals 条件演算子を使用します。この条件では、リクエストの指定されたすべてのタグキーと、ポリシーの 1 つ以上の値が一致する場合に true が返ります。つまり、リクエストのすべてのタグがこのリストに含まれていることになります。ただし、リクエストには、リストのいずれかのタグのみ含めることができます。たとえば、Department=QualityAssurance タグのみを使用して、IAM ユーザーを作成できます。ただし、JobFunction=Employee タグと Project=core タグを使用して、IAM ユーザーを作成することはできません。ForAllValues の使用の詳細については、複数値のコンテキストキーの演算子を設定する を参照してください。