AWS CodeArtifact Referenz zu Berechtigungen - CodeArtifact

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS CodeArtifact Referenz zu Berechtigungen

AWS CodeArtifact Ressourcen und Operationen

AWS CodeArtifactIn ist die primäre Ressource eine Domain. In einer Richtlinie identifizieren Sie die Ressource, für welche die Richtlinie gilt, mithilfe eines Amazon-Ressourcennamens (ARN). Repositorys sind ebenfalls Ressourcen, denen ARNs zugeordnet sind. Weitere Informationen finden Sie unter Amazon-Ressourcennamen (ARNs) im Allgemeine Amazon Web Services-Referenz.

Ressourcentyp ARN-Format
Domain

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

Repository

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

Paketgruppe

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

Package mit einem Namespace

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

Package ohne Namespace

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

Alle Ressourcen CodeArtifact

arn:aws:codeartifact:*

Alle CodeArtifact Ressourcen, die dem angegebenen Konto in der angegebenen AWS-Region gehören

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

Welchen Ressourcen-ARN Sie angeben, hängt davon ab, auf welche Aktion oder Aktionen Sie den Zugriff kontrollieren möchten.

Sie können in Ihrem Kontoauszug eine bestimmte Domain (MyDomain) angeben, indem Sie deren ARN wie folgt verwenden.

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

Sie können in Ihrem Statement ein bestimmtes Repository (MyRepo) angeben, indem Sie dessen ARN wie folgt verwenden.

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

Um mehrere Ressourcen in einer einzigen Anweisung anzugeben, trennen Sie die ARNs durch ein Komma. Die folgende Aussage gilt für alle Pakete und Repositorys in einer bestimmten Domain.

"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/*" ]
Anmerkung

Viele AWS Dienste behandeln einen Doppelpunkt (:) oder einen Schrägstrich (/) als dasselbe Zeichen in ARNs. CodeArtifact Verwendet jedoch eine exakte Übereinstimmung in den Ressourcenmustern und Regeln. Verwenden Sie also die richtigen Zeichen zum Erstellen von Ereignismustern, sodass sie mit der ARN-Syntax in der Ressource übereinstimmen.

AWS CodeArtifact API-Operationen und Berechtigungen

Sie können die folgende Tabelle als Referenz verwenden, wenn Sie die Zugriffskontrolle einrichten und Berechtigungsrichtlinien schreiben, die Sie einer IAM-Identität zuordnen können (identitätsbasierte Richtlinien).

Sie können in Ihren AWS CodeArtifact Richtlinien AWS allgemeine Bedingungsschlüssel verwenden, um Bedingungen auszudrücken. Eine Liste finden Sie unter IAM JSON Policy Elements Reference im IAM-Benutzerhandbuch.

Sie geben die Aktionen im Feld Action der Richtlinie an. Um eine Aktion anzugeben, verwenden Sie das Präfix codeartifact: gefolgt vom Namen der API-Operation (z. B. codeartifact:CreateDomain und codeartifact:AssociateExternalConnection). Um mehrere Aktionen in einer einzigen Anweisung anzugeben, trennen Sie sie mit Komma (z. B. "Action": [ "codeartifact:CreateDomain", "codeartifact:AssociateExternalConnection" ]).

Verwenden von Platzhalterzeichen

Sie geben einen ARN mit oder ohne Platzhalterzeichen (*) als Ressourcenwert im Feld Resource der Richtlinie an. Sie können das Platzhalterzeichen verwenden, um mehrere Aktionen oder Ressourcen anzugeben. codeartifact:*Gibt beispielsweise alle Aktionen an und codeartifact:Describe* gibt alle CodeArtifact CodeArtifact Aktionen an, die mit dem Wort Describe beginnen.

CodeArtifact API-Operationen und erforderliche Berechtigungen für Aktionen
AWS CodeArtifact API-Operationen Erforderliche Berechtigungen (API-Aktionen) Ressourcen
AssociateExternalConnection

codeartifact:AssociateExternalConnection

Erforderlich, um eine externe Verbindung zu einem Repository hinzuzufügen.

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

CopyPackageVersions

Um Paketversionen von einem Quell-Repository in ein Ziel-Repository zu kopieren:

codeartifact:CopyPackageVersions

Für das Ziel-Repository erforderlich.

codeartifact:ReadFromRepository

Für das Quell-Repository erforderlich.

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

CreateDomain

codeartifact:CreateDomain

Erforderlich, um Domänen zu erstellen.

kms:DescribeKey und kms:CreateGrant

Erforderlich für den angegebenen KMS-Schlüssel, wenn ein anderer als der encryptionKey Standardschlüssel angegeben wird.

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

