Kontrol autentikasi dan akses untuk AWS CodeCommit - AWS CodeCommit

AWS CodeCommit tidak lagi tersedia untuk pelanggan baru. Pelanggan yang sudah ada AWS CodeCommit dapat terus menggunakan layanan seperti biasa. Pelajari lebih lanjut”

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

Kontrol autentikasi dan akses untuk AWS CodeCommit

Akses ke AWS CodeCommit membutuhkan kredensyal. Kredensi tersebut harus memiliki izin untuk mengakses AWS sumber daya, seperti CodeCommit repositori, dan IAM pengguna Anda, yang Anda gunakan untuk mengelola kredensi Git Anda atau kunci SSH publik yang Anda gunakan untuk membuat koneksi Git. Bagian berikut memberikan rincian tentang bagaimana Anda dapat menggunakan AWS Identity and Access Management (IAM) dan CodeCommit untuk membantu mengamankan akses ke sumber daya Anda:

Autentikasi

Karena CodeCommit repositori berbasis Git dan mendukung fungsionalitas dasar Git, termasuk kredensi Git, kami sarankan Anda menggunakan pengguna saat bekerja dengannya. IAM CodeCommit Anda dapat mengakses CodeCommit dengan tipe identitas lain, tetapi jenis identitas lainnya tunduk pada batasan, seperti yang dijelaskan di bawah ini.

