

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

# Otentikasi dan akses menggunakan AWS SDKs dan alat
<a name="access"></a>

Saat Anda mengembangkan aplikasi AWS SDK atau menggunakan AWS alat untuk digunakan Layanan AWS, Anda harus menetapkan bagaimana kode atau alat Anda mengautentikasi. AWS Anda dapat mengonfigurasi akses terprogram ke AWS sumber daya dengan cara yang berbeda, tergantung pada lingkungan tempat kode berjalan dan AWS akses yang tersedia untuk Anda. 

Opsi di bawah ini adalah bagian dari [rantai penyedia kredensi](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html#credentialProviderChain). Ini berarti bahwa dengan mengonfigurasi file bersama AWS `config` dan `credentials` file yang sesuai, AWS SDK atau alat Anda akan secara otomatis menemukan dan menggunakan metode otentikasi tersebut.

## Pilih metode untuk mengautentikasi kode aplikasi Anda
<a name="authDecisionTree"></a>

Pilih metode untuk mengautentikasi panggilan yang dilakukan AWS oleh aplikasi Anda.

### Apakah Anda menjalankan kode DI DALAM Layanan AWS (seperti Amazon EC2, Lambda, Amazon ECS, Amazon EKS,)? CodeBuild
<a name="a"></a>

Jika kode Anda berjalan AWS, kredensi dapat dibuat secara otomatis tersedia untuk aplikasi Anda. Misalnya, jika aplikasi Anda di-host di Amazon Elastic Compute Cloud, dan terdapat peran IAM yang terkait dengan sumber daya tersebut, kredensialnya secara otomatis tersedia untuk aplikasi Anda. [Demikian juga, jika Anda menggunakan Amazon ECS atau Amazon EKS container, kredensi yang ditetapkan untuk peran IAM dapat diperoleh secara otomatis oleh kode yang berjalan di dalam container melalui rantai penyedia kredensi SDK.](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html#credentialProviderChain)

#### Apakah kode Anda ada dalam instans Amazon Elastic Compute Cloud?
<a name="a1"></a>

[Menggunakan peran IAM untuk mengautentikasi aplikasi yang digunakan ke Amazon EC2](access-iam-roles-for-ec2.md)— Gunakan peran IAM untuk menjalankan aplikasi Anda dengan aman di instans Amazon EC2.

#### Apakah kode Anda dalam suatu AWS Lambda fungsi?
<a name="a2"></a>

Lambda membuat peran eksekusi dengan izin minimal saat Anda membuat fungsi [Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). AWS SDK atau alat kemudian secara otomatis menggunakan peran IAM yang dilampirkan ke Lambda saat runtime, melalui lingkungan eksekusi Lambda.

#### Apakah kode Anda di Amazon Elastic Container Service (di Amazon EC2 atau untuk AWS Fargate Amazon ECS)?
<a name="a3"></a>

Gunakan Peran IAM untuk Tugas. Anda harus [membuat peran tugas dan menentukan peran](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) itu dalam [definisi tugas Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.html) Anda. AWS SDK atau alat kemudian secara otomatis menggunakan peran IAM yang ditetapkan ke tugas saat runtime, melalui metadata Amazon ECS.

#### Apakah kode Anda ada di Amazon Elastic Kubernetes Service?
<a name="a4"></a>

Kami menyarankan Anda menggunakan [Amazon EKS Pod Identities.](https://docs.aws.amazon.com/eks/latest/userguide/pod-identities.html)

Catatan: Jika Anda merasa bahwa [peran IAM untuk akun layanan](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html) (IRSA) mungkin lebih sesuai dengan kebutuhan unik Anda, lihat [Membandingkan Identitas Pod EKS dan IRSA di Panduan](https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html#service-accounts-iam) Pengguna **Amazon EKS**.

#### Apakah kode Anda berjalan di AWS CodeBuild
<a name="a5"></a>

Lihat [Menggunakan kebijakan berbasis identitas](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html) untuk. CodeBuild

#### Apakah kode Anda di yang lain Layanan AWS?
<a name="a6"></a>

Lihat panduan khusus untuk Anda Layanan AWS. Saat Anda menjalankan kode AWS, [rantai penyedia kredensi](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html#credentialProviderChain) SDK dapat secara otomatis memperoleh dan menyegarkan kredensil untuk Anda.

### Apakah Anda membuat aplikasi seluler atau aplikasi web berbasis klien?
<a name="b"></a>

Jika Anda membuat aplikasi seluler atau aplikasi web berbasis klien yang memerlukan akses AWS, buat aplikasi Anda sehingga meminta kredensil AWS keamanan sementara secara dinamis dengan menggunakan federasi identitas web. 

Dengan federasi identitas web, Anda tidak perlu membuat kode masuk khusus atau mengelola identitas pengguna Anda sendiri. Sebagai gantinya, pengguna aplikasi dapat masuk menggunakan penyedia identitas eksternal (IDP) yang terkenal, seperti Login with Amazon, Facebook, Google, atau IDP lain yang kompatibel dengan OpenID Connect (OIDC). Mereka dapat menerima token otentikasi, dan kemudian menukar token itu dengan kredensil keamanan sementara di peta AWS itu ke peran IAM dengan izin untuk menggunakan sumber daya di Anda. Akun AWS

Untuk mempelajari cara mengonfigurasi ini untuk SDK atau alat Anda, lihat[Dengan asumsi peran dengan identitas web atau OpenID Connect AWS SDKs untuk mengautentikasi dan alat](access-assume-role-web.md). 

Untuk aplikasi seluler, pertimbangkan untuk menggunakan Amazon Cognito. Amazon Cognito bertindak sebagai pialang identitas dan melakukan banyak pekerjaan federasi untuk Anda. Untuk informasi selengkapnya, lihat [Menggunakan Amazon Cognito untuk aplikasi seluler](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc_cognito.html) di Panduan Pengguna *IAM*. 

### Apakah Anda mengembangkan dan menjalankan kode secara lokal?
<a name="c"></a>

Kami merekomendasikan[Menggunakan kredensi konsol untuk AWS SDKs mengautentikasi dan alat](access-login.md).

Setelah alur otentikasi berbasis browser yang cepat, AWS secara otomatis menghasilkan kredensil sementara yang berfungsi di seluruh alat pengembangan lokal seperti CLI, dan. AWS Alat AWS untuk PowerShell AWS SDKs 

#### Jika Anda menggunakan Pusat Identitas untuk akses AWS akun
<a name="idc"></a>

Gunakan Pusat Identitas IAM untuk mengautentikasi AWS SDK dan alat jika Anda sudah memiliki akses ke AWS akun yang and/or perlu mengelola akses untuk tenaga kerja Anda. Sebagai praktik keamanan terbaik, sebaiknya gunakan AWS Organizations dengan IAM Identity Center untuk mengelola akses di semua AWS akun Anda. Anda dapat membuat pengguna di Pusat Identitas IAM, menggunakan Microsoft Active Directory, menggunakan penyedia identitas SAMP 2.0 (iDP), atau secara individual menggabungkan IDP Anda ke akun. AWS Untuk memeriksa apakah Wilayah Anda mendukung Pusat Identitas IAM, lihat titik akhir dan kuota Pusat [Menggunakan IAM Identity Center untuk mengautentikasi AWS SDK dan alat](access-sso.md) Identitas IAM di Referensi Umum Amazon Web Services.

#### Jika Anda mencari cara lain untuk mengautentikasi
<a name="owa"></a>

Buat pengguna IAM dengan hak istimewa dengan izin untuk masuk ke peran target Anda. `sts:AssumeRole` Kemudian konfigurasikan profil Anda untuk mengambil peran menggunakan `source_profile` pengaturan untuk pengguna tersebut.

Anda juga dapat menggunakan kredensil IAM sementara melalui variabel lingkungan atau file kredensi bersama AWS . Lihat Menggunakan kredensi jangka pendek untuk mengautentikasi AWS SDKs dan alat.

Catatan: Hanya di kotak pasir atau lingkungan belajar, Anda dapat mempertimbangkan Menggunakan kredensi jangka panjang untuk AWS SDKs mengautentikasi dan alat.

### Apakah kode ini berjalan di lokasi atau dalam VM hibrid/sesuai permintaan (seperti server yang membaca dari atau menulis ke Amazon S3, atau Jenkins menyebarkan ke cloud)?
<a name="d"></a>

#### Apakah Anda menggunakan sertifikat klien X.509?
<a name="d1"></a>

Ya: Lihat[Menggunakan Peran IAM Di Mana Saja untuk mengautentikasi dan AWS SDKs alat](access-rolesanywhere.md). Anda dapat menggunakan IAM Roles Anywhere untuk mendapatkan kredensil keamanan sementara di IAM untuk beban kerja seperti server, kontainer, dan aplikasi yang berjalan di luar. AWS Untuk menggunakan Peran IAM Di Mana Saja, beban kerja Anda harus menggunakan sertifikat X.509.

#### Dapatkah lingkungan terhubung dengan aman ke penyedia identitas federasi (seperti Microsoft Entra atau Okta) untuk meminta kredensil sementara? AWS
<a name="d2"></a>

##### Ya: Gunakan [Penyedia kredensi proses](feature-process-credentials.md)
<a name="d2a"></a>

Gunakan [Penyedia kredensi proses](feature-process-credentials.md) untuk mengambil kredensil secara otomatis saat runtime. Sistem ini mungkin menggunakan alat pembantu atau plugin untuk mendapatkan kredensil, dan mungkin mengambil peran IAM di belakang layar menggunakan. `sts:AssumeRole`

##### Tidak: Gunakan kredensil sementara yang disuntikkan melalui AWS Secrets Manager
<a name="d2b"></a>

Gunakan kredensil sementara yang disuntikkan melalui. AWS Secrets Manager Untuk opsi untuk mendapatkan kunci akses berumur pendek, lihat [Meminta kredensil keamanan sementara di Panduan Pengguna](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html) *IAM*. Untuk opsi menyimpan kredensil sementara ini, lihat. [AWS kunci akses](feature-static-credentials.md)

Anda dapat menggunakan kredensil ini untuk mengambil izin aplikasi yang lebih luas dari Secrets [Manager dengan aman, tempat rahasia produksi atau kredenal](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access.html) berbasis peran yang berumur panjang dapat disimpan.

### Apakah Anda menggunakan alat pihak ketiga yang tidak masuk AWS?
<a name="e"></a>

Gunakan dokumentasi yang ditulis oleh penyedia pihak ketiga Anda untuk panduan terbaik tentang mendapatkan kredensi.

#### Jika pihak ketiga Anda belum memberikan dokumentasi, dapatkah Anda menyuntikkan kredensil sementara dengan aman?
<a name="e1"></a>

Ya: Gunakan variabel lingkungan dan AWS STS kredensil sementara.

Tidak: Gunakan kunci akses statis yang disimpan di manajer rahasia terenkripsi (pilihan terakhir).

## Metode otentikasi
<a name="authOptions"></a>

**Metode otentikasi untuk kode yang berjalan dalam lingkungan AWS **

Jika kode Anda berjalan AWS, kredensi dapat dibuat secara otomatis tersedia untuk aplikasi Anda. Misalnya, jika aplikasi Anda di-host di Amazon Elastic Compute Cloud, dan terdapat peran IAM yang terkait dengan sumber daya tersebut, kredensialnya secara otomatis tersedia untuk aplikasi Anda. Demikian juga, jika Anda menggunakan Amazon ECS atau Amazon EKS container, kredensi yang ditetapkan untuk peran IAM dapat diperoleh secara otomatis oleh kode yang berjalan di dalam container melalui rantai penyedia kredensi SDK.
+ [Menggunakan peran IAM untuk mengautentikasi aplikasi yang digunakan ke Amazon EC2](access-iam-roles-for-ec2.md)— Gunakan peran IAM untuk menjalankan aplikasi Anda dengan aman di instans Amazon EC2. 
+  Anda dapat berinteraksi secara terprogram dengan AWS menggunakan IAM Identity Center dengan cara berikut:
  + Gunakan [AWS CloudShell](https://docs.aws.amazon.com/cloudshell/latest/userguide/)untuk menjalankan AWS CLI perintah dari konsol.
  + [Untuk mencoba ruang kolaborasi berbasis cloud untuk tim pengembangan perangkat lunak, pertimbangkan untuk menggunakan Amazon. CodeCatalyst](https://docs.aws.amazon.com/codecatalyst/latest/userguide/welcome.html) 

**Otentikasi melalui penyedia identitas berbasis web - Aplikasi web seluler atau berbasis klien**

Jika Anda membuat aplikasi seluler atau aplikasi web berbasis klien yang memerlukan akses AWS, buat aplikasi Anda sehingga meminta kredensil AWS keamanan sementara secara dinamis dengan menggunakan federasi identitas web. 

Dengan federasi identitas web, Anda tidak perlu membuat kode masuk khusus atau mengelola identitas pengguna Anda sendiri. Sebagai gantinya, pengguna aplikasi dapat masuk menggunakan penyedia identitas eksternal (IDP) yang terkenal, seperti Login with Amazon, Facebook, Google, atau IDP lain yang kompatibel dengan OpenID Connect (OIDC). Mereka dapat menerima token otentikasi, dan kemudian menukar token itu dengan kredensil keamanan sementara di peta AWS itu ke peran IAM dengan izin untuk menggunakan sumber daya di Anda. Akun AWS

Untuk mempelajari cara mengonfigurasi ini untuk SDK atau alat Anda, lihat[Dengan asumsi peran dengan identitas web atau OpenID Connect AWS SDKs untuk mengautentikasi dan alat](access-assume-role-web.md). 

Untuk aplikasi seluler, pertimbangkan untuk menggunakan Amazon Cognito. Amazon Cognito bertindak sebagai pialang identitas dan melakukan banyak pekerjaan federasi untuk Anda. Untuk informasi selengkapnya, lihat [Menggunakan Amazon Cognito untuk aplikasi seluler](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc_cognito.html) di Panduan Pengguna *IAM*. 

**Metode otentikasi untuk kode yang berjalan secara lokal (tidak masuk) AWS**
+ [Menggunakan kredensi konsol untuk AWS SDKs mengautentikasi dan alat](access-login.md)— Fitur ini bekerja dengan Antarmuka Baris AWS Perintah dan Alat untuk PowerShell dan memberi Anda kredensil yang dapat disegarkan yang bekerja di seluruh alat pengembangan lokal seperti AWS CLI, Alat untuk dan. PowerShell AWS
+ [Menggunakan IAM Identity Center untuk mengautentikasi AWS SDK dan alat](access-sso.md)— Sebagai praktik keamanan terbaik, kami sarankan menggunakan AWS Organizations dengan IAM Identity Center untuk mengelola akses di semua Anda Akun AWS. Anda dapat membuat pengguna di AWS IAM Identity Center, menggunakan Microsoft Active Directory, menggunakan penyedia identitas SAMP 2.0 (iDP), atau secara individual menggabungkan IDP Anda ke. Akun AWS Untuk memeriksa apakah Wilayah Anda mendukung Pusat Identitas IAM, lihat [AWS IAM Identity Center titik akhir dan kuota](https://docs.aws.amazon.com/general/latest/gr/sso.html) di. *Referensi Umum Amazon Web* 
+ [Menggunakan Peran IAM Di Mana Saja untuk mengautentikasi dan AWS SDKs alat](access-rolesanywhere.md)— Anda dapat menggunakan IAM Roles Anywhere untuk mendapatkan kredensil keamanan sementara di IAM untuk beban kerja seperti server, kontainer, dan aplikasi yang berjalan di luar. AWS Untuk menggunakan Peran IAM Di Mana Saja, beban kerja Anda harus menggunakan sertifikat X.509. 
+  [Dengan asumsi peran dengan AWS kredensi untuk mengautentikasi dan alat AWS SDKs](access-assume-role.md)— Anda dapat mengambil peran IAM untuk mengakses AWS sumber daya sementara yang mungkin tidak dapat Anda akses sebaliknya. 
+  [Menggunakan tombol AWS akses untuk mengautentikasi AWS SDKs dan alat](access-users.md)— Pilihan lain yang mungkin kurang nyaman atau mungkin meningkatkan risiko keamanan untuk AWS sumber daya Anda. 

**Informasi lebih lanjut tentang manajemen akses**

*Panduan Pengguna IAM* memiliki informasi berikut tentang mengontrol akses ke AWS sumber daya secara aman:
+ [Identitas IAM (pengguna, grup pengguna, dan peran)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html) - Memahami dasar-dasar identitas di. AWS
+ [Praktik terbaik keamanan di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) — Rekomendasi keamanan untuk diikuti ketika mengembangkan AWS aplikasi sesuai dengan model tanggung jawab [bersama.](https://aws.amazon.com/compliance/shared-responsibility-model/)

Ini *Referensi Umum Amazon Web*memiliki dasar-dasar dasar sebagai berikut:
+ [Memahami dan mendapatkan AWS kredensil Anda](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html) — Akses opsi kunci dan praktik manajemen untuk akses konsol dan program.

**Plugin IAM Identity Center tepercaya propagasi identitas (TIP) untuk diakses Layanan AWS**
+ [Menggunakan plugin TIP untuk mengakses Layanan AWS](access-tip.md)— Jika Anda membuat aplikasi untuk Amazon Q Business atau layanan lain yang mendukung propagasi identitas tepercaya, dan menggunakan AWS SDK untuk Java atau AWS SDK untuk JavaScript, Anda dapat menggunakan plugin TIP untuk pengalaman otorisasi yang efisien. 

## ID AWS Builder
<a name="bid"></a>

Anda ID AWS Builder melengkapi apa pun yang mungkin sudah Akun AWS Anda miliki atau ingin buat. Sementara Akun AWS bertindak sebagai wadah untuk AWS sumber daya yang Anda buat dan menyediakan batas keamanan untuk sumber daya tersebut, Anda ID AWS Builder mewakili Anda sebagai individu. Anda dapat masuk dengan Anda ID AWS Builder untuk mengakses alat dan layanan pengembang seperti Amazon Q dan Amazon CodeCatalyst.
+ [ID AWS Builder Masuk dengan](https://docs.aws.amazon.com/signin/latest/userguide/sign-in-aws_builder_id.html) *Panduan AWS Sign-In Pengguna* — Pelajari cara membuat dan menggunakan ID AWS Builder dan mempelajari apa yang disediakan Builder ID.
+ [CodeCatalystkonsep - ID AWS Builder](https://docs.aws.amazon.com/codecatalyst/latest/userguide/concepts.html#sign-in-concept) di *Panduan CodeCatalyst Pengguna Amazon* - Pelajari cara CodeCatalyst menggunakan file ID AWS Builder.