

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon S3：允許聯合身分使用者以程式設計方式和在主控台中存取其 Amazon S3 主目錄
<a name="reference_policies_examples_s3_federated-home-directory-console"></a>

此範例說明如何建立身分型政策，允許聯合身分主體在 S3 中存取自己的主目錄儲存貯體物件。主目錄是一個儲存貯體，其中包含 `home` 資料夾和個別聯合身分主體的資料夾。此政策定義了程式設計和主控台存取的許可。若要使用此政策，請將範例政策中的*斜體預留位置文字*取代為您自己的資訊。然後，遵循[建立政策](access_policies_create.md)或[編輯政策](access_policies_manage-edit.md)中的指示進行操作。

此政策中的 `${aws:userid}` 變數會解析成 `role-id:specified-name`。聯合身分主體 ID 的 `role-id` 部分是在建立期間指派給聯合身分主體角色的唯一識別碼。如需詳細資訊，請參閱[唯一識別碼](reference_identifiers.md#identifiers-unique-ids)。`specified-name` 是當聯合身分主體擔任其角色時傳遞至 `AssumeRoleWithWebIdentity` 請求的 [RoleSessionName 參數](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRoleWithWebIdentity.html#API_AssumeRoleWithWebIdentity_RequestParameters)。

您可以使用 AWS CLI 命令 檢視角色 ID`aws iam get-role --role-name specified-name`。例如，假設您指定易讀的名稱 `John` 且 CLI 傳回該角色 ID `AROAXXT2NJT7D3SIQN7Z6`。在這種情況下，聯合身分主體的使用者 ID 為 `AROAXXT2NJT7D3SIQN7Z6:John`。之後，此政策會允許聯合身分主體 John 使用字首 `AROAXXT2NJT7D3SIQN7Z6:John` 存取 Amazon S3 儲存貯體。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ConsoleAccess",
            "Effect": "Allow",
            "Action": [
                "s3:GetAccountPublicAccessBlock",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation",
                "s3:GetBucketPolicyStatus",
                "s3:GetBucketPublicAccessBlock",
                "s3:ListAccessPoints",
                "s3:ListAllMyBuckets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ListObjectsInBucket",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket",
            "Condition": {
                "StringLike": {
                    "s3:prefix": [
                        "",
                        "home/",
                        "home/${aws:userid}/*"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket/home/${aws:userid}",
                "arn:aws:s3:::amzn-s3-demo-bucket/home/${aws:userid}/*"
            ]
        }
    ]
}
```

------