Jenis identitas:

  • IAMpengguna - IAMPengguna adalah identitas dalam akun Amazon Web Services Anda yang memiliki izin khusus khusus. Misalnya, IAM pengguna dapat memiliki izin untuk membuat dan mengelola kredensi Git untuk mengakses repositori. CodeCommit Ini adalah tipe pengguna yang disarankan untuk bekerja dengan CodeCommit. Anda dapat menggunakan nama IAM pengguna dan kata sandi untuk masuk untuk mengamankan AWS halaman web seperti AWS Management Console, Forum AWS Diskusi, atau AWS Support Pusat.

    Anda dapat membuat kredensi Git atau mengaitkan kunci SSH publik dengan IAM pengguna Anda, atau Anda dapat menginstal dan mengkonfigurasi. git-remote-codecommit Ini adalah cara termudah untuk mengatur Git agar berfungsi dengan CodeCommit repositori Anda. Dengan kredensi Git, Anda menghasilkan nama pengguna dan kata sandi statis di. IAM Anda kemudian menggunakan kredensi ini untuk HTTPS koneksi dengan Git dan alat pihak ketiga apa pun yang mendukung otentikasi nama pengguna dan kata sandi Git. Dengan SSH koneksi, Anda membuat file kunci publik dan pribadi di mesin lokal Anda yang Git dan CodeCommit gunakan untuk SSH otentikasi. Anda mengaitkan kunci publik dengan IAM pengguna Anda, dan Anda menyimpan kunci pribadi di komputer lokal Anda. git-remote-codecommitmemperluas Git itu sendiri, dan tidak memerlukan pengaturan kredensi Git untuk pengguna.

    Selain itu, Anda juga dapat membuat access key untuk setiap pengguna. Gunakan kunci akses saat Anda mengakses AWS layanan secara terprogram, baik melalui salah satu AWS SDKs atau dengan menggunakan AWS Command Line Interface ()AWS CLI. CLIAlat SDK dan menggunakan kunci akses untuk menandatangani permintaan Anda secara kriptografis. Jika Anda tidak menggunakan AWS alat, Anda harus menandatangani permintaan sendiri. CodeCommit mendukung Signature Version 4, protokol untuk mengautentikasi permintaan masukAPI. Untuk informasi selengkapnya tentang melakukan autentikasi permintaan, lihat Proses Penandatanganan Tanda Tangan Versi 4 dalam Referensi Umum AWS.

  • Pengguna root akun Amazon Web Services — Saat mendaftar AWS, Anda memberikan alamat email dan kata sandi yang terkait dengan akun Amazon Web Services Anda. Ini adalah kredensial root Anda, dan memberikan akses penuh ke semua sumber daya AWS Anda. Beberapa CodeCommit fitur tidak tersedia untuk pengguna akun root. Selain itu, satu-satunya cara untuk menggunakan Git dengan akun root Anda adalah dengan menginstal dan mengkonfigurasi git-remote-codecommit (disarankan) atau untuk mengkonfigurasi pembantu AWS kredenal, yang disertakan dengan file. AWS CLI Anda tidak dapat menggunakan kredensi Git atau pasangan kunci SSH publik-pribadi dengan pengguna akun root Anda. Untuk alasan ini, kami tidak menyarankan menggunakan pengguna akun root Anda saat berinteraksi dengan CodeCommit.

    penting

    Untuk alasan keamanan, kami menyarankan Anda menggunakan kredensi root hanya untuk membuat pengguna administrator, yang merupakan IAMpengguna dengan izin penuh ke akun Anda. AWS Kemudian, Anda dapat menggunakan pengguna administrator ini untuk membuat IAM pengguna dan peran lain dengan izin terbatas. Untuk informasi selengkapnya, lihat Praktik IAM Terbaik dan Membuat Pengguna dan Grup Admin di Panduan IAM Pengguna.

  • IAMPusat Identitas dan pengguna di Pusat IAM Identitas — AWS IAM Identity Center memperluas kemampuan AWS Identity and Access Management untuk menyediakan tempat sentral yang menyatukan administrasi pengguna dan akses mereka ke Akun AWS dan aplikasi cloud. Meskipun direkomendasikan sebagai praktik terbaik bagi sebagian besar pengguna yang bekerja dengan AWS, Pusat IAM Identitas saat ini tidak menyediakan mekanisme untuk kredenal Git atau pasangan SSH kunci. Pengguna ini dapat menginstal dan mengonfigurasi git-remote-codecommit untuk mengkloning CodeCommit repositori secara lokal, tetapi tidak semua lingkungan pengembangan terintegrasi (IDEs) mendukung kloning, mendorong, atau menarik. git-remote-codecommit

    Sebagai praktik terbaik, mewajibkan pengguna manusia, termasuk pengguna yang memerlukan akses administrator, untuk menggunakan federasi dengan penyedia identitas untuk mengakses Layanan AWS dengan menggunakan kredensi sementara.

    Identitas federasi adalah pengguna dari direktori pengguna perusahaan Anda, penyedia identitas web, direktori Pusat Identitas AWS Directory Service, atau pengguna mana pun yang mengakses Layanan AWS dengan menggunakan kredensi yang disediakan melalui sumber identitas. Ketika identitas federasi mengakses Akun AWS, mereka mengambil peran, dan peran memberikan kredensi sementara.

    Untuk manajemen akses terpusat, kami sarankan Anda menggunakan AWS IAM Identity Center. Anda dapat membuat pengguna dan grup di Pusat IAM Identitas, atau Anda dapat menghubungkan dan menyinkronkan ke sekumpulan pengguna dan grup di sumber identitas Anda sendiri untuk digunakan di semua aplikasi Akun AWS dan aplikasi Anda. Untuk informasi tentang Pusat IAM Identitas, lihat Apa itu Pusat IAM Identitas? dalam AWS IAM Identity Center User Guide.

  • IAMperan — Seperti IAM pengguna, IAMperan adalah IAM identitas yang dapat Anda buat di akun Anda untuk memberikan izin tertentu.

    IAMPeran adalah identitas dalam diri Anda Akun AWS yang memiliki izin khusus. Ini mirip dengan IAM pengguna, tetapi tidak terkait dengan orang tertentu. Untuk mengambil IAM peran sementara di dalam AWS Management Console, Anda dapat beralih dari pengguna ke IAM peran (konsol). Anda dapat mengambil peran dengan memanggil AWS CLI atau AWS API operasi atau dengan menggunakan kustomURL. Untuk informasi selengkapnya tentang metode penggunaan peran, lihat Metode untuk mengambil peran dalam Panduan IAM Pengguna.

    IAMperan dengan kredensi sementara berguna dalam situasi berikut:

    • Akses pengguna terfederasi – Untuk menetapkan izin ke identitas terfederasi, Anda membuat peran dan menentukan izin untuk peran tersebut. Ketika identitas terfederasi mengautentikasi, identitas tersebut terhubung dengan peran dan diberi izin yang ditentukan oleh peran. Untuk informasi tentang peran untuk federasi, lihat Membuat peran untuk Penyedia Identitas pihak ketiga di Panduan IAM Pengguna. Jika Anda menggunakan Pusat IAM Identitas, Anda mengonfigurasi set izin. Untuk mengontrol apa yang dapat diakses identitas Anda setelah diautentikasi, Pusat IAM Identitas mengkorelasikan izin yang disetel ke peran. IAM Untuk informasi tentang set izin, lihat Set izin dalam Panduan Pengguna AWS IAM Identity Center .

    • Izin IAM pengguna sementara — IAM Pengguna atau peran dapat mengambil IAM peran untuk sementara mengambil izin yang berbeda untuk tugas tertentu.

    • Akses lintas akun — Anda dapat menggunakan IAM peran untuk memungkinkan seseorang (prinsipal tepercaya) di akun lain mengakses sumber daya di akun Anda. Peran adalah cara utama untuk memberikan akses lintas akun. Namun, dengan beberapa Layanan AWS, Anda dapat melampirkan kebijakan langsung ke sumber daya (alih-alih menggunakan peran sebagai proxy). Untuk mempelajari perbedaan antara peran dan kebijakan berbasis sumber daya untuk akses lintas akun, lihat Akses sumber daya lintas akun di IAM Panduan Pengguna. IAM

    • Akses lintas layanan — Beberapa Layanan AWS menggunakan fitur lain Layanan AWS. Misalnya, saat Anda melakukan panggilan dalam suatu layanan, biasanya layanan tersebut menjalankan aplikasi di Amazon EC2 atau menyimpan objek di Amazon S3. Sebuah layanan mungkin melakukannya menggunakan izin prinsipal yang memanggil, menggunakan peran layanan, atau peran terkait layanan.

      • Sesi akses teruskan (FAS) — Saat Anda menggunakan IAM pengguna atau peran untuk melakukan tindakan AWS, Anda dianggap sebagai prinsipal. Ketika Anda menggunakan beberapa layanan, Anda mungkin melakukan sebuah tindakan yang kemudian menginisiasi tindakan lain di layanan yang berbeda. FASmenggunakan izin dari pemanggilan utama Layanan AWS, dikombinasikan dengan permintaan Layanan AWS untuk membuat permintaan ke layanan hilir. FASPermintaan hanya dibuat ketika layanan menerima permintaan yang memerlukan interaksi dengan orang lain Layanan AWS atau sumber daya untuk menyelesaikannya. Dalam hal ini, Anda harus memiliki izin untuk melakukan kedua tindakan tersebut. Untuk detail kebijakan saat membuat FAS permintaan, lihat Meneruskan sesi akses.

      • Peran layanan — Peran layanan adalah IAMperan yang diasumsikan layanan untuk melakukan tindakan atas nama Anda. IAMAdministrator dapat membuat, memodifikasi, dan menghapus peran layanan dari dalamIAM. Untuk informasi selengkapnya, lihat Membuat peran untuk mendelegasikan izin ke Layanan AWS dalam IAMPanduan Pengguna.

      • Peran terkait layanan — Peran terkait layanan adalah jenis peran layanan yang ditautkan ke. Layanan AWS Layanan tersebut dapat menjalankan peran untuk melakukan tindakan atas nama Anda. Peran terkait layanan muncul di Anda Akun AWS dan dimiliki oleh layanan. IAMAdministrator dapat melihat, tetapi tidak mengedit izin untuk peran terkait layanan.

    • Aplikasi yang berjalan di Amazon EC2 — Anda dapat menggunakan IAM peran untuk mengelola kredenal sementara untuk aplikasi yang berjalan pada EC2 instance dan membuat AWS CLI atau AWS API meminta. Ini lebih baik untuk menyimpan kunci akses dalam EC2 instance. Untuk menetapkan AWS peran ke EC2 instance dan membuatnya tersedia untuk semua aplikasinya, Anda membuat profil instance yang dilampirkan ke instance. Profil instance berisi peran dan memungkinkan program yang berjalan pada EC2 instance untuk mendapatkan kredensi sementara. Untuk informasi selengkapnya, lihat Menggunakan IAM peran untuk memberikan izin ke aplikasi yang berjalan di EC2 instans Amazon di IAMPanduan Pengguna.

    catatan

    Anda tidak dapat menggunakan kredensi Git atau pasangan kunci SSH publik-pribadi dengan pengguna federasi. Selain itu, preferensi pengguna tidak tersedia untuk pengguna gabungan. Untuk informasi tentang cara menyiapkan koneksi menggunakan akses gabungan , lihat Langkah-langkah penyiapan untuk koneksi HTTPS keAWS CodeCommitbersamagit-remote-codecommit.

