

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

# Batasi akses ke asal Titik Akses Multi-Wilayah Amazon S3
<a name="private-content-restricting-access-to-s3-mrap"></a>

Anda dapat menggunakan kontrol akses asal (OAC) untuk membatasi akses ke asal Titik Akses Multi-Wilayah Amazon S3. Titik Akses Multi-Wilayah S3 menyediakan titik akhir global yang merutekan permintaan ke bucket S3 terdekat berdasarkan latensi jaringan.

Untuk informasi tentang penggunaan OAC dengan asal bucket Amazon S3 standar, lihat. [Batasi akses ke asal Amazon S3](private-content-restricting-access-to-s3.md)

## Prasyarat
<a name="oac-prerequisites-s3-mrap"></a>

Sebelum Anda membuat dan mengatur OAC, Anda harus memiliki CloudFront distribusi dengan asal Amazon S3 Multi-Region Access Point. Nama domain asal harus menggunakan format nama host S3 Multi-Region Access Point:

`multi-region-access-point-alias.accesspoint.s3-global.amazonaws.com`

Untuk informasi selengkapnya tentang membuat Titik Akses Multi-Wilayah S3, lihat [Membuat Titik Akses Multi-Wilayah](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html) di Panduan Pengguna *Layanan Penyimpanan Sederhana Amazon*.

## Berikan CloudFront izin untuk mengakses Titik Akses Multi-Wilayah S3
<a name="oac-permission-to-access-s3-mrap"></a>

Perbarui kebijakan Titik Akses Multi-Wilayah untuk memungkinkan prinsipal CloudFront layanan (`cloudfront.amazonaws.com`) mengakses Titik Akses Multi-Wilayah. Gunakan `Condition` elemen dalam kebijakan CloudFront untuk mengizinkan mengakses Titik Akses Multi-Wilayah hanya jika permintaan tersebut atas nama CloudFront distribusi yang berisi asal.

Untuk informasi tentang menambahkan atau memodifikasi kebijakan Titik Akses Multi-Wilayah, lihat [contoh kebijakan Titik Akses Multi-Wilayah](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPointPermissions.html) di Panduan Pengguna *Layanan Penyimpanan Sederhana Amazon*.

