Untuk apa ABAC? AWS - 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.

Untuk apa ABAC? AWS

Kontrol akses berbasis atribut (ABAC) adalah strategi otorisasi yang menentukan izin berdasarkan atribut. Dalam AWS, atribut ini disebut tag. Anda dapat melampirkan tag ke sumber daya IAM, termasuk entitas IAM (pengguna atau peran) dan sumber daya. AWS Anda dapat membuat kebijakan ABAC tunggal atau set kecil kebijakan untuk penanggung jawab IAM Anda. Kebijakan ABAC ini dapat dirancang untuk memungkinkan operasi ketika tag penanggung jawab cocok dengan tag sumber daya. ABAC sangat membantu di lingkungan yang berkembang dengan cepat dan membantu dalam situasi ketika manajemen kebijakan menjadi rumit.

Misalnya, Anda dapat membuat tiga peran dengan kunci tanda access-project. Mengatur nilai tanda dari peran pertama ke Heart, yang kedua ke Star, dan yang ketiga ke Lightning. Anda kemudian dapat menggunakan kebijakan tunggal yang memungkinkan akses ketika peran dan sumber daya ditandai dengan nilai yang sama untuk access-project. Untuk tutorial terperinci yang menunjukkan cara menggunakan ABAC di AWS, lihat. Tutorial IAM: Tentukan izin untuk mengakses AWS sumber daya berdasarkan tag Untuk mempelajari tentang layanan yang mendukung ABAC, lihatAWS layanan yang bekerja dengan IAM.

Model ABAC

Membandingkan ABAC dengan model RBAC tradisional

Model otorisasi tradisional yang digunakan di IAM disebut kontrol akses berbasis peran (RBAC). RBAC mendefinisikan izin berdasarkan fungsi tugas seseorang, yang dikenal di luar AWS sebagai peran. Dalam AWS peran biasanya mengacu pada peran IAM, yang merupakan identitas dalam IAM yang dapat Anda asumsikan. IAM mencakup kebijakan terkelola untuk fungsi kerja yang menyelaraskan izin fungsi pekerjaan dalam model RBAC.

Di IAM, Anda menerapkan RBAC dengan membuat kebijakan yang berbeda untuk fungsi pekerjaan yang berbeda. Anda kemudian melampirkan kebijakan ke identitas (pengguna IAM, grup pengguna, atau peran IAM). Sebagai praktik terbaik, Anda memberikan izin minimum yang diperlukan untuk fungsi pekerjaan. Ini dikenal sebagai memberikan hak istimewa terkecil. Lakukan ini dengan mencantumkan sumber daya tertentu yang dapat diakses oleh fungsi pekerjaan. Kekurangan menggunakan model RBAC tradisional ini adalah saat karyawan menambahkan sumber daya baru, Anda harus memperbarui kebijakan untuk memungkinkan akses ke sumber daya tersebut.

Misalnya, anggaplah Anda memiliki tiga proyek bernama Heart, Star, dan Lightning, yang dikerjakan karyawan Anda. Anda membuat peran IAM untuk setiap proyek. Anda kemudian melampirkan kebijakan ke setiap peran IAM untuk menentukan sumber daya yang diizinkan siapa pun untuk menggunakan peran yang dapat diakses. Jika seorang karyawan berganti pekerjaan dalam perusahaan Anda, Anda menetapkan mereka ke peran IAM yang berbeda. Orang atau program dapat ditetapkan ke lebih dari satu peran. Namun, Star proyek ini mungkin memerlukan sumber daya tambahan, seperti wadah Amazon EC2 baru. Dalam hal ini, Anda harus memperbarui kebijakan yang dilampirkan ke Star peran untuk menentukan sumber daya penampung baru. Jika tidak, anggota Star proyek tidak diizinkan mengakses kontainer baru.

Model RBAC
ABAC memberikan keuntungan berikut dibandingkan model RBAC tradisional:
  • Skala izin ABAC dengan inovasi. Administrator idak perlu lagi memperbarui kebijakan yang ada untuk memungkinkan akses ke sumber daya baru. Misalnya, anggap Anda merancang strategi ABAC Anda dan tanda access-project. Developer menggunakan peran dengan tanda access-project = Heart. Saat orang-orang di proyek Heart perlu sumber daya Amazon EC2 tambahan, pengembang dapat menciptakan instans Amazon EC2 baru dengan tag access-project = Heart. Lalu, siapa pun di proyek Heart dapat memulai dan menghentikan instans tersebut karena nilai tanda mereka cocok.

  • ABAC membutuhkan lebih sedikit kebijakan. Karena Anda tidak perlu membuat kebijakan yang berbeda untuk fungsi pekerjaan yang berbeda, Anda membuat kebijakan yang lebih sedikit. Kebijakan tersebut lebih mudah dikelola.

  • Menggunakan ABAC, tim dapat berubah dan tumbuh dengan cepat. Ini karena izin untuk sumber daya baru secara otomatis diberikan berdasarkan atribut. Misalnya, jika perusahaan Anda sudah mendukung proyek Heart dan Star menggunakan ABAC, mudah untuk menambahkan proyek Lightning baru. Administrator IAM membuat peran baru dengan tag access-project = Lightning. Tidak perlu mengubah kebijakan untuk mendukung proyek baru. Siapa pun yang memiliki izin untuk mengasumsikan peran dapat membuat dan melihat instans yang ditandai dengan access-project = Lightning. Selain itu, anggota tim dapat berpindah dari pryek Heart ke proyek Lightning. Administrator IAM menugaskan pengguna ke peran IAM yang berbeda. Tidak perlu mengubah kebijakan izin.

  • Izin granular dimungkinkan menggunakan ABAC. Saat Anda membuat kebijakan, memberikan hak istimewa terkecil adalah praktik terbaik. Menggunakan RBAC tradisional, Anda harus menyusun kebijakan yang memungkinkan akses hanya ke sumber daya tertentu. Namun, ketika Anda menggunakan ABAC, Anda dapat mengizinkan tindakan pada semua sumber daya, tetapi hanya jika tanda sumber daya cocok dengan tanda prinsipal.

  • Gunakan atribut karyawan dari direktori perusahaan Anda dengan ABAC. Anda dapat mengonfigurasi penyedia SAFL atau OIDC Anda untuk meneruskan tag sesi ke. AWS Ketika karyawan Anda bergabung AWS, atribut mereka diterapkan pada AWS prinsipal yang dihasilkan. Kemudian, Anda dapat menggunakan ABAC untuk mengizinkan atau menolak izin berdasarkan atribut tersebut.

Untuk tutorial terperinci yang menunjukkan cara menggunakan ABAC di AWS, lihat. Tutorial IAM: Tentukan izin untuk mengakses AWS sumber daya berdasarkan tag