AWS CodeArtifact referensi izin - CodeArtifact

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

AWS CodeArtifact referensi izin

AWS CodeArtifact sumber daya dan operasi

Di AWS CodeArtifact, sumber daya utama adalah domain. Dalam sebuah kebijakan, Anda menggunakan Amazon Resource Name (ARN) untuk mengidentifikasi sumber daya tempat kebijakan berlaku. Repositori juga sumber daya dan memiliki ARN yang terkait. Untuk informasi selengkapnya, lihat Nama Sumber Daya Amazon (ARN) di. Referensi Umum Amazon Web Services

Jenis sumber daya Format ARN
Domain

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

Repositori

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

Grup Package

arn:aws:codeartifact:region-ID:account-ID:package-group/my_domain/encoded_package_group_pattern

Paket dengan namespace

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

Paket tanpa namespace

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format//my_package

Semua CodeArtifact sumber daya

arn:aws:codeartifact:*

Semua CodeArtifact sumber daya yang dimiliki oleh akun yang ditentukan di Wilayah AWS yang ditentukan

arn:aws:codeartifact:region-ID:account-ID:*

ARN sumber daya mana yang Anda tentukan bergantung pada tindakan atau tindakan yang ingin Anda kendalikan aksesnya.

Anda dapat menunjukkan domain tertentu (MyDomain) dalam pernyataan Anda menggunakan ARN sebagai berikut.

"Resource": "arn:aws:codeartifact:us-east-2:123456789012:domain/myDomain"

Anda dapat menunjukkan repositori tertentu (MyRepo) dalam pernyataan Anda menggunakan ARN sebagai berikut.

"Resource": "arn:aws:codeartifact:us-east-2:123456789012:domain/myDomain/myRepo"

Untuk menentukan beberapa sumber daya dalam satu pernyataan, pisahkan ARN mereka dengan koma. Pernyataan berikut berlaku untuk semua paket dan repositori dalam domain tertentu.

"Resource": [ "arn:aws:codeartifact:us-east-2:123456789012:domain/myDomain", "arn:aws:codeartifact:us-east-2:123456789012:repository/myDomain/*", "arn:aws:codeartifact:us-east-2:123456789012:package/myDomain/*" ]
catatan

Banyak AWS layanan memperlakukan titik dua (:) atau garis miring (/) sebagai karakter yang sama di ARN. Namun, CodeArtifact menggunakan kecocokan yang tepat dalam pola dan aturan sumber daya. Pastikan untuk menggunakan karakter yang benar saat membuat pola peristiwa sehingga cocok dengan sintaks ARN di sumber daya.

AWS CodeArtifact Operasi dan izin API

Anda dapat menggunakan tabel berikut sebagai referensi saat menyiapkan kontrol akses dan menulis kebijakan izin yang dapat dilampirkan ke identitas IAM (kebijakan berbasis identitas).

Anda dapat menggunakan kunci kondisi AWS-wide dalam AWS CodeArtifact kebijakan Anda untuk menyatakan kondisi. Untuk daftarnya, lihat IAM JSON Policy Elements Reference dalam Panduan Pengguna IAM.

Anda menentukan tindakan di bidang Action kebijakan. Untuk menentukan tindakan, gunakan prefiks codeartifact: diikuti dengan nama operasi API (misalnya codeartifact:CreateDomain dan codeartifact:AssociateExternalConnection). Untuk menetapkan beberapa tindakan dalam satu pernyataan, pisahkan dengan koma (misalnya, "Action": [ "codeartifact:CreateDomain", "codeartifact:AssociateExternalConnection" ]).

Menggunakan karakter wildcard

Anda menentukan ARN, dengan atau tanpa karakter wildcard (*), sebagai nilai sumber daya dalam bidang Resource kebijakan. Anda bisa menggunakan wildcard untuk menentukan beberapa tindakan atau sumber daya. Misalnya, codeartifact:* menentukan semua CodeArtifact tindakan dan codeartifact:Describe* menentukan semua CodeArtifact tindakan yang dimulai dengan kata. Describe

CodeArtifact Operasi API dan izin yang diperlukan untuk tindakan
AWS CodeArtifact Operasi API Izin yang diperlukan (tindakan API) Sumber daya
AssociateExternalConnection

codeartifact:AssociateExternalConnection

Diperlukan untuk menambahkan koneksi eksternal ke repositori.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

CopyPackageVersions

Untuk menyalin versi paket dari repositori sumber ke repositori tujuan:

codeartifact:CopyPackageVersions

Diperlukan pada repositori tujuan.

codeartifact:ReadFromRepository

Diperlukan pada repositori sumber.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

CreateDomain

codeartifact:CreateDomain

Diperlukan untuk membuat domain.

kms:DescribeKey dan kms:CreateGrant

Diperlukan pada kunci KMS yang disediakan saat menentukan non-default. encryptionKey

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