Kontrol akses

Anda dapat memiliki kredensi yang valid untuk mengautentikasi permintaan Anda, tetapi kecuali Anda memiliki izin, Anda tidak dapat membuat atau mengakses sumber daya. CodeCommit Misalnya, Anda harus memiliki izin untuk melihat repositori, kode dorongan, membuat dan mengelola kredensials Git, dan sebagainya.

Bagian berikut menjelaskan cara mengelola izin untuk CodeCommit. Anda sebaiknya membaca gambaran umum terlebih dahulu.

Ikhtisar mengelola izin akses ke sumber daya Anda CodeCommit

Setiap AWS sumber daya dimiliki oleh akun Amazon Web Services. Izin untuk membuat, dan mengakses sumber daya diatur oleh kebijakan izin. Administrator akun dapat melampirkan kebijakan izin ke IAM identitas (yaitu, pengguna, grup, dan peran). Beberapa layanan, seperti AWS Lambda, juga mendukung melampirkan kebijakan izin ke sumber daya.

catatan

Administrator akun (atau pengguna administrator) adalah pengguna dengan hak akses administrator. Untuk informasi selengkapnya, lihat Praktik IAM Terbaik di Panduan IAM Pengguna.

Ketika memberikan izin, Anda memutuskan orang yang mendapatkan izin, sumber daya yang mereka dapatkan izinnya, dan tindakan khusus yang ingin Anda izinkan di sumber daya tersebut.

