Cara kerja IAM - AWS Identity and Access Management

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

Cara kerja IAM

IAM menyediakan infrastruktur yang diperlukan untuk mengontrol otentikasi dan otorisasi untuk Anda. Akun AWS Infrastruktur IAM diilustrasikan oleh diagram berikut:

IntroToIAM_diagram

Pertama, pengguna manusia atau aplikasi menggunakan kredensyal masuk mereka untuk mengautentikasi. AWS Otentikasi disediakan dengan mencocokkan kredensi masuk ke prinsipal (pengguna IAM, pengguna federasi, peran IAM, atau aplikasi) yang dipercaya oleh. Akun AWS

Selanjutnya, permintaan dibuat untuk memberikan akses utama ke sumber daya. Akses diberikan sebagai tanggapan atas permintaan otorisasi. Misalnya, saat pertama kali masuk ke konsol dan berada di halaman Beranda konsol, Anda tidak mengakses layanan tertentu. Ketika Anda memilih layanan, permintaan otorisasi dikirim ke layanan tersebut dan terlihat untuk melihat apakah identitas Anda ada dalam daftar pengguna yang berwenang, kebijakan apa yang diberlakukan untuk mengontrol tingkat akses yang diberikan, dan kebijakan lain yang mungkin berlaku. Permintaan otorisasi dapat dibuat oleh kepala sekolah di dalam Anda Akun AWS atau dari orang lain Akun AWS yang Anda percayai.

Setelah diotorisasi, kepala sekolah dapat mengambil tindakan atau melakukan operasi pada sumber daya di Anda Akun AWS. Misalnya, prinsipal dapat meluncurkan Amazon Elastic Compute Cloud instance baru, memodifikasi keanggotaan grup IAM, atau menghapus Amazon Simple Storage Service bucket.

Ketentuan

Istilah IAM ini biasanya digunakan saat bekerja dengan AWS:

Sumber Daya IAM

Sumber daya IAM disimpan dalam IAM. Anda dapat menambahkan, mengedit, dan menghapusnya dari IAM.

  • user

  • grup

  • peran

  • kebijakan

  • objek penyedia identitas

Entitas IAM

Sumber daya IAM yang AWS digunakan untuk otentikasi. Entitas dapat ditetapkan sebagai Principal dalam kebijakan berbasis sumber daya.

  • user

  • peran

Identitas IAM

Sumber daya IAM yang dapat diotorisasi dalam kebijakan untuk melakukan tindakan dan mengakses sumber daya. Identitas termasuk pengguna, grup, dan peran.

Sumber daya, identitas, dan entitas
Pengguna utama

Seseorang atau aplikasi yang menggunakan Pengguna root akun AWS, pengguna IAM, atau peran IAM untuk masuk dan mengajukan permintaan. AWS Penanggung jawab mencakup pengguna gabungan dan peran yang diambil.

Pengguna manusia

Juga dikenal sebagai identitas manusia; orang, administrator, pengembang, operator, dan konsumen aplikasi Anda.

Beban kerja

Kumpulan sumber daya dan kode yang memberikan nilai bisnis, seperti aplikasi atau proses backend. Dapat mencakup aplikasi, alat operasional, dan komponen.

Utama

Principal adalah pengguna manusia atau beban kerja yang dapat membuat permintaan untuk tindakan atau operasi pada AWS sumber daya. Setelah otentikasi, prinsipal dapat diberikan kredensi permanen atau sementara untuk mengajukan permintaan AWS, tergantung pada jenis prinsipnya. Pengguna IAM dan pengguna root diberikan kredensyal permanen, sementara peran diberikan kredensyal sementara. Sebagai praktik terbaik, kami menyarankan Anda meminta pengguna manusia dan beban kerja untuk mengakses AWS sumber daya menggunakan kredensyal sementara.

Permintaan

Ketika seorang prinsipal mencoba menggunakan AWS Management Console, AWS API, atau AWS CLI, prinsipal tersebut mengirimkan permintaan ke AWS. Permintaan tersebut mencakup informasi berikut:

  • Tindakan atau operasi – Tindakan atau operasi yang ingin dilakukan oleh penanggung jawab. Ini bisa berupa tindakan di AWS Management Console, atau operasi di AWS CLI atau AWS API.

  • Resources — Objek AWS sumber daya di mana tindakan atau operasi dilakukan.

  • Penanggung jawab – Orang atau aplikasi yang menggunakan entitas (pengguna atau peran) untuk mengirim permintaan. Informasi tentang penanggung jawab mencakup kebijakan yang berkaitan dengan entitas yang digunakan oleh penanggung jwab untuk masuk.

  • Data lingkungan – Informasi tentang alamat IP, agen pengguna, status yang diaktifkan SSL, atau waktu dalam sehari.

  • Data sumber daya – Data terkait sumber daya yang diminta. Ini dapat mencakup informasi seperti nama tabel DynamoDB atau tag pada instans Amazon EC2.

AWS mengumpulkan informasi permintaan ke dalam konteks permintaan, yang digunakan untuk mengevaluasi dan mengotorisasi permintaan.

Autentikasi

Prinsipal harus diautentikasi (masuk ke AWS) menggunakan kredensialnya untuk mengirim permintaan. AWS Beberapa layanan, seperti Amazon S3 dan AWS STS, memungkinkan beberapa permintaan dari pengguna anonim. Namun, mereka adalah pengecualian dari aturan tersebut.

