

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

# Akses toko offline lintas akun
<a name="feature-store-cross-account-access-offline-store"></a>

 Amazon SageMaker Feature Store memungkinkan pengguna untuk membuat grup fitur dalam satu akun (Akun A) dan mengonfigurasinya dengan toko offline menggunakan bucket Amazon S3 di akun lain (Akun B). Anda dapat mengatur ini menggunakan langkah-langkah di bagian berikut.

**Topics**
+ [Langkah 1: Siapkan peran akses toko offline di Akun A](#feature-store-setup-step1)
+ [Langkah 2: Siapkan bucket Amazon S3 toko offline di Akun B](#feature-store-setup-step2)
+ [Langkah 3: Siapkan kunci AWS KMS enkripsi toko offline di Akun A](#feature-store-setup-step3)
+ [Langkah 4: Buat grup fitur di Akun A](#feature-store-setup-step4)

## Langkah 1: Siapkan peran akses toko offline di Akun A
<a name="feature-store-setup-step1"></a>

Pertama, siapkan peran Amazon SageMaker Feature Store untuk menulis data ke toko offline. Cara termudah untuk mencapai ini adalah dengan membuat peran baru menggunakan `AmazonSageMakerFeatureStoreAccess` kebijakan atau menggunakan peran yang sudah ada yang sudah memiliki `AmazonSageMakerFeatureStoreAccess` kebijakan terlampir. Dokumen ini mengacu pada kebijakan ini sebagai`Account-A-Offline-Feature-Store-Role-ARN`. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetBucketAcl",
                "s3:PutObjectAcl"
            ],
            "Resource": [
                "arn:aws:s3:::*SageMaker*",
                "arn:aws:s3:::*Sagemaker*",
                "arn:aws:s3:::*sagemaker*"
            ]
        }
    ]
}
```

------

Cuplikan kode sebelumnya menunjukkan kebijakan. `AmazonSageMakerFeatureStoreAccess` `Resource`Bagian kebijakan dicakup secara default ke bucket S3 dengan nama yang berisi`SageMaker`,, atau. `Sagemaker` `sagemaker` Ini berarti bucket Amazon S3 toko offline yang digunakan harus mengikuti konvensi penamaan ini. Jika ini bukan kasus Anda, atau jika Anda ingin memperluas cakupan sumber daya, Anda dapat menyalin dan menempelkan kebijakan tersebut ke kebijakan bucket Amazon S3 di konsol, menyesuaikan `Resource` bagiannya`arn:aws:s3:::your-offline-store-bucket-name`, lalu melampirkan peran tersebut. 

Selain itu, peran ini harus memiliki AWS KMS izin yang dilampirkan. Minimal, diperlukan `kms:GenerateDataKey` izin untuk dapat menulis ke toko offline menggunakan kunci yang dikelola pelanggan Anda. Lihat Langkah 3 untuk mempelajari mengapa kunci yang dikelola pelanggan diperlukan untuk skenario lintas akun dan cara mengaturnya. Contoh berikut menunjukkan kebijakan inline: 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey"
            ],
            "Resource": "arn:aws:kms:*:111122223333:key/*"
        }
    ]
}
```

------

`Resource`Bagian dari kebijakan ini dicakup ke kunci apa pun di Akun A. Untuk lebih lanjut menjelaskan hal ini, setelah menyiapkan kunci KMS toko offline di Langkah 3, kembali ke kebijakan ini dan ganti dengan kunci ARN.

## Langkah 2: Siapkan bucket Amazon S3 toko offline di Akun B
<a name="feature-store-setup-step2"></a>

Buat bucket Amazon S3 di Akun B. Jika Anda menggunakan `AmazonSageMakerFeatureStoreAccess` kebijakan default, nama bucket harus menyertakan`SageMaker`,`Sagemaker`, atau. `sagemaker` Edit kebijakan bucket seperti yang ditunjukkan pada contoh berikut untuk memungkinkan Akun A membaca dan menulis objek.