CodeCommit sumber daya dan operasi

Di CodeCommit, sumber daya utama adalah repositori. Setiap sumber daya memiliki Nama Sumber Daya Amazon (ARN) unik yang terkait dengannya. Dalam kebijakan, Anda menggunakan Amazon Resource Name (ARN) untuk mengidentifikasi sumber daya yang berlaku untuk kebijakan tersebut. Untuk informasi selengkapnyaARNs, lihat Amazon Resource Names (ARN) dan Ruang Nama AWS Layanan di. Referensi Umum Amazon Web Services CodeCommit saat ini tidak mendukung jenis sumber daya lain, yang disebut sebagai subsumber daya.

Tabel berikut menjelaskan cara menentukan CodeCommit sumber daya.

Jenis Sumber Daya ARNFormat
Repositori

arn:aws:codecommit:region:account-id:repository-name

Semua CodeCommit repositori

arn:aws:codecommit:*

Semua CodeCommit repositori yang dimiliki oleh akun yang ditentukan dalam yang ditentukan Wilayah AWS

arn:aws:codecommit:region:account-id:*

catatan

Sebagian besar AWS layanan memperlakukan titik dua (:) atau garis miring (/) ARNs sebagai karakter yang sama. Namun, CodeCommit membutuhkan kecocokan yang tepat dalam pola dan aturan sumber daya. Saat membuat pola acara, pastikan untuk menggunakan ARN karakter yang benar sehingga cocok dengan ARN sintaks di sumber daya.

