Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menghubungkan ke AWS CodeCommit repositori dengan kredensional berputar
Anda dapat memberi pengguna akses ke AWS CodeCommit repositori Anda tanpa mengonfigurasi pengguna IAM untuk mereka atau menggunakan kunci akses dan kunci rahasia. Untuk menetapkan izin ke identitas federasi, 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 Buat peran untuk penyedia identitas pihak ketiga dalam Panduan Pengguna IAM. Jika menggunakan Pusat Identitas IAM, Anda harus mengonfigurasi set izin. Untuk mengontrol apa yang dapat diakses identitas Anda setelah identitas tersebut diautentikasi, Pusat Identitas IAM akan mengorelasikan set izin ke peran dalam IAM. Untuk informasi tentang set izin, lihat Set izin dalam Panduan Pengguna AWS IAM Identity Center . Anda juga dapat mengonfigurasi akses berbasis peran bagi pengguna IAM untuk mengakses CodeCommit repositori di akun Amazon Web Services 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)
-
Multi-factor otentikasi (MFA)
-
Federation
-
Masuk dengan Amazon
-
Amazon Cognito
-
Facebook
-
Google
-
Penyedia identitas yang kompatibel OpenID Connect (OIDC)
catatan
Informasi berikut hanya berlaku untuk penggunaan git-remote-codecommit atau pembantu AWS CLI kredensi untuk terhubung ke CodeCommit repositori. Karena pendekatan yang disarankan untuk akses sementara atau federasi CodeCommit adalah mengaturgit-remote-codecommit, topik ini memberikan contoh menggunakan utilitas itu. Untuk informasi selengkapnya, lihat Langkah-langkah pengaturan untuk koneksi HTTPS ke AWS CodeCommit dengan git-remote-codecommit.
Anda tidak dapat menggunakan kredentif SSH atau Git dan HTTPS untuk terhubung ke CodeCommit repositori dengan kredentif 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 pembantu AWS CLI kredensi untuk terhubung dari instans Amazon EC2 ke CodeCommit 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 AWS CLI kredensi atau Untuk koneksi HTTPS di Windows dengan pembantu AWS CLI kredensi.
-
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 AWS CLI kredensi atau Untuk koneksi HTTPS di Windows dengan pembantu AWS CLI kredensi.
Instans Amazon EC2 yang memenuhi persyaratan sebelumnya sudah diatur untuk mengkomunikasikan kredentif akses sementara CodeCommit kepada Anda.
catatan
Anda dapat mengonfigurasi dan menggunakan git-remote-codecommit pada instans Amazon EC2.
Untuk memberi pengguna akses sementara ke CodeCommit repositori Anda, selesaikan langkah-langkah berikut.
Langkah 1: Selesaikan prasyarat
Selesaikan langkah-langkah penyiapan untuk memberi pengguna akses ke CodeCommit repositori Anda menggunakan kredenSIAL 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 federasi, lihat Menggunakan Sistem Otentikasi Organisasi Anda untuk Memberikan Akses ke Sumber AWS Daya dan Tentang Federasi berbasis AWS STS SAML 2.0.
-
Untuk MFA, lihat Menggunakan Perangkat Oten Multi-Factor tikasi (MFA) dengan AWS dan Membuat KredenSIAL Keamanan Sementara untuk Mengaktifkan Akses bagi Pengguna IAM.
-
Untuk Login dengan Amazon, Amazon Cognito, Facebook, Google, atau penyedia OIDC-compatible identitas apa pun, lihat Tentang Federasi Identi AWS STS tas Web.
Gunakan informasi di Kendali autentikasi dan akses untuk AWS CodeCommit untuk menentukan CodeCommit 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 perintah asum AWS CLI me-role atau panggil API. AWS STS AssumeRole
-
Untuk SAML, panggil perintah asum AWS CLI me-role-with -saml atau API. AWS STS AssumeRoleWithSAML
-
Untuk federasi, panggil perintah AWS CLI asumme-role atau get-federation-token atau API or. AWS STS AssumeRole GetFederationToken
-
Untuk MFA, panggil perintah AWS CLI get-session-token atau API. AWS STS GetSessionToken
-
Untuk Login dengan Amazon, Amazon Cognito, Facebook, Google, atau penyedia OIDC-compatible identitas apa pun, panggil perintah asum AWS CLI me-role-with -web-identity atau API. AWS STS AssumeRoleWithWebIdentity
Langkah 3: Instal git-remote-codecommit dan konfigurasikan AWS CLI
Anda harus mengkonfigurasi komputer lokal Anda untuk menggunakan kredenSIAL akses dengan menginstal git-remote-codecommit
-
Ikuti instruksi di Penyiapan untuk mengatur AWS CLI. Gunakan perintah aws configure untuk mengkonfigurasi satu atau lebih profil. Pertimbangkan untuk membuat profil bernama untuk digunakan saat Anda terhubung ke CodeCommit repositori menggunakan kredenSIAL berputar.
-
Anda dapat mengaitkan kredenSIAL dengan profil AWS CLI bernama pengguna dengan salah satu cara berikut.
-
Jika Anda mengambil peran untuk diakses CodeCommit, konfigurasikan profil bernama dengan informasi yang diperlukan untuk mengambil peran itu. Misalnya, jika Anda ingin mengambil peran yang diberi nama
CodeCommitAccessdi akun Amazon Web Services 1111111111, Anda dapat mengonfigurasi profil default untuk digunakan saat bekerja dengan AWS sumber daya lain dan profil bernama untuk digunakan saat mengasumsikan peran tersebut. Perintah berikut membuat profil bernamaCodeAccessyang mengambil peran bernamaCodeCommitAccess. Nama penggunaMaria_Garciadikaitkan dengan sesi dan profil default ditetapkan sebagai sumber kredensi AWS alnya:aws configure set role_arn arn:aws:iam::111111111111:role/CodeCommitAccess--profileCodeAccessaws configure set source_profile default --profileCodeAccessaws configure set role_session_name "Maria_Garcia" --profileCodeAccessJika 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/CodeCommitAccessSetelah Anda mengonfigurasi profil bernama Anda, Anda kemudian dapat mengkloning CodeCommit repositori dengan git-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
AssumeRoleWithWebIdentityAPI AWS Security Token Service (AWS STS) atas nama Anda untuk menyegarkan kredenSIAL sementara. Gunakan aws configure set perintah atau edit~/.aws/credentialsfile secara manual (untuk Linux) atau%UserProfile%.aws\credentialsfile (untuk Windows) untuk menambahkan profil AWS CLI bernama dengan nilai pengaturan yang diperlukan. Misalnya, untuk membuat profil yang mengambilCodeCommitAccessperan dan menggunakan file token identitas web ~/:my-credentials/my-token-file[CodeCommitWebIdentity] role_arn = arn:aws:iam::111111111111:role/CodeCommitAccessweb_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: Akses CodeCommit repositori
Dengan asumsi pengguna Anda telah mengikuti instruksi Connect ke sebuah repositori untuk terhubung ke CodeCommit repositori, pengguna kemudian menggunakan fungsionalitas diperluas yang disediakan oleh git-remote-codecommit dan Git untuk memanggil git clonegit push,, dan git pull untuk mengkloning, mendorong, dan menarik dari, CodeCommit repositori tempat mereka memiliki 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 AWS CLI bernama yang terkait dengan kredenSIAL akses berputar, hasil yang dicakup ke profil tersebut dikembalikan.