Contoh Kasus IAM Roles

By

Ada dua cara untuk menggunakan AWS IAM Role:

  • Konsol IAM: Ketika Pengguna IAM yang bekerja di Konsol IAM dan ingin menggunakan Role tersebut, maka mereka mengakses izin peran tersebut sementara. Pengguna IAM menyerahkan izin asli mereka dan mengambil izin peran. Ketika Pengguna IAM keluar dari peran, izin asli mereka dipulihkan.
  • Akses terprogram: Layanan AWS seperti instance Amazon EC2 dapat menggunakan role dengan meminta kredensial keamanan sementara menggunakan permintaan terprogram ke AWS.

Peran IAM dapat digunakan dengan cara-cara berikut:

  • Pengguna IAM: Peran IAM digunakan untuk memberikan izin kepada Pengguna IAM Anda untuk mengakses sumber daya AWS dalam akun Anda sendiri atau yang berbeda. Pengguna IAM dapat menggunakan izin yang melekat pada peran menggunakan IAM Console. Peran juga mencegah akses tidak disengaja ke sumber daya AWS yang sensitif.
  • Aplikasi dan Layanan: Anda dapat memberikan akses izin yang dilampirkan dengan peran ke aplikasi dan layanan dengan memanggil fungsi API AssumeRole. Fungsi AssumeRole mengembalikan kredensial keamanan sementara yang terkait dengan peran. Aplikasi dan layanan hanya dapat mengambil tindakan yang diizinkan oleh peran tersebut. Aplikasi tidak dapat keluar dari peran seperti yang dilakukan Pengguna IAM di Konsol, alih-alih berhenti menggunakan kredensial sementara dan melanjutkan kredensial aslinya.
  • Pengguna Federasi: Pengguna Federasi dapat masuk menggunakan kredensial sementara yang disediakan oleh penyedia identitas. AWS menyediakan IDP (penyedia identitas) dan kredensial sementara yang terkait dengan peran kepada pengguna. Kredensial memberikan akses izin kepada pengguna.

Berikut ini adalah contoh kasus penggunaan Role:

  • Beralih ke role sebagai Pengguna IAM di satu akun AWS untuk mengakses sumber daya di akun lain yang Anda miliki.
    • Anda dapat memberikan izin kepada Pengguna IAM Anda untuk berpindah peran dalam akun AWS Anda atau akun lain. Misalnya, Anda memiliki instance Amazon EC2 yang sangat penting untuk organisasi Anda. Alih-alih secara langsung memberikan izin kepada pengguna untuk menghentikan instance, Anda dapat membuat role dengan hak istimewa yang memungkinkan administrator untuk beralih ke peran ketika mereka harus menghentikan instance.
    • Anda harus memberikan izin kepada pengguna untuk mengambil role secara eksplisit.
    • role otentikasi multi-faktor dapat ditambahkan ke peran sehingga hanya pengguna yang masuk dengan MFA yang dapat menggunakan peran tersebut.
    • Peran mencegah perubahan yang tidak disengaja pada sumber daya sensitif, terutama jika Anda menggabungkannya dengan audit sehingga peran hanya dapat digunakan saat dibutuhkan.
    • Pengguna IAM dalam satu akun dapat beralih ke peran di akun yang sama atau berbeda. Dengan peran, pengguna dapat mengakses sumber daya yang diizinkan oleh peran. Saat pengguna beralih ke peran, maka izin asli mereka diambil. Jika pengguna keluar dari peran, izin asli mereka dipulihkan.
  • Memberikan akses ke layanan AWS
    • Layanan AWS menggunakan peran untuk mengakses sumber daya AWS.
    • Setiap layanan berbeda dalam bagaimana ia menggunakan peran dan bagaimana peran tersebut diberikan ke layanan.
    • Misalkan layanan AWS seperti contoh Amazon EC2 yang menjalankan aplikasi Anda, ingin membuat permintaan ke sumber daya AWS seperti ember Amazon S3, layanan harus memiliki kredensial keamanan untuk mengakses sumber daya. Jika Anda menanamkan kredensial keamanan langsung ke instance, maka mendistribusikan kredensial ke beberapa instance menciptakan risiko keamanan. Untuk mengatasi masalah seperti itu, Anda bisa membuat role yang ditugaskan ke instance Amazon EC2 yang memberikan izin untuk mengakses sumber daya.
  • Memberikan akses ke user terotentikasi secara eksternal.
    Terkadang pengguna memiliki identitas di luar AWS seperti di direktori perusahaan Anda. Jika pengguna tersebut ingin bekerja dengan sumber daya AWS, maka mereka harus mengetahui kredensial keamanan. Dalam situasi seperti itu, kita dapat menggunakan peran untuk menentukan izin untuk penyedia identitas pihak ketiga (IDP).

    • Federasi berbasis SAML
      SAML 2.0 (Security Assertion Markup Language 2.0) adalah kerangka kerja terbuka yang digunakan banyak penyedia identitas. SAML menyediakan pengguna dengan sistem masuk tunggal gabungan ke Konsol Manajemen AWS, sehingga pengguna dapat masuk ke Konsol Manajemen AWS.
      Cara kerja federasi berbasis SAML
    • Federasi identitas web
      Misalkan Anda membuat aplikasi seluler yang mengakses sumber daya AWS seperti game yang berjalan di perangkat seluler, tetapi informasinya disimpan menggunakan Amazon S3 dan DynamoDB.
      Saat Anda membuat aplikasi seperti itu, Anda perlu membuat permintaan ke layanan AWS yang harus ditandatangani dengan kunci akses AWS. Namun, disarankan untuk tidak menggunakan kredensial AWS jangka panjang, bahkan dalam bentuk terenkripsi. Aplikasi harus meminta kredensial keamanan sementara yang dibuat secara dinamis saat dibutuhkan dengan menggunakan federasi identitas web. Kredensial keamanan sementara ini akan dipetakan ke peran yang memiliki izin yang diperlukan aplikasi untuk melakukan tugas.
      Dengan federasi identitas web, pengguna tidak memerlukan kode masuk khusus atau identitas pengguna. Pengguna dapat login menggunakan penyedia identitas eksternal seperti login dengan Amazon, Facebook, Google atau OpenID lainnya. Setelah masuk, pengguna mendapat token otentikasi, dan mereka bertukar token otentikasi untuk menerima kredensial keamanan sementara.
  • Memberikan akses ke pihak ketiga
    Ketika pihak ketiga ingin mengakses sumber daya AWS, maka Anda dapat menggunakan peran untuk mendelegasikan akses ke mereka. Peran IAM memberikan pihak ketiga ini untuk mengakses sumber daya AWS tanpa berbagi kredensial keamanan.
    Pihak ketiga memberikan informasi berikut untuk membuat peran:

    • Pihak ketiga memberikan ID akun yang berisi Pengguna IAM untuk menggunakan role Anda. Anda perlu menentukan ID akun AWS sebagai prinsipal saat menentukan kebijakan kepercayaan untuk role tersebut.
    • ID eksternal pihak ketiga digunakan untuk mengaitkan dengan role. Anda menentukan ID eksternal untuk menentukan kebijakan kepercayaan role.
    • Izin tersebut digunakan oleh pihak ketiga untuk mengakses sumber daya AWS. Izin terkait dengan role yang dibuat saat Anda menetapkan kebijakan kepercayaan. Kebijakan menentukan tindakan apa yang dapat mereka ambil dan sumber daya apa yang dapat mereka gunakan.

Leave a Comment