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.
Identity and Access Management untuk AWS CodeCommit
AWS Identity and Access Management (IAM) adalah Layanan AWS yang membantu administrator mengontrol akses ke AWS sumber daya dengan aman. Administrator IAM mengontrol siapa yang dapat diautentikasi (masuk) dan diberi wewenang (memiliki izin) untuk menggunakan sumber daya. CodeCommit IAM adalah Layanan AWS yang dapat Anda gunakan tanpa biaya tambahan.
Topik
Audiens
Cara Anda menggunakan AWS Identity and Access Management (IAM) berbeda berdasarkan peran Anda:
-
Pengguna layanan - meminta izin dari administrator Anda jika Anda tidak dapat mengakses fitur (lihatMemecahkan masalah AWS CodeCommit identitas dan akses)
-
Administrator layanan - menentukan akses pengguna dan mengirimkan permintaan izin (lihatBagaimana AWS CodeCommit bekerja dengan IAM)
-
Administrator IAM - menulis kebijakan untuk mengelola akses (lihatAWS CodeCommit contoh kebijakan berbasis identitas)
Mengautentikasi dengan identitas
Otentikasi adalah cara Anda masuk AWS menggunakan kredensi identitas Anda. Anda harus diautentikasi sebagai Pengguna root akun AWS, pengguna IAM, atau dengan mengasumsikan peran IAM.
Anda dapat masuk sebagai identitas federasi menggunakan kredensional dari sumber identitas seperti AWS IAM Identity Center (Pusat Identitas IAM), otentikasi masuk tunggal, atau kredensional. Google/Facebook Untuk informasi selengkapnya tentang masuk, lihat Cara masuk ke Panduan AWS Sign-In Pengguna Anda Akun AWS.
Untuk akses terprogram, AWS sediakan SDK dan CLI untuk menandatangani permintaan secara kriptografis. Untuk informasi selengkapnya, lihat Versi AWS Tanda Tangan 4 untuk permintaan API di Panduan Pengguna IAM.
Akun AWS pengguna root
Saat Anda membuat Akun AWS, Anda mulai dengan satu identitas masuk yang disebut pengguna Akun AWS root yang memiliki akses lengkap ke semua Layanan AWS dan sumber daya. Kami sangat menyarankan agar Anda tidak menggunakan pengguna root untuk tugas sehari-hari. Untuk tugas yang memerlukan kredensil pengguna root, lihat Tugas yang memerlukan kredensil pengguna root di Panduan Pengguna IAM.
Pengguna dan grup IAM
Pengguna IAM adalah identitas dengan izin khusus untuk satu orang atau aplikasi. Sebaiknya gunakan kredensi sementara alih-alih pengguna IAM dengan kredensial jangka panjang. Untuk informasi selengkapnya, lihat Mewajibkan pengguna manusia untuk menggunakan federasi dengan penyedia identitas untuk mengakses AWS menggunakan kredensi sementara di Panduan Pengguna IAM.
Grup IAM menentukan kumpulan pengguna IAM dan membuat izin lebih mudah dikelola untuk kumpulan pengguna yang besar. Untuk informasi selengkapnya, lihat Kasus penggunaan untuk pengguna IAM di Panduan Pengguna IAM.
IAM role
Peran IAM adalah identitas dengan izin khusus yang menyediakan kredensi sementara. Anda dapat mengambil peran dengan beralih dari pengguna ke peran IAM (konsol) atau dengan memanggil operasi AWS CLI atau AWS API. Untuk informasi selengkapnya, lihat Metode untuk mengambil peran dalam Panduan Pengguna IAM.
Peran IAM berguna untuk akses pengguna gabungan, izin pengguna IAM sementara, akses lintas akun, akses lintas layanan, dan aplikasi yang berjalan di Amazon. EC2 Untuk informasi selengkapnya, lihat Akses sumber daya lintas akun di IAM dalam Panduan Pengguna IAM.
Mengelola akses menggunakan kebijakan
Anda mengontrol akses AWS dengan membuat kebijakan dan melampirkannya ke AWS identitas atau sumber daya. Kebijakan menentukan izin saat dikaitkan dengan identitas atau sumber daya. AWS mengevaluasi kebijakan ini ketika kepala sekolah membuat permintaan. Sebagian besar kebijakan disimpan AWS sebagai dokumen JSON. Untuk informasi selengkapnya tentang dokumen kebijakan JSON, lihat Ringkasan kebijakan JSON di Panduan Pengguna IAM.
Menggunakan kebijakan, administrator menentukan siapa yang memiliki akses ke apa dengan mendefinisikan prinsipal mana yang dapat melakukan tindakan pada sumber daya apa, dan dalam kondisi apa.
Secara default, pengguna dan peran tidak memiliki izin. Administrator IAM membuat kebijakan IAM dan menambahkannya ke peran, yang kemudian dapat diasumsikan oleh pengguna. Kebijakan IAM menentukan izin terlepas dari metode yang digunakan untuk melakukan operasi.
Kebijakan berbasis identitas
Kebijakan berbasis identitas adalah dokumen kebijakan izin JSON yang Anda lampirkan ke identitas (pengguna, grup, atau peran). Kebijakan ini mengontrol tindakan apa yang dapat dilakukan identitas, pada sumber daya mana, dan dalam kondisi apa. Untuk mempelajari cara membuat kebijakan berbasis identitas, lihat Tentukan izin IAM kustom dengan kebijakan terkelola pelanggan dalam Panduan Pengguna IAM.
Kebijakan berbasis identitas dapat berupa kebijakan inline (disematkan langsung ke dalam satu identitas) atau kebijakan terkelola (kebijakan mandiri yang dilampirkan pada beberapa identitas). Untuk mempelajari cara memilih antara kebijakan terkelola dan sebaris, lihat Memilih antara kebijakan terkelola dan kebijakan sebaris di Panduan Pengguna IAM.
Kebijakan berbasis sumber daya
Kebijakan berbasis sumber daya adalah dokumen kebijakan JSON yang Anda lampirkan ke sumber daya. Contohnya termasuk kebijakan kepercayaan peran IAM dan kebijakan bucket Amazon S3. Dalam layanan yang mendukung kebijakan berbasis sumber daya, administrator layanan dapat menggunakannya untuk mengontrol akses ke sumber daya tertentu. Anda harus menentukan prinsipal dalam kebijakan berbasis sumber daya.
Kebijakan berbasis sumber daya merupakan kebijakan inline yang terletak di layanan tersebut. Anda tidak dapat menggunakan kebijakan AWS terkelola dari IAM dalam kebijakan berbasis sumber daya.
Daftar kontrol akses (ACLs)
Access control lists (ACLs) mengontrol prinsipal mana (anggota akun, pengguna, atau peran) yang memiliki izin untuk mengakses sumber daya. ACLs mirip dengan kebijakan berbasis sumber daya, meskipun mereka tidak menggunakan format dokumen kebijakan JSON.
Amazon S3, AWS WAF, dan Amazon VPC adalah contoh layanan yang mendukung. ACLs Untuk mempelajari selengkapnya ACLs, lihat Ringkasan daftar kontrol akses (ACL) di Panduan Pengembang Layanan Penyimpanan Sederhana Amazon.
Jenis-jenis kebijakan lain
AWS mendukung jenis kebijakan tambahan yang dapat menetapkan izin maksimum yang diberikan oleh jenis kebijakan yang lebih umum:
-
Batas izin — Tetapkan izin maksimum yang dapat diberikan oleh kebijakan berbasis identitas kepada entitas IAM. Untuk informasi selengkapnya, lihat Batas izin untuk entitas IAM di Panduan Pengguna IAM.
-
Kebijakan kontrol layanan (SCPs) — Tentukan izin maksimum untuk organisasi atau unit organisasi di AWS Organizations. Untuk informasi selengkapnya, lihat Kebijakan kontrol layanan di Panduan Pengguna AWS Organizations .
-
Kebijakan kontrol sumber daya (RCPs) — Tetapkan izin maksimum yang tersedia untuk sumber daya di akun Anda. Untuk informasi selengkapnya, lihat Kebijakan kontrol sumber daya (RCPs) di Panduan AWS Organizations Pengguna.
-
Kebijakan sesi — Kebijakan lanjutan diteruskan sebagai parameter saat membuat sesi sementara untuk peran atau pengguna gabungan. Untuk informasi selengkapnya, lihat Kebijakan sesi dalam Panduan Pengguna IAM.
Berbagai jenis kebijakan
Ketika beberapa jenis kebijakan berlaku pada suatu permintaan, izin yang dihasilkan lebih rumit untuk dipahami. Untuk mempelajari cara AWS menentukan apakah akan mengizinkan permintaan saat beberapa jenis kebijakan terlibat, lihat Logika evaluasi kebijakan di Panduan Pengguna IAM.
CodeCommit Kebijakan berbasis sumber daya
CodeCommit tidak mendukung kebijakan berbasis sumber daya.
Otorisasi berdasarkan tag CodeCommit
Anda dapat melampirkan tag ke CodeCommit sumber daya atau meneruskan tag dalam permintaan CodeCommit. Untuk mengendalikan akses berdasarkan tanda, berikan informasi tentang tanda di elemen kondisi dari kebijakan menggunakan kunci kondisi codecommit:ResourceTag/, key-nameaws:RequestTag/, atau key-nameaws:TagKeys. Untuk informasi selengkapnya tentang menandai CodeCommit sumber daya, lihatContoh 5: Tolak atau izinkan tindakan pada repositori dengan tag. Untuk informasi selengkapnya tentang strategi penandaan, lihat AWS Menandai Sumber Daya.
CodeCommit juga mendukung kebijakan berdasarkan tag sesi. Untuk informasi lebih lanjut, lihat Tanda Sesi.
Menggunakan tag untuk memberikan informasi identitas CodeCommit
CodeCommit mendukung penggunaan tag sesi, yang merupakan atribut pasangan nilai kunci yang Anda lewati saat Anda mengambil peran IAM, menggunakan kredensi sementara, atau menyatukan pengguna di (). AWS Security Token Service AWS STS Anda juga dapat mengaitkan tag dengan pengguna IAM. Anda dapat menggunakan informasi yang disediakan dalam tag ini untuk mempermudah mengidentifikasi siapa yang membuat perubahan atau menyebabkan suatu peristiwa. CodeCommit termasuk nilai untuk tag dengan nama kunci berikut dalam CodeCommit acara:
| Nama kunci | Nilai |
|---|---|
displayName |
Nama yang dapat dibaca manusia untuk ditampilkan dan dikaitkan dengan pengguna (misalnya, Mary Major atau Saanvi Sarkar). |
emailAddress |
Alamat email yang ingin Anda tampilkan dan kaitkan dengan pengguna (misalnya, mary_major@example.com atau saanvi_sarkar@example.com). |
Jika informasi ini diberikan, CodeCommit sertakan dalam acara yang dikirim ke Amazon EventBridge dan Amazon CloudWatch Events. Untuk informasi selengkapnya, lihat Memantau CodeCommit peristiwa di Amazon EventBridge dan Amazon CloudWatch Events.
Untuk menggunakan penandaan sesi, peran harus memiliki kebijakan yang mencakup izin sts:TagSession yang diatur ke Allow. Jika Anda menggunakan akses gabungan, Anda dapat mengkonfigurasi nama tampilan dan informasi tag email sebagai bagian dari pengaturan Anda. Misalnya, jika Anda menggunakan Azure Active Directory, Anda dapat memberikan informasi klaim berikut:
| Nama klaim | Nilai |
|---|---|
https://aws.amazon.com/SAML/Attributes/PrincipalTag:displayName |
user.displayname |
https://aws.amazon.com/SAML/Attributes/PrincipalTag:emailAddress |
user.mail |
Anda dapat menggunakan tag AWS CLI to pass session untuk displayName dan emailAddress menggunakanAssumeRole. Misalnya, pengguna yang ingin mengambil peran bernama Developer yang ingin mengaitkan namanya Mary Major mungkin menggunakan assume-role perintah yang mirip dengan berikut ini:
aws sts assume-role \ --role-arn arn:aws:iam::123456789012:role/Developer\ --role-session-nameMary-Major\ –-tags Key=displayName,Value="Mary Major" Key=emailAddress,Value="mary_major@example.com" \ --external-id Example987
Untuk informasi selengkapnya, lihat AssumeRole.
Anda dapat menggunakan operasi AssumeRoleWithSAML untuk mengembalikan satu set kredensial sementara yang mencakup tanda displayName dan emailAddress. Anda dapat menggunakan tag ini saat mengakses CodeCommit repositori. Ini mengharuskan perusahaan atau grup Anda telah mengintegrasikan solusi SAMP pihak ketiga Anda. AWS Jika demikian, Anda dapat meneruskan atribut SAML sebagai tag sesi. Misalnya, jika Anda ingin meneruskan atribut identitas untuk nama tampilan dan alamat email untuk pengguna bernama Saanvi Sarkar tag sesi:
<Attribute Name="https://aws.amazon.com/SAML/Attributes/PrincipalTag:displayName"> <AttributeValue>Saanvi Sarkar</AttributeValue> </Attribute> <Attribute Name="https://aws.amazon.com/SAML/Attributes/PrincipalTag:emailAddress"> <AttributeValue>saanvi_sarkar@example.com</AttributeValue> </Attribute>
Untuk informasi selengkapnya, lihat Melewati Tag Sesi menggunakan AssumeRoleWith SALL.
Anda dapat menggunakan operasi AssumeRoleWithIdentity untuk mengembalikan satu set kredensial sementara yang mencakup tanda displayName dan emailAddress. Anda dapat menggunakan tag ini saat mengakses CodeCommit repositori. Untuk meneruskan tag sesi dari OpenID Connect (OIDC), Anda harus menyertakan tag sesi di JSON Web Token (JWT). Misalnya, token JWP yang diterjemahkan digunakan untuk memanggil AssumeRoleWithWebIdentity yang menyertakan tag emailAddress sesi displayName dan untuk pengguna bernama: Li
Juan
{ "sub": "lijuan", "aud": "ac_oic_client", "jti": "ZYUCeREXAMPLE", "iss": "https://xyz.com", "iat": 1566583294, "exp": 1566583354, "auth_time": 1566583292, "https://aws.amazon.com/tags": { "principal_tags": { "displayName": ["Li Juan"], "emailAddress": ["li_juan@example.com"], }, "transitive_tag_keys": [ "displayName", "emailAddress" ] } }
Untuk informasi selengkapnya, lihat Melewati Tag Sesi menggunakan AssumeRoleWithWebIdentity.
Anda dapat menggunakan operasi GetFederationToken untuk mengembalikan satu set kredensial sementara yang mencakup tanda displayName dan emailAddress. Anda dapat menggunakan tag ini saat mengakses CodeCommit repositori. Misalnya, untuk menggunakan token federasi AWS CLI untuk mendapatkan token federasi yang menyertakan displayName dan emailAddress tag:
aws sts get-federation-token \ --name my-federated-user \ –-tags key=displayName,value="Nikhil Jayashankar" key=emailAddress,value=nikhil_jayashankar@example.com
Untuk informasi selengkapnya, lihat Melewati Tag Sesi menggunakan GetFederationToken.
CodeCommit Peran IAM
IAM role adalah entitas di dalam akun Amazon Web Services Anda yang memiliki izin khusus.
Menggunakan kredensyal sementara dengan CodeCommit
Anda dapat menggunakan kredensial sementara untuk masuk dengan gabungan, menjalankan IAM role, atau menjalankan peran lintas akun. Anda memperoleh kredensil keamanan sementara dengan memanggil operasi AWS STS API seperti AssumeRoleatau. GetFederationToken
CodeCommit mendukung menggunakan kredensyal sementara. Untuk informasi selengkapnya, lihat Menghubungkan ke AWS CodeCommit repositori dengan kredensi berputar.
Peran terkait layanan
Peran terkait AWS layanan memungkinkan layanan mengakses sumber daya di layanan lain untuk menyelesaikan tindakan atas nama Anda. Peran terkait layanan muncul di akun IAM Anda dan dimiliki oleh layanan tersebut. Administrator IAM dapat melihat tetapi tidak dapat mengedit izin untuk peran terkait layanan.
CodeCommit tidak menggunakan peran terkait layanan.
Peran layanan
Fitur ini memungkinkan layanan untuk menerima peran layanan atas nama Anda. Peran ini mengizinkan layanan untuk mengakses sumber daya di layanan lain untuk menyelesaikan tindakan atas nama Anda. Peran layanan muncul di akun IAM Anda dan dimiliki oleh akun tersebut. Ini berarti administrator IAM dapat mengubah izin untuk peran ini. Namun, melakukan hal itu dapat merusak fungsionalitas layanan.
CodeCommit tidak menggunakan peran layanan.
AWS CodeCommit contoh kebijakan berbasis identitas
Secara default, pengguna dan peran IAM tidak memiliki izin untuk membuat atau memodifikasi sumber daya CodeCommit . Mereka juga tidak dapat melakukan tugas menggunakan AWS Management Console, AWS CLI, atau AWS API. Administrator IAM harus membuat kebijakan IAM yang memberikan izin kepada pengguna dan peran untuk melakukan operasi API tertentu pada sumber daya yang diperlukan. Administrator kemudian harus melampirkan kebijakan tersebut ke pengguna IAM atau grup yang memerlukan izin tersebut.
Untuk contoh kebijakan, lihat berikut:
-
Contoh 1: Izinkan pengguna untuk melakukan CodeCommit operasi dalam satu Wilayah AWS
-
Contoh 2: Izinkan pengguna menggunakan Git untuk repositori tunggal
-
Contoh 3: Izinkan pengguna terhubung dari rentang alamat IP tertentu untuk mengakses repositori
-
Contoh 5: Tolak atau izinkan tindakan pada repositori dengan tag
-
Konfigurasikan akses lintas akun ke AWS CodeCommit repositori menggunakan peran
Untuk mempelajari cara membuat kebijakan berbasis identitas IAM menggunakan contoh dokumen kebijakan JSON ini, lihat Membuat Kebijakan pada Tab JSON dalam Panduan Pengguna IAM.
Topik
Praktik terbaik kebijakan
Kebijakan berbasis identitas menentukan apakah seseorang dapat membuat, mengakses, atau menghapus CodeCommit sumber daya di akun Anda. Tindakan ini membuat Akun AWS Anda dikenai biaya. Ketika Anda membuat atau mengedit kebijakan berbasis identitas, ikuti panduan dan rekomendasi ini:
-
Mulailah dengan kebijakan AWS terkelola dan beralih ke izin hak istimewa paling sedikit — Untuk mulai memberikan izin kepada pengguna dan beban kerja Anda, gunakan kebijakan AWS terkelola yang memberikan izin untuk banyak kasus penggunaan umum. Mereka tersedia di Anda Akun AWS. Kami menyarankan Anda mengurangi izin lebih lanjut dengan menentukan kebijakan yang dikelola AWS pelanggan yang khusus untuk kasus penggunaan Anda. Untuk informasi selengkapnya, lihat Kebijakan yang dikelola AWS atau Kebijakan yang dikelola AWS untuk fungsi tugas dalam Panduan Pengguna IAM.
-
Menerapkan izin dengan hak akses paling rendah – Ketika Anda menetapkan izin dengan kebijakan IAM, hanya berikan izin yang diperlukan untuk melakukan tugas. Anda melakukannya dengan mendefinisikan tindakan yang dapat diambil pada sumber daya tertentu dalam kondisi tertentu, yang juga dikenal sebagai izin dengan hak akses paling rendah. Untuk informasi selengkapnya tentang cara menggunakan IAM untuk mengajukan izin, lihat Kebijakan dan izin dalam IAM dalam Panduan Pengguna IAM.
-
Gunakan kondisi dalam kebijakan IAM untuk membatasi akses lebih lanjut – Anda dapat menambahkan suatu kondisi ke kebijakan Anda untuk membatasi akses ke tindakan dan sumber daya. Sebagai contoh, Anda dapat menulis kondisi kebijakan untuk menentukan bahwa semua permintaan harus dikirim menggunakan SSL. Anda juga dapat menggunakan ketentuan untuk memberikan akses ke tindakan layanan jika digunakan melalui yang spesifik Layanan AWS, seperti AWS CloudFormation. Untuk informasi selengkapnya, lihat Elemen kebijakan JSON IAM: Kondisi dalam Panduan Pengguna IAM.
-
Gunakan IAM Access Analyzer untuk memvalidasi kebijakan IAM Anda untuk memastikan izin yang aman dan fungsional – IAM Access Analyzer memvalidasi kebijakan baru dan yang sudah ada sehingga kebijakan tersebut mematuhi bahasa kebijakan IAM (JSON) dan praktik terbaik IAM. IAM Access Analyzer menyediakan lebih dari 100 pemeriksaan kebijakan dan rekomendasi yang dapat ditindaklanjuti untuk membantu Anda membuat kebijakan yang aman dan fungsional. Untuk informasi selengkapnya, lihat Validasi kebijakan dengan IAM Access Analyzer dalam Panduan Pengguna IAM.
-
Memerlukan otentikasi multi-faktor (MFA) - Jika Anda memiliki skenario yang mengharuskan pengguna IAM atau pengguna root di Anda, Akun AWS aktifkan MFA untuk keamanan tambahan. Untuk meminta MFA ketika operasi API dipanggil, tambahkan kondisi MFA pada kebijakan Anda. Untuk informasi selengkapnya, lihat Amankan akses API dengan MFA dalam Panduan Pengguna IAM.
Untuk informasi selengkapnya tentang praktik terbaik dalam IAM, lihat Praktik terbaik keamanan di IAM dalam Panduan Pengguna IAM.
Menggunakan konsol CodeCommit
Untuk mengakses AWS CodeCommit konsol, Anda harus memiliki set izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang CodeCommit sumber daya di akun Amazon Web Services Anda. Jika Anda membuat kebijakan berbasis identitas yang lebih ketat daripada izin minimum yang diperlukan, konsol tersebut tidak akan berfungsi sebagaimana mestinya untuk entitas (pengguna IAM atau peran) dengan kebijakan tersebut.
Untuk memastikan bahwa entitas tersebut masih dapat menggunakan CodeCommit konsol, lampirkan juga kebijakan AWS terkelola berikut ke entitas. Untuk informasi selengkapnya, lihat Menambahkan Izin ke Pengguna dalam Panduan Pengguna IAM:
Untuk informasi selengkapnya, lihat Menggunakan kebijakan berbasis identitas (Kebijakan IAM) untuk CodeCommit.
Anda tidak perlu mengizinkan izin konsol minimum untuk pengguna yang melakukan panggilan hanya ke AWS CLI atau AWS API. Sebagai alternatif, hanya izinkan akses ke tindakan yang cocok dengan operasi API yang sedang Anda coba lakukan.
Izinkan para pengguna untuk melihat izin mereka sendiri
Contoh ini menunjukkan cara membuat kebijakan yang mengizinkan pengguna IAM melihat kebijakan inline dan terkelola yang dilampirkan ke identitas pengguna mereka. Kebijakan ini mencakup izin untuk menyelesaikan tindakan ini di konsol atau menggunakan API atau secara terprogram. AWS CLI AWS
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }
Melihat CodeCommit repositories berdasarkan tag
Anda dapat menggunakan syarat dalam kebijakan berbasis identitas Anda untuk mengontrol akses ke sumber daya CodeCommit berdasarkan tanda. Untuk contoh kebijakan yang menunjukkan cara melakukan hal ini, lihat Contoh 5: Tolak atau izinkan tindakan pada repositori dengan tag.
Untuk informasi selengkapnya, lihat Elemen kebijakan IAM JSON: Syarat dalam Panduan Pengguna IAM.
Memecahkan masalah AWS CodeCommit identitas dan akses
Gunakan informasi berikut untuk membantu Anda mendiagnosis dan memperbaiki masalah umum yang mungkin Anda temui saat bekerja dengan CodeCommit dan IAM.
Saya tidak berwenang untuk melakukan tindakan di CodeCommit
Jika AWS Management Console memberitahu Anda bahwa Anda tidak berwenang untuk melakukan suatu tindakan, maka Anda harus menghubungi administrator Anda untuk bantuan. Administrator Anda adalah orang yang memberi Anda kredensial masuk.
Untuk informasi selengkapnya, lihat Izin yang diperlukan untuk menggunakan konsol CodeCommit
Saya tidak berwenang untuk melakukan iam: PassRole
Jika Anda menerima kesalahan bahwa Anda tidak diizinkan melakukan tindakan iam:PassRole, kebijakan Anda harus diperbarui agar Anda dapat meneruskan peran ke CodeCommit.
Beberapa Layanan AWS memungkinkan Anda untuk meneruskan peran yang ada ke layanan tersebut alih-alih membuat peran layanan baru atau peran terkait layanan. Untuk melakukannya, Anda harus memiliki izin untuk meneruskan peran ke layanan.
Contoh kesalahan berikut terjadi ketika pengguna IAM bernama marymajor mencoba menggunakan konsol tersebut untuk melakukan tindakan di CodeCommit. Namun, tindakan tersebut memerlukan layanan untuk mendapatkan izin yang diberikan oleh peran layanan. Mary tidak memiliki izin untuk meneruskan peran tersebut pada layanan.
User: arn:aws:iam::123456789012:user/marymajoris not authorized to perform: iam:PassRole
Dalam kasus ini, kebijakan Mary harus diperbarui agar dia mendapatkan izin untuk melakukan tindakan iam:PassRole tersebut.
Jika Anda memerlukan bantuan, hubungi AWS administrator Anda. Administrator Anda adalah orang yang memberi Anda kredensial masuk.
Saya ingin melihat access key saya
Setelah membuat access key pengguna IAM, Anda dapat melihat access key ID Anda setiap saat. Namun, Anda tidak dapat melihat secret access key Anda lagi. Jika Anda kehilangan secret key, Anda harus membuat pasangan access key baru.
Access key terdiri dari dua bagian: access key ID (misalnya, AKIAIOSFODNN7EXAMPLE) dan secret access key (misalnya, wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY). Seperti nama pengguna dan kata sandi, Anda harus menggunakan access key ID dan secret access key sekaligus untuk mengautentikasi permintaan Anda. Kelola access key Anda seaman nama pengguna dan kata sandi Anda.
penting
Jangan berikan kunci akses Anda kepada pihak ketiga, bahkan untuk membantu menemukan ID pengguna kanonis Anda. Dengan melakukan ini, Anda mungkin memberi seseorang akses permanen ke Anda Akun AWS.
Saat Anda membuat pasangan access key, Anda diminta menyimpan access key ID dan secret access key di lokasi yang aman. secret access key hanya tersedia saat Anda membuatnya. Jika Anda kehilangan secret access key Anda, Anda harus menambahkan access key baru ke pengguna IAM Anda. Anda dapat memiliki maksimum dua access key. Jika Anda sudah memiliki dua, Anda harus menghapus satu pasangan kunci sebelum membuat pasangan baru. Untuk melihat instruksi, lihat Mengelola access keys di Panduan Pengguna IAM.
Saya seorang administrator dan ingin mengizinkan orang lain mengakses CodeCommit
Untuk memungkinkan orang lain mengakses CodeCommit, Anda harus memberikan izin kepada orang atau aplikasi yang membutuhkan akses. Jika Anda menggunakan AWS IAM Identity Center untuk mengelola orang dan aplikasi, Anda menetapkan set izin kepada pengguna atau grup untuk menentukan tingkat akses mereka. Set izin secara otomatis membuat dan menetapkan kebijakan IAM ke peran IAM yang terkait dengan orang atau aplikasi. Untuk informasi selengkapnya, lihat Set izin di Panduan AWS IAM Identity Center Pengguna.
Jika Anda tidak menggunakan IAM Identity Center, Anda harus membuat entitas IAM (pengguna atau peran) untuk orang atau aplikasi yang membutuhkan akses. Anda kemudian harus melampirkan kebijakan ke entitas yang memberikan izin yang benar untuk orang atau aplikasi tersebut di CodeCommit. Setelah izin diberikan, berikan kredensialnya kepada pengguna atau pengembang aplikasi. Mereka akan menggunakan kredensyal tersebut untuk mengakses. AWSUntuk mempelajari selengkapnya tentang membuat pengguna, grup, kebijakan, dan izin IAM, lihat Identitas dan Kebijakan IAM dan izin di IAM di Panduan Pengguna IAM.
Saya ingin mengizinkan orang di luar akun Amazon Web Services saya untuk mengakses CodeCommit sumber daya saya
Lihat informasi yang lebih lengkap di Konfigurasikan akses lintas akun ke AWS CodeCommit repositori menggunakan peran.