

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

# Daftarkan beberapa Akun AWS dengan satu alamat email dengan menggunakan Amazon SES
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses"></a>

*Joe Wozniak dan Shubhangi Vishwakarma, Amazon Web Services*

## Ringkasan
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-summary"></a>

Pola ini menjelaskan bagaimana Anda dapat memisahkan alamat email asli dari alamat email yang terkait dengan alamat email. Akun AWS Akun AWS memerlukan alamat email unik yang akan diberikan pada saat pembuatan akun. Di beberapa organisasi, tim yang mengelola Akun AWS harus menanggung beban mengelola banyak alamat email unik dengan tim pesan mereka. Ini bisa sulit bagi organisasi besar yang mengelola banyak orang Akun AWS. Selain itu, jika sistem email Anda tidak mengizinkan *pengalamatan plus* atau *sub-alamat* seperti yang didefinisikan dalam [Penyaringan Email Saringan: Ekstensi Subaddress (RFC 5233)](https://datatracker.ietf.org/doc/html/rfc5233) —dengan menambahkan tanda plus (\+) dan pengenal di akhir bagian lokal alamat email, seperti —pola ini dapat membantu mengatasi batasan ini. `admin+123456789123@example.com`

Pola ini memberikan solusi penjual alamat email unik yang memungkinkan Akun AWS pemilik untuk mengaitkan satu alamat email dengan beberapa Akun AWS alamat. Alamat email sebenarnya dari Akun AWS pemilik kemudian dikaitkan dengan alamat email yang dihasilkan ini dalam sebuah tabel. Solusi ini menangani semua email masuk untuk akun email unik, mencari pemilik setiap akun, dan kemudian meneruskan pesan yang diterima ke pemilik.  

## Prasyarat dan batasan
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-prereqs"></a>

**Prasyarat**
+ Akses administratif ke sebuah Akun AWS.
+ Akses ke lingkungan pengembangan. 
+ (Opsional) Keakraban dengan AWS Cloud Development Kit (AWS CDK) alur kerja dan bahasa pemrograman Python akan membantu Anda memecahkan masalah atau membuat modifikasi.

**Batasan**
+ Panjang alamat email yang dijual secara keseluruhan 64 karakter. Untuk detailnya, lihat [CreateAccount](https://docs.aws.amazon.com/organizations/latest/APIReference/API_CreateAccount.html)di *referensi AWS Organizations API*.

**Versi produk**
+ Node.js versi 22.x atau yang lebih baru
+ Python 3.13 atau yang lebih baru
+ **Paket Python **pip** dan virtualenv**
+ AWS CDK CLI versi 2.1019.2 atau yang lebih baru
+ Docker 20.10.x atau yang lebih baru

## Arsitektur
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-architecture"></a>

**Tumpukan teknologi target**
+ CloudFormation tumpukan
+ AWS Lambda fungsi
+ Aturan dan aturan Amazon Simple Email Service (Amazon SES) dan aturan
+ AWS Identity and Access Management (IAM) peran dan kebijakan
+ Kebijakan bucket dan bucket Amazon Simple Storage Service (Amazon S3)
+ AWS Key Management Service (AWS KMS) kebijakan kunci dan kunci
+ Kebijakan topik dan topik Amazon Simple Notification Service (Amazon SNS)
+ Tabel Amazon DynamoDB 

**Arsitektur target**

![Arsitektur target untuk mendaftarkan beberapa akun AWS dengan satu alamat email](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/1be85b92-69e5-43b2-aeed-27b9509e145e/images/c7ae9d7a-d4e0-412e-97cb-0f3073e012e7.png)


Diagram ini menunjukkan dua aliran:
+ **Alur penjual alamat email:** Dalam diagram, alur penjual alamat email (bagian bawah) biasanya dimulai dengan solusi penjual akun atau otomatisasi luar, atau dipanggil secara manual. Dalam permintaan, fungsi Lambda dipanggil dengan payload yang berisi metadata yang dibutuhkan. Fungsi ini menggunakan informasi ini untuk menghasilkan nama akun dan alamat email yang unik, menyimpannya dalam database DynamoDB, dan mengembalikan nilai ke pemanggil. Nilai-nilai ini kemudian dapat digunakan untuk membuat baru Akun AWS (biasanya dengan menggunakan AWS Organizations).
+ **Alur penerusan email:** Alur ini diilustrasikan di bagian atas diagram sebelumnya. Ketika Akun AWS dibuat dengan menggunakan email akun yang dihasilkan dari alur penjual alamat email, AWS mengirim berbagai email, seperti konfirmasi pendaftaran akun dan pemberitahuan berkala, ke alamat email tersebut. Dengan mengikuti langkah-langkah dalam pola ini, Anda mengonfigurasi Anda Akun AWS dengan Amazon SES untuk menerima email untuk seluruh domain. Solusi ini mengonfigurasi aturan penerusan yang memungkinkan Lambda memproses semua email yang masuk, periksa untuk melihat apakah alamatnya `TO` ada di tabel DynamoDB, dan meneruskan pesan ke alamat email pemilik akun sebagai gantinya. Menggunakan proses ini memberi pemilik akun kemampuan untuk mengaitkan beberapa akun dengan satu alamat email.

**Otomatisasi dan skala**

Pola ini menggunakan AWS CDK untuk sepenuhnya mengotomatiskan penerapan. Solusinya menggunakan layanan AWS terkelola yang akan (atau dapat dikonfigurasi untuk) menskalakan secara otomatis untuk memenuhi kebutuhan Anda. Fungsi Lambda mungkin memerlukan konfigurasi tambahan untuk memenuhi kebutuhan penskalaan Anda. Untuk informasi selengkapnya, lihat [Memahami penskalaan fungsi Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-scaling.html) dalam dokumentasi Lambda.

## Alat
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-tools"></a>

**Layanan AWS**
+ [CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)membantu Anda menyiapkan AWS sumber daya, menyediakannya dengan cepat dan konsisten, dan mengelolanya sepanjang siklus hidupnya di seluruh Akun AWS dan Wilayah.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) adalah alat sumber terbuka yang membantu Anda berinteraksi dengan layanan AWS melalui perintah di shell baris perintah Anda.
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) adalah layanan database NoSQL yang dikelola sepenuhnya yang menyediakan kinerja yang cepat, dapat diprediksi, dan terukur.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) membantu Anda mengelola akses ke AWS sumber daya dengan aman dengan mengontrol siapa yang diautentikasi dan diberi wewenang untuk menggunakannya.
+ [AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) membantu Anda membuat dan mengontrol kunci kriptografi untuk membantu melindungi data Anda.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)adalah layanan komputasi yang membantu Anda menjalankan kode tanpa perlu menyediakan atau mengelola server. Ini menjalankan kode Anda hanya bila diperlukan dan skala secara otomatis, jadi Anda hanya membayar untuk waktu komputasi yang Anda gunakan.
+ [Amazon Simple Email Service (Amazon SES)](https://docs.aws.amazon.com/ses/latest/dg/Welcome.html) membantu Anda mengirim dan menerima email dengan menggunakan alamat email dan domain Anda sendiri.
+ [Amazon Simple Notification Service (Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)) membantu Anda mengoordinasikan dan mengelola pertukaran pesan antara penayang dan klien, termasuk server web dan alamat email.
+ [Amazon Simple Storage Service (Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html)) adalah layanan penyimpanan objek berbasis cloud yang membantu Anda menyimpan, melindungi, dan mengambil sejumlah data.

**Alat yang dibutuhkan untuk penyebaran**
+ Lingkungan pengembangan dengan AWS CLI dan akses IAM ke Anda Akun AWS. Untuk detailnya, lihat tautan di bagian [Sumber daya terkait](#register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-resources).  
+ Pada sistem pengembangan Anda, instal yang berikut ini:
  + Alat baris perintah Git, tersedia dari [situs unduhan Git](https://git-scm.com/downloads).
  +  AWS CLI Untuk mengkonfigurasi kredenal akses untuk file. AWS CDK Lihat informasi yang lebih lengkap dalam [dokumentasi AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html).
  + [Python versi 3.13 atau yang lebih baru, tersedia dari situs web unduhan Python.](https://www.python.org/downloads/)
  + UV untuk manajemen paket Python. Untuk petunjuk pemasangan, lihat [panduan pemasangan UV](https://docs.astral.sh/uv/getting-started/installation/).
  + Node.js versi 22.x atau yang lebih baru. Untuk petunjuk penginstalan, lihat [dokumentasi Node.js](https://nodejs.org/en/learn/getting-started/how-to-install-nodejs).
  + AWS CDK CLI versi 2.1019.2 atau yang lebih baru. Untuk petunjuk instalasi, lihat [AWS CDK dokumentasi](https://docs.aws.amazon.com/cdk/v2/guide/getting-started.html#getting-started-install).
  + Docker versi 20.10.x atau yang lebih baru. Untuk petunjuk penginstalan, lihat [dokumentasi Docker](https://docs.docker.com/engine/install/).

**Kode**

Kode untuk pola ini tersedia di repositori [email GitHub Akun AWS pabrik](https://github.com/aws-samples/aws-account-factory-email).

## Epik
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-epics"></a>

### Mengalokasikan lingkungan penyebaran target
<a name="allocate-a-target-deployment-environment"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Identifikasi atau buat Akun AWS. | Identifikasi yang sudah ada atau baru Akun AWS di mana Anda memiliki akses administratif penuh, untuk menyebarkan solusi email. | Administrator AWS, Administrator cloud | 
| Siapkan lingkungan penerapan. | Konfigurasikan lingkungan penerapan yang mudah digunakan dan atur dependensi dengan mengikuti langkah-langkah berikut:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | AWS DevOps, Pengembang aplikasi | 

### Siapkan domain terverifikasi
<a name="set-up-a-verified-domain"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Mengidentifikasi dan mengalokasikan domain. | Fungsionalitas penerusan email membutuhkan domain khusus. Identifikasi dan alokasikan domain atau subdomain yang dapat Anda verifikasi dengan Amazon SES. Domain ini harus tersedia untuk menerima email masuk di Akun AWS tempat solusi penerusan email digunakan.<br />Persyaratan domain:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Administrator cloud, Administrator jaringan, administrator DNS | 
| Verifikasi domain. | Verifikasi bahwa domain yang diidentifikasi dapat digunakan untuk menerima email masuk.<br />Lengkapi petunjuk di [Memverifikasi domain Anda untuk penerimaan email Amazon SES](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-verification.html) di dokumentasi Amazon SES. Ini akan membutuhkan koordinasi dengan orang atau tim yang bertanggung jawab atas catatan DNS domain. | Pengembang aplikasi, AWS DevOps | 
| Siapkan catatan MX. | Siapkan domain Anda dengan data MX yang mengarah ke titik akhir Amazon SES di Wilayah Akun AWS dan Anda. Untuk informasi selengkapnya, lihat [Menerbitkan data MX untuk penerimaan email Amazon SES](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-mx-record.html) di dokumentasi Amazon SES. | Administrator cloud, Administrator jaringan, administrator DNS | 

### Menyebarkan solusi penjual otomatis dan penerusan email
<a name="deploy-the-email-vending-and-forwarding-solution"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Ubah nilai default di`cdk.json`. | Edit beberapa nilai default dalam `cdk.json` file (di root repositori) sehingga solusi akan beroperasi dengan benar setelah digunakan.[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Pengembang aplikasi, AWS DevOps | 
| Menyebarkan solusi penjual dan penerusan email. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Pengembang aplikasi, AWS DevOps | 
| Verifikasi bahwa solusi telah diterapkan. | Verifikasi bahwa solusi berhasil diterapkan sebelum Anda mulai menguji:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Pengembang aplikasi, AWS DevOps | 

### Verifikasi bahwa penjual dan penerusan email beroperasi seperti yang diharapkan
<a name="verify-that-email-vending-and-forwarding-operate-as-expected"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Verifikasi bahwa API berfungsi. | Pada langkah ini, Anda mengirimkan data pengujian ke API solusi dan mengonfirmasi bahwa solusi menghasilkan output yang diharapkan dan operasi backend telah dilakukan seperti yang diharapkan.<br />Jalankan fungsi **Vend Email** Lambda secara manual dengan menggunakan input pengujian. (Sebagai contoh, lihat file [sample\_vend\_request.json](https://github.com/aws-samples/aws-account-factory-email/blob/main/src/events/sample_vend_request.json).) Untuk`OwnerAddress`, gunakan alamat email yang valid. API harus mengembalikan nama akun dan email akun dengan nilai seperti yang diharapkan. | Pengembang aplikasi, AWS DevOps | 
| Verifikasi bahwa email sedang diteruskan. | Pada langkah ini, Anda mengirim email pengujian melalui sistem dan memverifikasi bahwa email diteruskan ke penerima yang diharapkan.[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Pengembang aplikasi, AWS DevOps | 

## Pemecahan masalah
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| Sistem tidak meneruskan email seperti yang diharapkan. | Verifikasi bahwa pengaturan Anda sudah benar:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html)<br />Setelah memverifikasi pengaturan domain, ikuti langkah-langkah berikut:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | 
| Saat Anda mencoba menerapkan AWS CDK tumpukan, Anda menerima kesalahan yang mirip dengan:<br />“Kesalahan format templat: Jenis sumber daya yang tidak dikenal”  | Dalam kebanyakan kasus, pesan kesalahan ini berarti bahwa Wilayah yang Anda targetkan tidak memiliki semua layanan AWS yang tersedia. Jika Anda menggunakan EC2 instans Amazon untuk menerapkan solusi, Anda mungkin menargetkan Wilayah yang berbeda dari Wilayah tempat instance berjalan.Secara default, AWS CDK penyebaran ke Wilayah dan akun yang Anda konfigurasikan di. AWS CLI<br />Solusi yang mungkin:[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | 
| Saat Anda menerapkan solusi, Anda menerima pesan galat:<br />“Penerapan gagal: Kesalahan:: Parameter SSM bootstrap/hnb659fds/version /cdk- tidak ditemukan. AwsMailFwdStack Apakah lingkungan telah di-bootstrap? Silakan jalankan 'cdk bootstrap'” | Jika Anda belum pernah menerapkan AWS CDK sumber daya apa pun ke Akun AWS dan Wilayah yang Anda targetkan, Anda harus terlebih dahulu menjalankan `cdk bootstrap` perintah seperti yang ditunjukkan oleh kesalahan. Jika Anda terus menerima kesalahan ini setelah menjalankan perintah bootstrap, Anda mungkin mencoba menerapkan solusi ke Wilayah yang berbeda dari Wilayah tempat lingkungan pengembangan Anda berjalan.<br />Untuk mengatasi masalah ini, atur variabel `AWS_DEFAULT_REGION` lingkungan atau atur Region dengan AWS CLI sebelum Anda menerapkan solusi. [Atau, Anda dapat memodifikasi `app.py` file di root repositori untuk menyertakan ID akun dan Wilayah dengan kode keras dengan mengikuti instruksi dalam dokumentasi untuk lingkungan.AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/environments.html) | 

## Sumber daya terkait
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-resources"></a>
+ Untuk bantuan menginstal AWS CLI, lihat [Menginstal atau memperbarui ke versi terbaru AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html).
+ Untuk bantuan menyiapkan kredensil akses IAM AWS CLI dengan IAM, lihat [Mengonfigurasi](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) setelan untuk. AWS CLI
+ Untuk bantuan dengan AWS CDK, lihat [Memulai dengan AWS CDK](https://docs.aws.amazon.com/cdk/latest/guide/getting_started.html#getting_started_install). 

## Informasi tambahan
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-additional"></a>

**Biaya**

Ketika Anda menerapkan solusi ini, Akun AWS pemegang mungkin dikenakan biaya yang terkait dengan penggunaan layanan berikut.  Penting bagi Anda untuk memahami bagaimana layanan ini ditagih sehingga Anda mengetahui adanya potensi biaya. Untuk informasi harga, lihat halaman berikut:
+ [Harga Amazon SES](https://aws.amazon.com/ses/pricing/)
+ [Harga Amazon S3](https://aws.amazon.com/s3/pricing/)
+ [AWS KMS harga](https://aws.amazon.com/kms/pricing/)
+ [AWS Lambda harga](https://aws.amazon.com/lambda/pricing/)
+ [Harga Amazon DynamoDB](https://aws.amazon.com/dynamodb/pricing/)