Misalnya, Anda dapat menunjukkan repositori tertentu (MyDemoRepo) dalam pernyataan Anda menggunakan ARN sebagai berikut:

"Resource": "arn:aws:codecommit:us-west-2:111111111111:MyDemoRepo"

Untuk menentukan semua repositori milik akun tertentu, gunakan karakter wildcard (*) sebagai berikut:

"Resource": "arn:aws:codecommit:us-west-2:111111111111:*"

Untuk menentukan semua sumber daya, atau jika API tindakan tertentu tidak mendukungARNs, gunakan karakter wildcard (*) dalam Resource elemen sebagai berikut:

"Resource": "*"

Anda juga dapat menggunakan karakter wildcard (*) untuk menentukan semua sumber daya yang cocok dengan bagian dari nama repositori. Misalnya, berikut ini ARN menentukan CodeCommit repositori apa pun yang dimulai dengan nama MyDemo dan yang terdaftar ke akun 111111111111 Amazon Web Services di: us-east-2 Wilayah AWS

arn:aws:codecommit:us-east-2:111111111111:MyDemo*

Untuk daftar operasi yang tersedia yang bekerja dengan CodeCommit sumber daya, lihatReferensi izin CodeCommit.

Memahami kepemilikan sumber daya

Akun Amazon Web Services memiliki sumber daya yang dibuat dalam akun, terlepas dari orang yang membuat sumber daya tersebut. Secara khusus, pemilik sumber daya adalah akun Amazon Web Services dari entitas utama (yaitu, akun root, IAM pengguna, atau IAM peran) yang mengautentikasi permintaan pembuatan sumber daya. Contoh berikut menggambarkan cara kerjanya:

  • Jika Anda membuat IAM pengguna di akun Amazon Web Services dan memberikan izin untuk membuat CodeCommit sumber daya kepada pengguna tersebut, pengguna dapat membuat CodeCommit sumber daya. Namun, akun Amazon Web Services Anda, yang menjadi milik pengguna, memiliki CodeCommit sumber daya.

  • Jika Anda menggunakan kredensi akun root dari akun Amazon Web Services Anda untuk membuat aturan, akun Amazon Web Services Anda adalah pemilik sumber daya. CodeCommit

  • Jika Anda membuat IAM peran di akun Amazon Web Services dengan izin untuk membuat CodeCommit sumber daya, siapa pun yang dapat mengambil peran tersebut dapat membuat CodeCommit sumber daya. Akun Amazon Web Services Anda, tempat peran tersebut berada, memiliki CodeCommit sumber daya.

Mengelola akses ke sumber daya

Untuk mengelola akses ke AWS sumber daya, Anda menggunakan kebijakan izin. Kebijakan izin menjelaskan siapa yang memiliki akses ke suatu objek. Bagian berikut menjelaskan pilihan yang tersedia untuk membuat kebijakan izin.

catatan

Bagian ini membahas penggunaan IAM dalam konteks. CodeCommit Itu tidak memberikan informasi rinci tentang IAM layanan. Untuk informasi lebih lanjut tentangIAM, lihat Apa ituIAM? dalam IAMUser Guide. Untuk informasi tentang sintaks IAM kebijakan dan deskripsi, lihat Referensi IAM Kebijakan di IAMPanduan Pengguna.

Kebijakan izin yang dilampirkan pada IAM identitas disebut sebagai kebijakan berbasis identitas (kebijakan). IAM Kebijakan izin yang terlampir pada sumber daya disebut sebagai kebijakan berbasis sumber daya. Saat ini, hanya CodeCommit mendukung kebijakan berbasis identitas (kebijakan)IAM.

Kebijakan berbasis identitas (kebijakan IAM)