Dokumen ini mengacu pada contoh kebijakan bucket berikut sebagai`Account-B-Offline-Feature-Store-Bucket`. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3CrossAccountBucketAccess",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:PutObjectAcl",
                "s3:GetBucketAcl"
            ],
            "Principal": {
                "AWS": [
                    "Account-A-Offline-Feature-Store-Role-ARN"
                ]
            },
            "Resource": [
                "arn:aws:s3:::offline-store-bucket-name/*",
                "arn:aws:s3:::offline-store-bucket-name"
            ]
        }
    ]
}
```

------

Dalam kebijakan sebelumnya, prinsipnya adalah, yang merupakan `Account-A-Offline-Feature-Store-Role-ARN` peran yang dibuat di Akun A pada Langkah 1 dan diberikan ke Amazon SageMaker Feature Store untuk menulis ke toko offline. Anda dapat memberikan beberapa peran ARN di bawah. `Principal`

## Langkah 3: Siapkan kunci AWS KMS enkripsi toko offline di Akun A
<a name="feature-store-setup-step3"></a>

Amazon SageMaker Feature Store memastikan bahwa enkripsi sisi server selalu diaktifkan untuk objek Amazon S3 di toko offline. Untuk kasus penggunaan lintas akun, Anda harus memberikan kunci yang dikelola pelanggan sehingga Anda mengendalikan siapa yang dapat menulis ke toko offline (dalam hal ini, `Account-A-Offline-Feature-Store-Role-ARN` dari Akun A) dan siapa yang dapat membaca dari toko offline (dalam hal ini, identitas dari Akun B). 

Dokumen ini mengacu pada contoh kebijakan kunci berikut sebagai`Account-A-Offline-Feature-Store-KMS-Key-ARN`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "key-consolepolicy-3",
    "Statement": [
        {
            "Sid": "Enable IAM User Permissions",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Sid": "Allow access for Key Administrators",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                "arn:aws:iam::111122223333:role/Administrator"
                ]
            },
            "Action": [
                "kms:Create*",
                "kms:Describe*",
                "kms:Enable*",
                "kms:List*",
                "kms:Put*",
                "kms:Update*",
                "kms:Revoke*",
                "kms:Disable*",
                "kms:Get*",
                "kms:Delete*",
                "kms:TagResource",
                "kms:UntagResource",
                "kms:ScheduleKeyDeletion",
                "kms:CancelKeyDeletion"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Allow Feature Store to get information about the customer managed key",
            "Effect": "Allow",
            "Principal": {
                "Service": "sagemaker.amazonaws.com"
            },
            "Action": [
                "kms:Describe*",
                "kms:Get*",
                "kms:List*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Allow use of the key",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "Account-A-Offline-Feature-Store-Role-ARN",
                    "arn:aws:iam::444455556666:root"
                ]
            },
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:DescribeKey",
                "kms:CreateGrant",
                "kms:RetireGrant",
                "kms:ReEncryptFrom",
                "kms:ReEncryptTo",
                "kms:GenerateDataKey",
                "kms:ListAliases",
                "kms:ListGrants"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Langkah 4: Buat grup fitur di Akun A
<a name="feature-store-setup-step4"></a>

Selanjutnya, buat grup fitur di Akun A, dengan bucket Amazon S3 toko offline di Akun B. Untuk melakukan ini, berikan parameter berikut untuk`RoleArn`,, dan `OfflineStoreConfig.S3StorageConfig.KmsKeyId``OfflineStoreConfig.S3StorageConfig.S3Uri`, masing-masing: 
+ Berikan `Account-A-Offline-Feature-Store-Role-ARN` sebagai`RoleArn`.
+ Menyediakan `Account-A-Offline-Feature-Store-KMS-Key-ARN` untuk`OfflineStoreConfig.S3StorageConfig.KmsKeyId`.
+ Menyediakan `Account-B-Offline-Feature-Store-Bucket` untuk`OfflineStoreConfig.S3StorageConfig.S3Uri`.