CreatePackageGroup

codeartifact:CreatePackageGroup

Diperlukan untuk membuat grup paket.

arn:aws:codeartifact:region-ID:account-ID:package-group/my_domain/encoded_package_group_pattern

CreateRepository

codeartifact:CreateRepository

Diperlukan untuk membuat repositori.

codeartifact:AssociateWithDownstreamRepository

Diperlukan pada repositori sehingga dapat ditambahkan sebagai repositori hulu ke repositori hilir.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

DeleteDomain

codeartifact:DeleteDomain

Diperlukan untuk menghapus domain.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

DeleteDomainPermissionsPolicy

codeartifact:DeleteDomainPermissionsPolicy

Diperlukan untuk menghapus kebijakan sumber daya domain.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

DeletePackage

codeartifact:DeletePackage

Diperlukan untuk menghapus paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

DeletePackageGroup

codeartifact:DeletePackageGroup

Diperlukan untuk menghapus grup paket.

arn:aws:codeartifact:region-ID:account-ID:package-group/my_domain/encoded_package_group_pattern

DeletePackageVersions

codeartifact:DeletePackageVersions

Diperlukan untuk menghapus versi paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

DeleteRepository

codeartifact:DeleteRepository

Diperlukan untuk menghapus repositori.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

DeleteRepositoryPermissionsPolicy

codeartifact:DeleteRepositoryPermissionsPolicy

Diperlukan untuk menghapus kebijakan sumber daya repositori.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

DescribeDomain

codeartifact:DescribeDomain

Diperlukan untuk mendapatkan informasi tentang domain.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

DescribePackage

codeartifact:DescribePackage

Diperlukan untuk mendapatkan informasi tentang paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

DescribePackageGroup

codeartifact:DescribePackageGroup

Diperlukan untuk mendapatkan informasi tentang grup paket.

arn:aws:codeartifact:region-ID:account-ID:package-group/my_domain/encoded_package_group_pattern

DescribePackageVersion

codeartifact:DescribePackageVersion

Diperlukan untuk mendapatkan informasi tentang versi paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

DescribeRepository

codeartifact:DescribeRepository

Diperlukan untuk mendapatkan informasi tentang repositori.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

DisassociateExternalConnection

codeartifact:DisassociateExternalConnection

Diperlukan untuk menghapus koneksi eksternal dari repositori.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

DisposePackageVersions

codeartifact:DisposePackageVersions

Diperlukan untuk membuang versi paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

GetAssociatedPackageGroup

codeartifact:GetAssociatedPackageGroup

Diperlukan untuk mendapatkan grup paket terkait dari sebuah paket.

arn:aws:codeartifact:region-ID:account-ID:package-group/my_domain/encoded_package_group_pattern

GetAuthorizationToken

codeartifact:GetAuthorizationToken

sts:GetServiceBearerToken

Diperlukan untuk mendapatkan token otorisasi sementara guna mengakses repositori.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

GetDomainPermissionsPolicy

codeartifact:GetDomainPermissionsPolicy

Diperlukan untuk mendapatkan kebijakan sumber daya domain.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

GetPackageVersionAsset

codeartifact:GetPackageVersionAsset

Diperlukan untuk mendapatkan aset dalam versi paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package
GetPackageVersionReadme

codeartifact:GetPackageVersionReadme

Diperlukan untuk mendapatkan readme versi paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

GetRepositoryEndpoint

codeartifact:GetRepositoryEndpoint

Diperlukan untuk mendapatkan titik akhir repositori.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

GetRepositoryPermissionsPolicy

codeartifact:GetRepositoryPermissionsPolicy

Diperlukan untuk mendapatkan kebijakan sumber daya repositori.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

ListAssociatedPackages

codeartifact:ListAssociatedPackages

Diperlukan untuk mengembalikan daftar paket yang terkait dengan grup paket.

arn:aws:codeartifact:region-ID:account-ID:package-group/my_domain/encoded_package_group_pattern

ListDomains

codeartifact:ListDomains

Diperlukan untuk mengembalikan daftar domain dalam akun AWS.

*

ListPackageGroups

codeartifact:ListPackageGroups

Diperlukan untuk mengembalikan daftar grup paket berpaginasi dalam domain.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

ListPackages

codeartifact:ListPackages

Diperlukan untuk mengembalikan daftar paket yang diberi nomor halaman dalam repositori.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

ListPackageVersionAssets

codeartifact:ListPackageVersionAssets

Diperlukan untuk mengembalikan daftar aset yang diberi nomor halaman dalam versi paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

ListPackageVersionDependencies

codeartifact:ListPackageVersionDependencies

Diperlukan untuk mengembalikan daftar dependensi versi paket yang diberi nomor halaman.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

ListPackageVersions

codeartifact:ListPackageVersions

Diperlukan untuk mengembalikan daftar versi paket yang diberi nomor halaman dalam repositori.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