Untuk mengelola akses ke AWS sumber daya, Anda melampirkan kebijakan izin ke IAM identitas. Di CodeCommit, Anda menggunakan kebijakan berbasis identitas untuk mengontrol akses ke repositori. Misalnya, Anda dapat melakukan hal berikut:

  • Lampirkan kebijakan izin ke pengguna atau grup di akun Anda — Untuk memberikan izin pengguna untuk melihat CodeCommit sumber daya di CodeCommit konsol, lampirkan kebijakan izin berbasis identitas ke pengguna atau grup tempat pengguna tersebut berada.

  • Lampirkan kebijakan izin untuk peran (untuk memberikan izin lintas akun) - Delegasi, seperti ketika Anda ingin memberikan akses lintas akun, melibatkan pengaturan kepercayaan antara akun yang memiliki sumber daya (rekening terpercaya), dan akun yang berisi pengguna yang perlu mengakses sumber daya (rekening terpercaya). Kebijakan izin memberikan izin yang diperlukan pengguna suatu peran untuk melaksanakan tugas yang diinginkan pada sumber daya. Kebijakan kepercayaan menentukan akun terpercaya mana yang diizinkan untuk memberikan izin kepada pengguna untuk menjalankan peran tersebut. Untuk informasi selengkapnya, lihat IAMSyarat dan Konsep.

    Untuk memberikan izin lintas akun, lampirkan kebijakan izin berbasis identitas ke peran. IAM Misalnya, administrator di Akun A dapat membuat peran untuk memberikan izin lintas akun ke akun Amazon Web Services lainnya (misalnya, Akun B) atau AWS layanan sebagai berikut:

    1. Akun Administrator membuat IAM peran dan melampirkan kebijakan izin ke peran yang memberikan izin pada sumber daya di Akun A.

    2. Administrator akun A melampirkan kebijakan kepercayaan ke peran yang mengidentifikasi Akun B sebagai prinsipal yang dapat mengambil peran tersebut.

    3. Administrator Akun B kemudian dapat mendelegasikan izin untuk mengambil peran kepada setiap pengguna di Akun B. Melakukan hal ini memungkinkan pengguna di Akun B untuk membuat atau mengakses sumber daya di Akun A. Jika Anda ingin memberikan izin AWS layanan untuk mengambil peran tersebut, prinsipal dalam kebijakan kepercayaan juga dapat menjadi prinsipal AWS layanan. Untuk informasi selengkapnya, lihat Delegasi dalam IAMSyarat dan Konsep.

    Untuk informasi selengkapnya tentang penggunaan IAM untuk mendelegasikan izin, lihat Manajemen Akses di IAMPanduan Pengguna.

Contoh kebijakan berikut memungkinkan pengguna untuk membuat cabang dalam repositori bernama MyDemoRepo:

{ "Version": "2012-10-17", "Statement" : [ { "Effect" : "Allow", "Action" : [ "codecommit:CreateBranch" ], "Resource" : "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo" } ] }

Untuk membatasi panggilan dan sumber daya yang dapat diakses pengguna di akun Anda, buat IAM kebijakan tertentu, lalu lampirkan kebijakan tersebut ke IAM pengguna. Untuk informasi selengkapnya tentang cara membuat IAM peran dan menjelajahi contoh pernyataan IAM kebijakan CodeCommit, lihatContoh kebijakan identitas yang dikelola pelanggan.

Kebijakan berbasis sumber daya

Layanan lain, seperti Amazon S3, juga men-support kebijakan izin berbasis sumber daya. Misalnya, Anda dapat melampirkan kebijakan berbasis sumber daya ke bucket S3 untuk mengelola izin akses ke bucket tersebut. CodeCommit tidak mendukung kebijakan berbasis sumber daya, tetapi Anda dapat menggunakan tag untuk mengidentifikasi sumber daya, yang kemudian dapat Anda gunakan dalam kebijakan. IAM Untuk contoh kebijakan berbasis tag, lihat Kebijakan berbasis identitas (kebijakan IAM).

Pelingkupan sumber daya di CodeCommit

