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.
Menghubungkan ke repositori AWS CodeCommit dengan kredensial berputar
Anda dapat memberi pengguna akses ke repositori AWS CodeCommit Anda tanpa mengonfigurasi pengguna IAM untuknya atau menggunakan access key dan secret key. Untuk menetapkan izin ke identitas gabungan, Anda membuat peran dan menentukan izin untuk peran tersebut. Ketika identitas gabungan mengautentikasi, identitas tersebut dikaitkan dengan peran dan diberikan izin yang didefinisikan oleh peran. Untuk informasi tentang peran untuk federasi, lihat Membuat peran untuk Penyedia Identitas pihak ketiga dalam Panduan Pengguna IAM. Jika Anda menggunakan IAM Identity Center, Anda mengkonfigurasi set izin. Untuk mengontrol apa yang dapat diakses identitas Anda setelah mengautentikasi, IAM Identity Center menghubungkan izin yang ditetapkan ke peran dalam IAM. Untuk informasi tentang set izin, lihat Kumpulan izin di PanduanAWS IAM Identity Center Pengguna. Anda juga dapat mengkonfigurasi akses berbasis peran untuk pengguna IAM untuk mengaksesCodeCommit repositori di akun Amazon Web Services yang terpisah (teknik yang dikenal sebagai akses lintas akun). Untuk panduan konfigurasi akses lintas akun ke repositori, lihat Konfigurasikan akses lintas akun ke AWS CodeCommit repositori menggunakan peran.
Anda dapat mengkonfigurasi akses untuk pengguna yang ingin atau harus mengotentikasi melalui metode seperti:
-
Security Assertion Markup Language (SAML)
-
Autentikasi multi-faktor (MFA)
-
Federation
-
Login with Amazon
-
Amazon Cognito
-
Facebook
-
Google
-
Penyedia identitas yang kompatibel OpenID Connect (OIDC)
catatan
Informasi berikut hanya berlaku untuk penggunaangit-remote-codecommit atau pembantuAWS CLI kredenatif untuk terhubung keCodeCommit repositori. Karena pendekatan yang direkomendasikan untuk akses sementara atau federasi untukCodeCommit diaturgit-remote-codecommit, topik ini memberikan contoh penggunaan utilitas tersebut. Untuk informasi selengkapnya, lihat Langkah-langkah penyiapan untuk koneksi HTTPS keAWS CodeCommitbersamagit-remote-codecommit.
Anda tidak dapat menggunakan kredenial SSH atau Git dan HTTPS untuk terhubung keCodeCommit repositori dengan kredenial akses berputar atau sementara.
Anda tidak perlu menyelesaikan langkah-langkah ini jika semua persyaratan berikut ini benar:
-
Anda masuk ke instans Amazon EC2.
-
Anda menggunakan Git dan HTTPS dengan pembantuAWS CLI kredenatif untuk menghubungkan dari instans Amazon EC2 keCodeCommit repositori.
-
Instans Amazon EC2 memiliki profil instans IAM terlampir yang berisi izin akses yang dijelaskan di Untuk koneksi HTTPS di Linux, macOS, atau Unix dengan pembantu kredensial AWS CLI atau Untuk sambungan HTTPS pada Windows dengan pembantu kredensial AWS CLI.
-
Anda telah menginstal dan mengkonfigurasi Git pembantu kredensial pada instans Amazon EC2, seperti yang dijelaskan dalam Untuk koneksi HTTPS di Linux, macOS, atau Unix dengan pembantu kredensial AWS CLI atau Untuk sambungan HTTPS pada Windows dengan pembantu kredensial AWS CLI.
Instans Amazon EC2 yang memenuhi persyaratan sebelumnya sudah diatur untuk mengkomunikasikan kredenial akses sementara untukCodeCommit atas nama Anda.
catatan
Anda dapat mengonfigurasi dan menggunakan git-remote-codecommit pada instans Amazon EC2.
Untuk memberi pengguna akses sementara keCodeCommit repositori Anda, selesaikan langkah berikut.
Langkah 1: Selesaikan prasyarat
Selesaikan langkah-langkah pengaturan untuk memberi pengguna akses keCodeCommit repositori Anda menggunakan kredenial berputar:
-
Untuk akses lintas akun, lihat Panduan: Mendelegasikan Akses Akun Amazon Web Services menggunakan IAM role dan Konfigurasikan akses lintas akun ke AWS CodeCommit repositori menggunakan peran.
-
Untuk SAML dan federation, lihat Menggunakan Sistem Autentikasi Organisasi Anda Untuk Memberikan Akses ke Sumber Daya AWS and Tentang Federation Berbasis AWS STS SAML 2.0.
-
Untuk MFA, lihat Menggunakan Perangkat Multi-Factor Authentication (MFA) dengan AWS dan Membuat Kredensials Keamanan Sementara Untuk Mengaktifkan Akses Untuk Pengguna IAM.
-
Untuk Login with Amazon, Amazon Cognito, Facebook, Google, atau penyedia identitas mana pun yang kompatibel dengan OIDC, lihat Tentang Web Identity Federation AWS STS.
Gunakan informasiKontrol autentikasi dan akses untuk AWS CodeCommit untuk menentukanCodeCommit izin yang ingin Anda berikan kepada pengguna.
Langkah 2: Dapatkan nama peran atau kredensial akses
Jika Anda ingin pengguna Anda mengakses repositori dengan memiliki suatu peran, berikan pengguna Anda Amazon Resource Name (ARN) dari peran itu. Jika tidak, tergantung pada cara Anda mengatur akses, pengguna Anda bisa mendapatkan kredensial berputar dengan salah satu cara berikut:
-
Untuk akses lintas akun, panggil perintahAWS CLI assume-role atau panggilAWS STS AssumeRoleAPI.
-
Untuk SALL, panggilAWS CLI assume-role-with-samlperintah atauAWS STS AssumeRoleWithSALL API.
-
Untuk federasi, panggilAWS CLI assume-role atau get-federation-tokenperintah atauAWS STS AssumeRoleatau GetFederationTokenAPI.
-
Untuk MFA, panggilAWS CLI get-session-tokenperintah atauAWS STS GetSessionTokenAPI.
-
Untuk Login with Amazon, Amazon Cognito, Facebook, Google, atau penyedia identitas mana pun yang kompatibel dengan OIDC, panggil perintahAWS CLI assume-role-with-web-identity atauAWS STS AssumeRoleWithWebIdentityAPI.
Langkah 3: Instalgit-remote-codecommit dan konfigurasikanAWS CLI
Anda harus mengkonfigurasi komputer lokal Anda untuk menggunakan kredensil akses dengan menginstal git-remote-codecommit
-
Ikuti instruksi di Pengaturan untuk mengatur AWS CLI. Gunakan perintah aws configure untuk mengkonfigurasi satu atau lebih profil. Pertimbangkan untuk membuat profil bernama untuk digunakan saat Anda terhubung keCodeCommit repositori menggunakan kredenial berputar.
-
Anda dapat mengasosiasikan kredensialnya dengan profil bernama AWS CLI dari pengguna dengan salah satu cara berikut.
-
Jika Anda memiliki peran untuk mengaksesCodeCommit, konfigurasikan profil bernama dengan informasi yang diperlukan untuk mengasumsikan peran itu. Misalnya, jika Anda ingin memiliki peran bernama
CodeCommitAccess
di akun Amazon Web Services 11111111111111, Anda dapat mengkonfigurasi profil default untuk digunakan saat bekerja denganAWS sumber daya lainnya dan profil bernama untuk digunakan ketika melaksanakan peran itu. Perintah berikut membuat profil bernamaCodeAccess
yang memiliki peran bernamaCodeCommitAccess
. Nama penggunaMaria_Garcia
dikaitkan dengan sesi dan profil default diatur sebagai sumberAWS kredenenenalnya:aws configure set role_arn arn:aws:iam::111111111111:role/
CodeCommitAccess
--profileCodeAccess
aws configure set source_profile default --profileCodeAccess
aws configure set role_session_name "Maria_Garcia
" --profileCodeAccess
Jika Anda ingin memverifikasi perubahan, secara manual melihat atau mengedit file
~/.aws/config
(untuk Linux) atau file%UserProfile%.aws\config
(untuk Windows) dan meninjau informasi di bawah profil bernama. Misalnya, file Anda mungkin terlihat seperti berikut:[default] region = us-east-1 output = json [profile CodeAccess] source_profile = default role_session_name = Maria_Garcia role_arn = arn:aws:iam::111111111111:role/
CodeCommitAccess
Setelah Anda mengkonfigurasi profil bernama Anda, Anda kemudian dapat mengkloningCodeCommit repositori dengangit-remote-codecommit utilitas menggunakan profil bernama. Misalnya, untuk mengkloning repositori bernama
MyDemoRepo
:git clone codecommit://
CodeAccess
@MyDemoRepo
-
Jika Anda menggunakan federasi identitas web dan OpenID Connect (OIDC), konfigurasikan profil bernama yang membuat panggilan AWS Security Token Service (AWS STS)
AssumeRoleWithWebIdentity
API atas nama Anda untuk merefresh kredensial sementara. Gunakan perintah aws configure set atau edit secara manual file~/.aws/credentials
(untuk Linux) atau file%UserProfile%.aws\credentials
(untuk Windows) untuk menambahkan profil yang dinamai AWS CLI dengan nilai pengaturan yang diperlukan. Misalnya, untuk membuat profil yang mengasumsikanCodeCommitAccess
peran dan menggunakan file token identitas web ~/my-credentials
/my-token-file
:[
CodeCommitWebIdentity
] role_arn = arn:aws:iam::111111111111:role/CodeCommitAccess
web_identity_token_file=~/
role_session_name = Maria_Garciamy-credentials
/my-token-file
Untuk informasi selengkapnya, lihat Mengonfigurasi AWS Command Line Interface dan Menggunakan IAM role di AWS CLI di Panduan Pengguna AWS Command Line Interface.
-
Langkah 4: MengaksesCodeCommit repositori
Dengan asumsi pengguna Anda telah mengikuti petunjukConnect ke sebuah repositori untuk terhubung keCodeCommit repositori, pengguna kemudian menggunakan fungsionalitas diperpanjang yang disediakan olehgit-remote-codecommit dan Gitgit pull untuk memanggilgit clonegit push,, dan untuk mengkloning, mendorong ke, dan menarik dari,CodeCommit repositori yang dia akses. Misalnya, untuk mengkloning suatu repositori:
git clone codecommit://
CodeAccess
@MyDemoRepo
Perintah Git commit, push, dan pull menggunakan sintaks Git biasa.
Ketika pengguna menggunakan AWS CLI dan menentukan profil yang dinamai AWS CLI yang terkait dengan kredensial akses berputar, hasil yang dinilai ke profil tersebut dikembalikan.