

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

# IAM ユーザーと Amazon SQS キューの作成
<a name="sqs-abac-creating-queues"></a>

次の例では、 AWS マネジメントコンソール と を使用して Amazon SQS へのアクセスを制御する ABAC ポリシーを作成する方法について説明します CloudFormation。

## の使用 AWS マネジメントコンソール
<a name="sqs-abac-creating-queues-console"></a>

**IAM ユーザーの作成**

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. 左側のナビゲーションペインで **[ユーザー]** を選択します。

1. **[ユーザーを追加]** を選択し、**[ユーザー名]** テキストボックスに名前を入力します。

1. **[アクセスキー - プログラムによるアクセス]** ボックスを選択し、**[次へ: 許可]** を選びます。

1. **[Next:Tags]** (次のステップ: タグ) を選択します。

1. タグのキーを `environment`、タグの値を `beta` として追加します。

1. **[次の手順: 確認]**、**[作成]** の順に選択します。

1. アクセスキー ID とシークレットアクセスキーを安全な場所にコピーして保存します。

**IAM ユーザーのアクセス許可を追加する**

1. 作成した IAM ユーザーを選択します。

1. [**Add inline policy**] (インラインポリシーの追加) を選択します。

1. [JSON] タブに、以下のポリシーを貼り付けます。

1. **[ポリシーの確認]** を選択します。

1. [**Create policy**] (ポリシーの作成) を選択します。

## の使用 AWS CloudFormation
<a name="sqs-abac-creating-queues-cf"></a>

次のサンプル CloudFormation テンプレートを使用して、インラインポリシーと Amazon SQS キューがアタッチされた IAM ユーザーを作成します。

```
AWSTemplateFormatVersion: "2010-09-09"
Description: "CloudFormation template to create IAM user with custom inline policy"
Resources:
    IAMPolicy:
        Type: "AWS::IAM::Policy"
        Properties:
            PolicyDocument: |
                {
                    "Version": "2012-10-17",		 	 	 
                    "Statement": [
                        {
                            "Sid": "AllowAccessForSameResTag",
                            "Effect": "Allow",
                            "Action": [
                                "sqs:SendMessage",
                                "sqs:ReceiveMessage",
                                "sqs:DeleteMessage"
                            ],
                            "Resource": "*",
                            "Condition": {
                                "StringEquals": {
                                    "aws:ResourceTag/environment": "${aws:PrincipalTag/environment}"
                                }
                            }
                        },
                        {
                            "Sid": "AllowAccessForSameReqTag",
                            "Effect": "Allow",
                            "Action": [
                                "sqs:CreateQueue",
                                "sqs:DeleteQueue",
                                "sqs:SetQueueAttributes",
                                "sqs:tagqueue"
                            ],
                            "Resource": "*",
                            "Condition": {
                                "StringEquals": {
                                    "aws:RequestTag/environment": "${aws:PrincipalTag/environment}"
                                }
                            }
                        },
                        {
                            "Sid": "DenyAccessForProd",
                            "Effect": "Deny",
                            "Action": "sqs:*",
                            "Resource": "*",
                            "Condition": {
                                "StringEquals": {
                                    "aws:ResourceTag/stage": "prod"
                                }
                            }
                        }
                    ]
                }
                
            Users: 
              - "testUser"
            PolicyName: tagQueuePolicy

    IAMUser:
        Type: "AWS::IAM::User"
        Properties:
            Path: "/"
            UserName: "testUser"
            Tags: 
              - 
                Key: "environment"
                Value: "beta"
```