Di CodeCommit, Anda dapat membuat cakupan kebijakan dan izin berbasis identitas ke sumber daya, seperti yang dijelaskan dalam. CodeCommit sumber daya dan operasi Namun, Anda tidak dapat membuat cakupan izin ListRepositories ke sumber daya. Alih-alih, Anda harus membuat cakupan untuk semua sumber daya (menggunakan * wildcard). Jika tidak, tindakan tersebut akan gagal.

Semua CodeCommit izin lainnya dapat dicakup ke sumber daya.

Menentukan elemen kebijakan: sumber daya, tindakan, efek, dan prinsipal

Anda dapat membuat kebijakan untuk mengizinkan atau menolak akses pengguna ke sumber daya, atau mengizinkan atau menolak pengguna untuk mengambil tindakan spesifik pada sumber daya tersebut. CodeCommit mendefinisikan satu set API operasi publik yang menentukan bagaimana pengguna bekerja dengan layanan, apakah itu melalui CodeCommit konsol, SDKs AWS CLI, atau dengan langsung memanggil merekaAPIs. Untuk memberikan izin untuk API operasi ini, CodeCommit tentukan serangkaian tindakan yang dapat Anda tentukan dalam kebijakan.

Beberapa API operasi dapat memerlukan izin untuk lebih dari satu tindakan. Untuk informasi selengkapnya tentang sumber daya dan API operasi, lihat CodeCommit sumber daya dan operasi danReferensi izin CodeCommit.

Berikut ini adalah elemen kebijakan dasar:

  • Sumber Daya — Untuk mengidentifikasi sumber daya yang berlaku kebijakan, Anda menggunakan Nama Sumber Daya Amazon (ARN). Untuk informasi selengkapnya, lihat CodeCommit sumber daya dan operasi.

  • Tindakan – Untuk mengidentifikasi operasi sumber daya yang ingin Anda izinkan atau tolak, Anda menggunakan kata kunci tindakan. Misalnya, tergantung pada yang ditentukanEffect, codecommit:GetBranch izin mengizinkan atau menolak pengguna untuk melakukan GetBranch operasi, yang mendapatkan detail tentang cabang di CodeCommit repositori.

  • Pengaruh – Anda menetapkan pengaruh, baik mengizinkan atau menolak, ketika pengguna meminta tindakan tertentu. Jika Anda tidak secara eksplisit memberikan akses ke (mengizinkan) sumber daya, akses akan ditolak secara implisit. Anda juga dapat secara eksplisit menolak akses ke sumber daya untuk memastikan bahwa pengguna tidak dapat mengaksesnya, meskipun kebijakan yang berbeda memberikan akses.

  • Principal — Dalam kebijakan berbasis identitas (IAMkebijakan), satu-satunya jenis kebijakan yang CodeCommit mendukung, pengguna yang melekat pada kebijakan tersebut adalah prinsipal implisit.

Untuk mempelajari lebih lanjut tentang sintaks IAM kebijakan, lihat Referensi IAM Kebijakan di Panduan IAM Pengguna.

Untuk tabel yang menunjukkan semua CodeCommit API tindakan dan sumber daya yang mereka terapkan, lihatReferensi izin CodeCommit.

Menentukan kondisi dalam kebijakan

Ketika Anda memberikan izin, Anda menggunakan bahasa kebijakan akses IAM untuk menentukan kondisi di mana kebijakan harus diterapkan. Misalnya, Anda mungkin ingin kebijakan diterapkan hanya setelah tanggal tertentu. Untuk informasi selengkapnya tentang menentukan kondisi dalam bahasa kebijakan, lihat Tata Bahasa Kondisi dan Kebijakan di IAMPanduan Pengguna.

Untuk menyatakan kondisi, Anda menggunakan kunci kondisi standar. Tidak ada kunci kondisi khusus untuk CodeCommit. Namun, ada tombol kondisi AWS-wide yang dapat Anda gunakan sesuai kebutuhan. Untuk daftar lengkap tombol AWS-wide, lihat Kunci yang Tersedia untuk Ketentuan di Panduan IAM Pengguna.