**Example Kebijakan Titik Akses Multi-Wilayah untuk CloudFront OAC**  

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowCloudFrontOACAccess",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudfront.amazonaws.com"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3::111122223333:accesspoint/Multi-Region-Access-Point-Alias.mrap/object/*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceArn": "arn:aws:cloudfront::111122223333:distribution/CloudFront distribution ID"
                }
            }
        }
    ]
}
```

## Berikan CloudFront izin untuk mengakses bucket S3 yang mendasarinya
<a name="oac-permission-to-access-s3-mrap-buckets"></a>

Selain kebijakan Titik Akses Multi-Wilayah, Anda juga harus memberikan CloudFront izin untuk mengakses setiap bucket S3 yang mendasari yang terkait dengan Titik Akses Multi-Wilayah. Anda dapat melakukannya dengan salah satu dari dua cara berikut:

### Opsi 1: Berikan akses hanya ke CloudFront
<a name="oac-s3-mrap-bucket-option1"></a>

Tambahkan kebijakan bucket ke setiap bucket S3 yang memungkinkan kepala CloudFront layanan mengakses bucket. Gunakan opsi ini ketika Anda juga perlu mengizinkan akses langsung ke ember dari sumber lain.

**Example Kebijakan bucket S3 untuk bucket yang mendasarinya**  

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowCloudFrontOACAccessViaMRAP",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudfront.amazonaws.com"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket-us-east-1/*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceArn": "arn:aws:cloudfront::111122223333:distribution/CloudFront distribution ID"
                }
            }
        }
    ]
}
```

### Opsi 2: Delegasikan akses bucket penuh ke Titik Akses Multi-Wilayah
<a name="oac-s3-mrap-bucket-option2"></a>

Berikan Akses Point Multi-Wilayah akses penuh ke setiap bucket yang mendasarinya. Dengan pendekatan ini, semua akses ke bucket dikendalikan oleh kebijakan Titik Akses Multi-Wilayah, yang menyederhanakan manajemen akses. Kami merekomendasikan opsi ini untuk kasus penggunaan yang tidak memerlukan akses langsung ke bucket.

**Example Kebijakan bucket S3 yang mendelegasikan akses ke Titik Akses Multi-Wilayah**  

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DelegateAccessToMRAP",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-us-east-1",
                "arn:aws:s3:::amzn-s3-demo-bucket-us-east-1/*"
            ],
            "Condition": {
                "StringEquals": {
                    "s3:DataAccessPointArn": "arn:aws:s3::111122223333:accesspoint/Multi-Region-Access-Point-Alias.mrap"
                }
            }
        }
    ]
}
```

Untuk informasi selengkapnya, lihat [contoh kebijakan Titik Akses Multi-Wilayah](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPointPermissions.html#MultiRegionAccessPointPolicyExamples) di *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon*.

**penting**  
Anda harus menambahkan kebijakan bucket ini ke setiap bucket S3 yang terkait dengan Titik Akses Multi-Wilayah. Jika ada bucket yang tidak memiliki kebijakan, CloudFront permintaan yang dialihkan ke bucket tersebut akan ditolak.

### SSE-KMS
<a name="oac-s3-mrap-sse-kms"></a>

Jika objek dalam bucket S3 yang mendasarinya dienkripsi menggunakan enkripsi sisi server dengan AWS KMS (SSE-KMS), Anda harus memastikan bahwa distribusi memiliki izin untuk menggunakan kunci. CloudFront AWS KMS Karena Titik Akses Multi-Wilayah S3 dapat merutekan permintaan ke bucket di beberapa Wilayah, Anda harus menambahkan pernyataan ke kebijakan kunci KMS di setiap Wilayah di mana bucket yang mendasarinya menggunakan SSE-KMS. Untuk informasi tentang cara mengubah kebijakan kunci, lihat [Mengubah kebijakan kunci](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html) di *Panduan AWS Key Management Service Pengembang*.

**Example Pernyataan kebijakan kunci KMS**  
Contoh berikut menunjukkan pernyataan kebijakan kunci KMS yang memungkinkan CloudFront distribusi dengan OAC untuk mengakses kunci KMS untuk SSE-KMS.  

```
{
    "Sid": "AllowCloudFrontServicePrincipalSSE-KMS",
    "Effect": "Allow",
    "Principal": {
        "Service": "cloudfront.amazonaws.com"
    },
    "Action": [
        "kms:Decrypt",
        "kms:Encrypt",
        "kms:GenerateDataKey*"
    ],
    "Resource": "*",
    "Condition": {
        "StringEquals": {
            "aws:SourceArn": "arn:aws:cloudfront::111122223333:distribution/CloudFront distribution ID"
        }
    }
}
```

**penting**  
Anda harus menambahkan pernyataan kebijakan kunci ini ke kunci KMS di setiap Wilayah di mana bucket S3 yang mendasarinya menggunakan enkripsi SSE-KMS.

## Buat kontrol akses asal
<a name="create-oac-s3-mrap"></a>

Untuk membuat kontrol akses asal (OAC), Anda dapat menggunakan Konsol Manajemen AWS CloudFormation, AWS CLI, atau CloudFront API.

------
#### [ Console ]

**Untuk membuat kontrol akses asal**

1. Masuk ke Konsol Manajemen AWS dan buka CloudFront konsol di[https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. Di panel navigasi, pilih **Akses asal**.

1. Pilih **Buat pengaturan kontrol**.

1. Pada formulir **pengaturan Create control**, lakukan hal berikut:

   1. Di panel **Detail**, masukkan **Nama** dan (opsional) **Deskripsi** untuk kontrol akses asal.

   1. Di panel **Pengaturan**, kami sarankan Anda meninggalkan pengaturan default (**Permintaan tanda tangan (disarankan))**. Untuk informasi selengkapnya, lihat [Pengaturan lanjutan untuk kontrol akses asal](private-content-restricting-access-to-s3.md#oac-advanced-settings-s3).

1. Pilih **S3 Multi-Region Access Point dari dropdown** **tipe Origin**.

1. Pilih **Buat**.

   Setelah OAC dibuat, catat **Nama**. Anda membutuhkan ini dalam prosedur berikut.

**Untuk menambahkan kontrol akses asal ke asal Titik Akses Multi-Wilayah S3 dalam distribusi**

1. Buka CloudFront konsol di[https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

1. **Pilih distribusi dengan asal Titik Akses Multi-Wilayah S3 yang ingin Anda tambahkan OAC, lalu pilih tab Origins.**

1. **Pilih asal S3 Multi-Region Access Point yang ingin Anda tambahkan OAC, lalu pilih Edit.**

1. Untuk **akses Origin**, pilih **Pengaturan kontrol akses Origin (disarankan)**.

1. Dari menu tarik-turun **kontrol akses Origin**, pilih OAC yang ingin Anda gunakan.

1. Pilih **Simpan perubahan**.

Distribusi mulai menyebar ke semua lokasi CloudFront tepi. Ketika lokasi tepi menerima konfigurasi baru, ia menandatangani semua permintaan yang dikirim ke asal Titik Akses Multi-Wilayah S3.

------
#### [ CLI ]

Gunakan **create-origin-access-control** perintah:

```
aws cloudfront create-origin-access-control \
    --origin-access-control-config '{
        "Name": "my-s3-mrap-oac",
        "Description": "OAC for S3 Multi-Region Access Point",
        "SigningProtocol": "sigv4a",
        "SigningBehavior": "always",
        "OriginAccessControlOriginType": "s3mrap"
    }'
```

------
#### [ CloudFormation ]

Tentukan nilai berikut di`OriginAccessControlConfig`:
+ `SigningProtocol`: `sigv4a`
+ `SigningBehavior`:`always`,`never`, atau `no-override`
+ `OriginAccessControlOriginType`: `s3mrap`

**Example CloudFormation Template**  

```
Type: AWS::CloudFront::OriginAccessControl
Properties:
  OriginAccessControlConfig:
    Description: An optional description for the origin access control
    Name: my-s3-mrap-oac
    OriginAccessControlOriginType: s3mrap
    SigningBehavior: always
    SigningProtocol: sigv4a
```

------

## Perilaku penandatanganan
<a name="oac-signing-behavior-s3-mrap"></a>

Opsi perilaku penandatanganan untuk asal Titik Akses Multi-Wilayah S3 sama dengan opsi untuk asal bucket Amazon S3 biasa. Untuk informasi selengkapnya, lihat [Pengaturan lanjutan untuk kontrol akses asal](private-content-restricting-access-to-s3.md#oac-advanced-settings-s3) di *Membatasi akses ke asal Amazon S3*.