ListRepositories

codeartifact:ListRepositories

Diperlukan untuk mengembalikan daftar repositori yang diberi nomor halaman dalam akun AWS.

*

ListRepositoriesInDomain

codeartifact:ListRepositoriesInDomain

Diperlukan untuk mengembalikan daftar repositori yang diberi nomor halaman dalam domain.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

ListSubPackageGroups

codeartifact:ListSubPackageGroups

Diperlukan untuk mengembalikan daftar grup paket anak langsung dari grup paket.

arn:aws:codeartifact:region-ID:account-ID:package-group/my_domain/encoded_package_group_pattern

ListTagsForResource

codeartifact:ListTagsForResource

Diperlukan untuk mencantumkan tanda untuk sumber daya tertentu.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

PublishPackageVersion

codeartifact:PublishPackageVersion

Diperlukan untuk memublikasikan versi paket ke repositori.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

PutDomainPermissionsPolicy

codeartifact:PutDomainPermissionsPolicy

Diperlukan untuk menambahkan kebijakan sumber daya ke domain.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

PutPackageMetadata

codeartifact:PutPackageMetadata

Diperlukan untuk memublikasikan versi paket Maven ke repositori, atau untuk menambahkan atau menghapus tanda npm dari versi paket npm.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

PutPackageOriginConfiguration

codeartifact:PutPackageOriginConfiguration

Diperlukan untuk memperbarui konfigurasi asal paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

PutRepositoryPermissionsPolicy

codeartifact:PutRepositoryPermissionsPolicy

Diperlukan untuk menambahkan kebijakan sumber daya ke repositori.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

ReadFromRepository

codeartifact:ReadFromRepository

Diperlukan untuk membaca dari repositori menggunakan klien manajer paket.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

TagResource

codeartifact:TagResource

Diperlukan untuk menandai sumber daya.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

UntagResource

codeartifact:UntagResource

Diperlukan untuk menghapus tanda dari sumber daya.

arn:aws:codeartifact:region-ID:account-ID:domain/my_domain

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

UpdatePackageGroup

codeartifact:UpdatePackageGroup

Diperlukan untuk memperbarui grup paket.

arn:aws:codeartifact:region-ID:account-ID:package-group/my_domain/encoded_package_group_pattern

UpdatePackageGroupOriginConfiguration

codeartifact:UpdatePackageGroupOriginConfiguration

Diperlukan untuk memperbarui konfigurasi asal grup paket.

arn:aws:codeartifact:region-ID:account-ID:package-group/my_domain/encoded_package_group_pattern

UpdatePackageVersionsStatus

codeartifact:UpdatePackageVersionsStatus

Diperlukan untuk mengubah status versi paket.

arn:aws:codeartifact:region-ID:account-ID:package/my_domain/my_repo/package-format/namespace/my_package

UpdateRepository

codeartifact:UpdateRepository

Diperlukan untuk memperbarui deskripsi repositori atau koneksi hulu. Lihat Mengubah konfigurasi hulu repositori atau UpdateRepositorydi Panduan CodeArtifact API untuk informasi selengkapnya.

codeartifact:AssociateWithDownstreamRepository

Diperlukan pada repositori sehingga dapat ditambahkan sebagai repositori hulu ke repositori hilir.

arn:aws:codeartifact:region-ID:account-ID:repository/my_domain/my_repo

Package group ARN

catatan

Bagian ini tentang bagaimana ARN grup paket dan pengkodean pola bersifat informasi. Disarankan untuk menyalin ARN dari konsol, atau mengambil ARN menggunakan DescribePackageGroup API alih-alih mengkodekan pola dan membangun ARN.

Kebijakan IAM menggunakan karakter wildcard,*, untuk mencocokkan beberapa tindakan IAM atau beberapa sumber daya. Package group pattern juga menggunakan * karakter. Agar lebih mudah menulis kebijakan IAM yang cocok dengan satu grup paket, format ARN grup paket menggunakan versi pola grup paket yang dikodekan.

Secara khusus, format ARN grup paket adalah sebagai berikut:

arn:aws:codeartifact:region:account-ID:package-group/my_domain/encoded_package_group_pattern

Di mana pola grup paket yang dikodekan adalah pola grup paket, dengan karakter khusus tertentu diganti dengan nilai yang dikodekan persen. Daftar berikut berisi karakter dan nilai yang dikodekan persen yang sesuai:

  • * : %2a

  • $ : %24

  • % : %25

Misalnya, ARN untuk grup paket root domain, (/*), adalah:

arn:aws:codeartifact:us-east-1:111122223333:package-group/my_domain/%2a

Perhatikan bahwa karakter yang tidak termasuk dalam daftar tidak dapat dikodekan, dan ARN peka huruf besar/kecil, jadi * harus dikodekan sebagai dan tidak. %2a %2A