CreatePackageGroup

codeartifact:CreatePackageGroup

Erforderlich, um Paketgruppen zu erstellen.

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

CreateRepository

codeartifact:CreateRepository

Erforderlich, um Repositorys zu erstellen.

codeartifact:AssociateWithDownstreamRepository

Erforderlich für ein Repository, damit es als Upstream-Repository zu Downstream-Repositorys hinzugefügt werden kann.

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

DeleteDomain

codeartifact:DeleteDomain

Erforderlich, um Domänen zu löschen.

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

DeleteDomainPermissionsPolicy

codeartifact:DeleteDomainPermissionsPolicy

Erforderlich, um die Ressourcenrichtlinie einer Domain zu löschen.

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

DeletePackage

codeartifact:DeletePackage

Erforderlich, um ein Paket zu löschen.

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

DeletePackageGroup

codeartifact:DeletePackageGroup

Erforderlich, um eine Paketgruppe zu löschen.

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

DeletePackageVersions

codeartifact:DeletePackageVersions

Erforderlich, um Versionen eines Pakets zu löschen.

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

DeleteRepository

codeartifact:DeleteRepository

Erforderlich zum Löschen eines -Repositorys.

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

DeleteRepositoryPermissionsPolicy

codeartifact:DeleteRepositoryPermissionsPolicy

Erforderlich, um die Ressourcenrichtlinie eines Repositorys zu löschen.

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

DescribeDomain

codeartifact:DescribeDomain

Erforderlich, um Informationen über eine Domain abzurufen.

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

DescribePackage

codeartifact:DescribePackage

Erforderlich, um Informationen über ein Paket zu erhalten.

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

DescribePackageGroup

codeartifact:DescribePackageGroup

Erforderlich, um Informationen über eine Paketgruppe abzurufen.

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

DescribePackageVersion

codeartifact:DescribePackageVersion

Erforderlich, um Informationen über eine Paketversion abzurufen.

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

DescribeRepository

codeartifact:DescribeRepository

Erforderlich, um Informationen über ein Repository abzurufen.

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

DisassociateExternalConnection

codeartifact:DisassociateExternalConnection

Erforderlich, um eine externe Verbindung aus einem Repository zu entfernen.

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

DisposePackageVersions

codeartifact:DisposePackageVersions

Erforderlich, um Versionen eines Pakets zu löschen.

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

GetAssociatedPackageGroup

codeartifact:GetAssociatedPackageGroup

Erforderlich, um die zugehörige Paketgruppe eines Pakets abzurufen.

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

GetAuthorizationToken

codeartifact:GetAuthorizationToken

sts:GetServiceBearerToken

Erforderlich, um ein temporäres Autorisierungstoken für den Zugriff auf Repositorys zu erhalten.

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

GetDomainPermissionsPolicy

codeartifact:GetDomainPermissionsPolicy

Erforderlich, um eine Domain-Ressourcenrichtlinie zu erhalten.

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

GetPackageVersionAsset

codeartifact:GetPackageVersionAsset

Erforderlich, um Assets in einer Paketversion abzurufen.

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

codeartifact:GetPackageVersionReadme

Erforderlich, um die Readme-Datei einer Paketversion abzurufen.

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

GetRepositoryEndpoint

codeartifact:GetRepositoryEndpoint

Erforderlich, um einen Repository-Endpunkt zu erhalten.

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

GetRepositoryPermissionsPolicy

codeartifact:GetRepositoryPermissionsPolicy

Erforderlich, um eine Repository-Ressourcenrichtlinie abzurufen.

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

ListAssociatedPackages

codeartifact:ListAssociatedPackages

Erforderlich, um eine Liste von Paketen zurückzugeben, die einer Paketgruppe zugeordnet sind.

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

ListDomains

codeartifact:ListDomains

Erforderlich, um eine paginierte Liste von Domains in einem AWS-Konto zurückzugeben.

*

ListPackageGroups

codeartifact:ListPackageGroups

Erforderlich, um eine paginierte Liste von Paketgruppen in einer Domain zurückzugeben.

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

ListPackages

codeartifact:ListPackages

Erforderlich, um eine paginierte Liste von Paketen in einem Repository zurückzugeben.

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

ListPackageVersionAssets

codeartifact:ListPackageVersionAssets

Erforderlich, um eine paginierte Liste von Assets in einer Paketversion zurückzugeben.

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

ListPackageVersionDependencies

codeartifact:ListPackageVersionDependencies

Erforderlich, um eine paginierte Liste der Abhängigkeiten einer Paketversion zurückzugeben.

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

