

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Hubungkan Hibah Akses Amazon S3 dengan notebook Studio JupyterLab
<a name="s3-access-grants-setup"></a>

Gunakan informasi berikut untuk memberikan Hibah Akses Amazon S3 di buku catatan Studio. JupyterLab 

[Setelah Amazon S3 Access Grants disiapkan, [tambahkan izin berikut ke peran eksekusi](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) domain atau pengguna Anda.](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html#sagemaker-roles-get-execution-role)
+ `{{us-east-1}}`adalah milikmu Wilayah AWS
+ `{{111122223333}}`adalah Akun AWS ID Anda
+ `{{S3-ACCESS-GRANT-ROLE}}`adalah peran Hibah Akses Amazon S3 Anda

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowDataAccessAPI",
            "Effect": "Allow",
            "Action": [
                "s3:GetDataAccess"
            ],
            "Resource": [
                "arn:aws:s3:{{us-east-1}}:{{111122223333}}:access-grants/default"
            ]
        },
        {
            "Sid": "RequiredForTIP",
            "Effect": "Allow",
            "Action": "sts:SetContext",
            "Resource": "arn:aws:iam::{{111122223333}}:role/{{S3-ACCESS-GRANT-ROLE}}"
        }
    ]
}
```

------

Pastikan kebijakan kepercayaan peran Amazon S3 Access Grants memungkinkan dan tindakan. `sts:SetContext` `sts:AssumeRole` Berikut ini adalah contoh kebijakan ketika Anda [memperbarui kebijakan kepercayaan peran Anda](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-trust-policy.html).

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "access-grants.s3.amazonaws.com"
                ]
            },
            "Action": [
                "sts:AssumeRole",
                "sts:SetContext"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{111122223333}}",
                    "aws:SourceArn": "arn:aws:s3:{{us-east-1}}:{{111122223333}}:access-grants/default"
                }
            }
        }
    ]
}
```

------

## Gunakan Hibah Akses Amazon S3 untuk memanggil Amazon S3
<a name="s3-access-grants-python-example"></a>

Berikut ini adalah contoh skrip Python yang menunjukkan bagaimana Amazon S3 Access Grants dapat digunakan untuk memanggil Amazon S3. Ini mengasumsikan Anda telah berhasil mengatur propagasi identitas tepercaya dengan SageMaker AI.

```
import boto3
from botocore.config import Config

def get_access_grant_credentials(account_id: str, target: str, 
                                 permission: str = 'READ'):
    s3control = boto3.client('s3control')
    response = s3control.get_data_access(
        AccountId=account_id,
        Target=target,
        Permission=permission
    )
    return response['Credentials']

def create_s3_client_from_credentials(credentials) -> boto3.client:
    return boto3.client(
        's3',
        aws_access_key_id=credentials['AccessKeyId'],
        aws_secret_access_key=credentials['SecretAccessKey'],
        aws_session_token=credentials['SessionToken']
    )

# Create client
credentials = get_access_grant_credentials('{{111122223333}}',
                                        "s3://tip-enabled-bucket/tip-enabled-path/")
s3 = create_s3_client_from_credentials(credentials)

s3.list_objects(Bucket="tip-enabled-bucket", Prefix="tip-enabled-path/")
```

Jika Anda menggunakan jalur ke bucket Amazon S3 di mana hibah akses Amazon S3 tidak diaktifkan, panggilan akan gagal.

Untuk bahasa pemrograman lainnya, lihat [Mengelola akses dengan Hibah Akses Amazon S3 untuk informasi selengkapnya](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants.html).