Untuk mengautentikasi dari konsol sebagai pengguna utama, Anda harus masuk dengan alamat email dan kata sandi Anda. Sebagai pengguna federasi, Anda diautentikasi oleh penyedia identitas Anda dan diberikan akses ke AWS sumber daya dengan mengasumsikan peran IAM. Sebagai pengguna IAM, berikan ID akun atau alias Anda, dan kemudian nama pengguna dan kata sandi Anda. Untuk mengautentikasi beban kerja dari API atau AWS CLI, Anda dapat menggunakan kredensyal sementara dengan menetapkan peran atau Anda dapat menggunakan kredensyal jangka panjang dengan menyediakan kunci akses dan kunci rahasia Anda. Anda juga mungkin diminta untuk memberikan informasi keamanan tambahan. Sebagai praktik terbaik, AWS merekomendasikan agar Anda menggunakan otentikasi multi-faktor (MFA) dan kredensyal sementara untuk meningkatkan keamanan akun Anda. Untuk mempelajari lebih lanjut tentang entitas IAM yang AWS dapat mengautentikasi, lihat Pengguna IAM dan. Peran IAM

Otorisasi

Anda juga harus diotorisasi (diizinkan) untuk menyelesaikan permintaan Anda. Selama otorisasi, AWS menggunakan nilai dari konteks permintaan untuk memeriksa kebijakan yang berlaku bagi permintaan. Kemudian menggunakan kebijakan untuk menentukan apakah akan mengizinkan atau menolak permintaan. Sebagian besar kebijakan disimpan AWS sebagai dokumen JSON dan menentukan izin untuk entitas utama. Ada beberapa jenis kebijakan yang dapat memengaruhi apakah permintaan diotorisasi. Untuk memberi pengguna izin untuk mengakses AWS sumber daya di akun mereka sendiri, Anda hanya perlu kebijakan berbasis identitas. Kebijakan berbasis sumber daya populer untuk menghibahkan akses lintas akun. Jenis kebijakan lainnya adalah fitur lanjutan dan harus digunakan dengan hati-hati.

AWS memeriksa setiap kebijakan yang berlaku untuk konteks permintaan Anda. Jika kebijakan izin tunggal menyertakan tindakan yang AWS ditolak, tolak seluruh permintaan dan berhenti mengevaluasi. Ini disebut penolakan secara tegas. Karena permintaan ditolak secara default, AWS otorisasi permintaan Anda hanya jika setiap bagian dari permintaan Anda diizinkan oleh kebijakan izin yang berlaku. Logika evaluasi untuk permintaan dalam satu akun mengikuti aturan umum ini:

  • Secara default, semua permintaan ditolak. (Secara umum, permintaan yang dibuat menggunakan kredensial Pengguna root akun AWS untuk sumber daya di akun selalu diperbolehkan.)

  • Izin eksplisit dalam kebijakan izin apa pun (berbasis identitas atau berbasis sumber daya) menggantikan pengaturan bawaan ini.

  • Adanya Organizations SCP, batas izin IAM, atau kebijakan sesi membatalkan izin tersebut. Jika ada satu atau lebih jenis kebijakan ini, maka semuanya harus mengizinkan permintaan tersebut. Jika tidak, artinya permintaan ditolak secara implisit.

  • Penolakan eksplisit dalam kebijakan mengesampingkan izin apa pun.

Untuk mempelajari lebih lanjut tentang cara semua jenis kebijakan dievaluasi, lihat Logika evaluasi kebijakan. Jika Anda perlu mengajukan permintaan di akun yang berbeda, kebijakan di akun lain harus mengizinkan Anda mengakses sumber daya dan entitas IAM yang Anda gunakan untuk mengajukan permintaan harus memiliki kebijakan berbasis identitas yang mengizinkan permintaan tersebut.

Tindakan atau operasi

Setelah permintaan Anda diautentikasi dan diotorisasi, AWS setujui tindakan atau operasi dalam permintaan Anda. Operasi didefinisikan oleh layanan, dan mencakup hal-hal yang dapat Anda lakukan terhadap sumber daya, seperti melihat, membuat, mengedit, dan menghapus sumber daya tersebut. Misalnya, IAM mendukung sekitar 40 tindakan untuk satu sumber daya pengguna, termasuk tindakan berikut:

  • CreateUser

  • DeleteUser

  • GetUser

  • UpdateUser

Agar penanggung jawab dapat melakukan operasi, Anda harus menyertakan tindakan yang diperlukan dalam kebijakan yang berlaku bagi prinsipiel atau sumber daya yang terkena dampak. Untuk melihat daftar tindakan, jenis sumber daya, dan kunci kondisi yang didukung oleh setiap layanan, lihat Tindakan, Sumber Daya, dan Kunci Kondisi untuk AWS Layanan.

Sumber daya

Setelah AWS menyetujui operasi dalam permintaan Anda, mereka dapat dilakukan pada sumber daya terkait dalam akun Anda. Sumber daya adalah objek yang ada di dalam layanan. Contohnya meliputi instans Amazon EC2, pengguna IAM, dan bucket Amazon S3. Layanan memiliki definisi serangkaian tindakan yang dapat dilakukan pada setiap sumber daya. Jika Anda membuat permintaan untuk melakukan tindakan yang tidak terkait dengan sumber daya, permintaan tersebut ditolak. Misalnya, jika Anda meminta untuk menghapus peran IAM, tetapi memberikan sumber daya grup IAM, permintaan tersebut gagal. Untuk melihat tabel AWS layanan yang mengidentifikasi sumber daya mana yang terpengaruh oleh suatu tindakan, lihat Tindakan, Sumber Daya, dan Kunci Kondisi untuk AWS Layanan.