ListPackageVersions

codeartifact:ListPackageVersions

Erforderlich, um eine paginierte Liste von Paketversionen in einem Repository zurückzugeben.

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

ListRepositories

codeartifact:ListRepositories

Erforderlich, um eine paginierte Liste von Repositorys in einem AWS-Konto zurückzugeben.

*

ListRepositoriesInDomain

codeartifact:ListRepositoriesInDomain

Erforderlich, um eine paginierte Liste von Repositorys in einer Domain zurückzugeben.

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

ListSubPackageGroups

codeartifact:ListSubPackageGroups

Erforderlich, um eine Liste direkter untergeordneter Paketgruppen einer Paketgruppe zurückzugeben.

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

ListTagsForResource

codeartifact:ListTagsForResource

Erforderlich, um Tags für eine angegebene Ressource aufzulisten.

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

Erforderlich, um eine Paketversion in einem Repository zu veröffentlichen.

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

PutDomainPermissionsPolicy

codeartifact:PutDomainPermissionsPolicy

Erforderlich, um einer Domain eine Ressourcenrichtlinie hinzuzufügen.

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

PutPackageMetadata

codeartifact:PutPackageMetadata

Erforderlich, um Maven-Paketversionen in einem Repository zu veröffentlichen oder NPM-Tags zu npm-Paketversionen hinzuzufügen oder zu entfernen.

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

PutPackageOriginConfiguration

codeartifact:PutPackageOriginConfiguration

Erforderlich, um die Originalkonfiguration eines Pakets zu aktualisieren.

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

PutRepositoryPermissionsPolicy

codeartifact:PutRepositoryPermissionsPolicy

Erforderlich, um einem Repository eine Ressourcenrichtlinie hinzuzufügen.

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

ReadFromRepository

codeartifact:ReadFromRepository

Erforderlich, um mit einem Paketmanager-Client aus einem Repository zu lesen.

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

TagResource

codeartifact:TagResource

Erforderlich, um eine Ressource zu taggen.

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

Erforderlich, um ein Tag aus einer Ressource zu entfernen.

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

Erforderlich, um eine Paketgruppe zu aktualisieren.

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

UpdatePackageGroupOriginConfiguration

codeartifact:UpdatePackageGroupOriginConfiguration

Erforderlich, um die Ursprungskonfiguration einer Paketgruppe zu aktualisieren.

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

UpdatePackageVersionsStatus

codeartifact:UpdatePackageVersionsStatus

Erforderlich, um den Status einer Paketversion zu ändern.

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

UpdateRepository

codeartifact:UpdateRepository

Erforderlich, um die Beschreibung eines Repositorys oder die Upstream-Verbindungen zu aktualisieren. Weitere Informationen finden Sie unter Ändern Sie die Upstream-Konfiguration eines Repositor oder UpdateRepositoryim CodeArtifact API-Leitfaden.

codeartifact:AssociateWithDownstreamRepository

Erforderlich für ein Repository, damit es als Upstream-Repository zu Downstream-Repositorys hinzugefügt werden kann.

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

ARNs der Paketgruppe

Anmerkung

Dieser Abschnitt darüber, wie Paketgruppen-ARNs und Musterkodierung beschrieben werden, ist informativ. Es wird empfohlen, ARNs von der Konsole zu kopieren oder ARNs mithilfe der DescribePackageGroup API abzurufen, anstatt Muster zu kodieren und ARNs zu erstellen.

IAM-Richtlinien verwenden das Platzhalterzeichen,, um mehreren IAM-Aktionen oder * mehreren Ressourcen zuzuordnen. Paketgruppenmuster verwenden das * Zeichen ebenfalls. Um IAM-Richtlinien, die einer einzelnen Paketgruppe entsprechen, einfacher schreiben zu können, verwendet das ARN-Format für Paketgruppen eine kodierte Version des Paketgruppenmusters.

Insbesondere lautet das ARN-Format der Paketgruppe wie folgt:

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

Wobei das kodierte Paketgruppenmuster das Paketgruppenmuster ist, wobei bestimmte Sonderzeichen durch ihre prozentkodierten Werte ersetzt werden. Die folgende Liste enthält die Zeichen und ihre entsprechenden prozentkodierten Werte:

  • * : %2a

  • $ : %24

  • % : %25

Der ARN für eine Stammpaketgruppe einer Domain, (/*), wäre beispielsweise:

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

Beachten Sie, dass Zeichen, die nicht in der Liste enthalten sind, nicht kodiert werden können und ARNs zwischen Groß- und Kleinschreibung unterscheiden. Sie * müssen also als und nicht codiert werden. %2a %2A