AWS CodeCommit ist für Neukunden nicht mehr verfügbar. Bestandskunden von AWS CodeCommit können den Service weiterhin wie gewohnt nutzen. Erfahren Sie mehr“
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.
Identity and Access Management für AWS CodeCommit
AWS Identity and Access Management (IAM) hilft einem Administrator AWS-Service , den Zugriff auf AWS Ressourcen sicher zu kontrollieren. IAM-Administratoren kontrollieren, wer authentifiziert (angemeldet) und autorisiert werden kann (über Berechtigungen verfügt), um Ressourcen zu verwenden. CodeCommit IAM ist ein Programm AWS-Service , das Sie ohne zusätzliche Kosten nutzen können.
Themen
Zielgruppe
Wie Sie AWS Identity and Access Management (IAM) verwenden, hängt von Ihrer Rolle ab:
-
Servicebenutzer — fordern Sie von Ihrem Administrator Berechtigungen an, wenn Sie nicht auf Funktionen zugreifen können (sieheProblembehebung bei AWS CodeCommit Identität und Zugriff)
-
Dienstadministrator — bestimmen Sie den Benutzerzugriff und reichen Sie Berechtigungsanfragen ein (sieheWie AWS CodeCommit funktioniert mit IAM)
-
IAM-Administrator — Schreiben Sie Richtlinien zur Zugriffsverwaltung (sieheAWS CodeCommit Beispiele für identitätsbasierte Richtlinien)
Authentifizierung mit Identitäten
Authentifizierung ist die Art und Weise, wie Sie sich AWS mit Ihren Identitätsdaten anmelden. Sie müssen sich als IAM-Benutzer authentifizieren oder eine IAM-Rolle annehmen. Root-Benutzer des AWS-Kontos
Sie können sich als föderierte Identität anmelden, indem Sie Anmeldeinformationen aus einer Identitätsquelle wie AWS IAM Identity Center (IAM Identity Center), Single Sign-On-Authentifizierung oder Anmeldeinformationen verwenden. Google/Facebook Weitere Informationen zur Anmeldung finden Sie unter So melden Sie sich bei Ihrem an AWS-Konto imAWS-Anmeldung Benutzerhandbuch.
AWS Bietet für den programmatischen Zugriff ein SDK und eine CLI zum kryptografischen Signieren von Anfragen. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter AWS Signature Version 4 für API-Anfragen.
AWS-Konto Root-Benutzer
Wenn Sie einen erstellen AWS-Konto, beginnen Sie mit einer Anmeldeidentität, dem sogenannten AWS-Konto Root-Benutzer, der vollständigen Zugriff auf alle AWS-Services Ressourcen hat. Wir empfehlen dringend, den Root-Benutzer nicht für alltägliche Aufgaben zu verwenden. Informationen zu Aufgaben, für die Root-Benutzeranmeldedaten erforderlich sind, finden Sie im IAM-Benutzerhandbuch unter Aufgaben, für die Root-Benutzeranmeldedaten erforderlich sind.
IAM-Benutzer und -Gruppen
Ein IAM-Benutzer ist eine Identität mit bestimmten Berechtigungen für eine einzelne Person oder Anwendung. Wir empfehlen, temporäre Anmeldeinformationen anstelle von IAM-Benutzern mit langfristigen Anmeldeinformationen zu verwenden. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Erfordern, dass menschliche Benutzer den Verbund mit einem Identitätsanbieter verwenden müssen, um AWS mithilfe temporärer Anmeldeinformationen darauf zuzugreifen.
Eine IAM-Gruppe spezifiziert eine Sammlung von IAM-Benutzern und erleichtert die Verwaltung von Berechtigungen für große Benutzergruppen. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Anwendungsfälle für IAM-Benutzer.
IAM roles
Eine IAM-Rolle ist eine Identität mit bestimmten Berechtigungen, die temporäre Anmeldeinformationen bereitstellt. Sie können eine Rolle übernehmen, indem Sie von einem Benutzer zu einer IAM-Rolle (Konsole) wechseln oder indem Sie eine AWS CLI oder AWS API-Operation aufrufen. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Methoden zur Übernahme einer Rolle.
IAM-Rollen sind nützlich für Verbundbenutzerzugriff, temporäre IAM-Benutzerberechtigungen, kontoübergreifenden Zugriff, dienstübergreifenden Zugriff und Anwendungen, die auf Amazon ausgeführt werden. EC2 Weitere Informationen finden Sie unter Kontoübergreifender Ressourcenzugriff in IAM im IAM-Benutzerhandbuch.
Verwalten des Zugriffs mit Richtlinien
Sie kontrollieren den Zugriff, AWS indem Sie Richtlinien erstellen und diese an Identitäten oder Ressourcen anhängen. AWS Eine Richtlinie definiert Berechtigungen, wenn sie mit einer Identität oder Ressource verknüpft sind. AWS bewertet diese Richtlinien, wenn ein Principal eine Anfrage stellt. Die meisten Richtlinien werden AWS als JSON-Dokumente gespeichert. Weitere Informationen zu JSON-Richtliniendokumenten finden Sie im IAM-Benutzerhandbuch unter Überblick über JSON-Richtlinien.
Mithilfe von Richtlinien legen Administratoren fest, wer auf was Zugriff hat, indem sie definieren, welcher Principal Aktionen mit welchen Ressourcen und unter welchen Bedingungen ausführen kann.
Standardmäßig haben Benutzer, Gruppen und Rollen keine Berechtigungen. Ein IAM-Administrator erstellt IAM-Richtlinien und fügt sie Rollen hinzu, die Benutzer dann übernehmen können. IAM-Richtlinien definieren Berechtigungen unabhängig von der Methode, die zur Ausführung des Vorgangs verwendet wird.
Identitätsbasierte Richtlinien
Identitätsbasierte Richtlinien sind Richtliniendokumente für JSON-Berechtigungen, die Sie an eine Identität (Benutzer, Gruppe oder Rolle) anhängen. Diese Richtlinien steuern, welche Aktionen Identitäten auf welchen Ressourcen und unter welchen Bedingungen ausführen können. Informationen zum Erstellen identitätsbasierter Richtlinien finden Sie unter Definieren benutzerdefinierter IAM-Berechtigungen mit vom Kunden verwalteten Richtlinien im IAM-Benutzerhandbuch.
Bei identitätsbasierten Richtlinien kann es sich um Inline-Richtlinien (direkt in eine einzelne Identität eingebettet) oder um verwaltete Richtlinien (eigenständige Richtlinien, die mehreren Identitäten zugeordnet sind) handeln. Informationen zur Auswahl zwischen verwalteten und Inline-Richtlinien finden Sie im IAM-Benutzerhandbuch unter Wählen Sie zwischen verwalteten Richtlinien und Inline-Richtlinien.
Ressourcenbasierte Richtlinien
Ressourcenbasierte Richtlinien sind JSON-Richtliniendokumente, die Sie an eine Ressource anfügen. Beispiele hierfür sind Vertrauensrichtlinien für IAM-Rollen und Amazon S3 S3-Bucket-Richtlinien. In Services, die ressourcenbasierte Richtlinien unterstützen, können Service-Administratoren sie verwenden, um den Zugriff auf eine bestimmte Ressource zu steuern. Sie müssen in einer ressourcenbasierten Richtlinie einen Prinzipal angeben.
Ressourcenbasierte Richtlinien sind Richtlinien innerhalb dieses Diensts. Sie können AWS verwaltete Richtlinien von IAM nicht in einer ressourcenbasierten Richtlinie verwenden.
Zugriffskontrolllisten () ACLs
Zugriffskontrolllisten (ACLs) steuern, welche Principals (Kontomitglieder, Benutzer oder Rollen) über Zugriffsberechtigungen für eine Ressource verfügen. ACLs ähneln ressourcenbasierten Richtlinien, verwenden jedoch nicht das JSON-Richtliniendokumentformat.
Amazon S3 und Amazon VPC sind Beispiele für Dienste, die Unterstützung ACLs bieten. AWS WAF Weitere Informationen finden Sie unter Übersicht über ACLs die Zugriffskontrollliste (ACL) im Amazon Simple Storage Service Developer Guide.
Weitere Richtlinientypen
AWS unterstützt zusätzliche Richtlinientypen, mit denen die maximalen Berechtigungen festgelegt werden können, die durch gängigere Richtlinientypen gewährt werden:
-
Berechtigungsgrenzen — Legen Sie die maximalen Berechtigungen fest, die eine identitätsbasierte Richtlinie einer IAM-Entität gewähren kann. Weitere Informationen finden Sie unter Berechtigungsgrenzen für IAM-Entitäten im -IAM-Benutzerhandbuch.
-
Richtlinien zur Dienststeuerung (SCPs) — Geben Sie die maximalen Berechtigungen für eine Organisation oder Organisationseinheit in an. AWS Organizations Weitere Informationen finden Sie unter Service-Kontrollrichtlinien im AWS Organizations -Benutzerhandbuch.
-
Richtlinien zur Ressourcenkontrolle (RCPs) — Legen Sie die maximal verfügbaren Berechtigungen für Ressourcen in Ihren Konten fest. Weitere Informationen finden Sie im AWS Organizations Benutzerhandbuch unter Richtlinien zur Ressourcenkontrolle (RCPs).
-
Sitzungsrichtlinien — Erweiterte Richtlinien, die beim Erstellen einer temporären Sitzung für eine Rolle oder einen Verbundbenutzer als Parameter übergeben werden. Weitere Informationen finden Sie unter Sitzungsrichtlinien im IAM-Benutzerhandbuch.
Mehrere Richtlinientypen
Wenn mehrere auf eine Anforderung mehrere Richtlinientypen angewendet werden können, sind die entsprechenden Berechtigungen komplizierter. Informationen darüber, wie AWS bestimmt wird, ob eine Anfrage zulässig ist, wenn mehrere Richtlinientypen betroffen sind, finden Sie unter Bewertungslogik für Richtlinien im IAM-Benutzerhandbuch.
Ressourcenbasierte CodeCommit-Richtlinien
CodeCommit unterstützt keine ressourcenbasierten Richtlinien.
Autorisierung auf der Grundlage von Tags CodeCommit
Sie können Tags an CodeCommit Ressourcen anhängen oder Tags in einer Anfrage an übergeben CodeCommit. Um den Zugriff auf der Grundlage von Tags zu steuern, geben Sie im Bedingungselement einer Richtlinie Tag-Informationen an, indem Sie die Schlüssel codecommit:ResourceTag/, key-nameaws:RequestTag/, oder Bedingung key-nameaws:TagKeys verwenden. Weitere Informationen zum Markieren von CodeCommit Ressourcen finden Sie unterBeispiel 5: Aktionen für Repositorys mit Tags verweigern oder zulassen. Weitere Informationen zu Tagging-Strategien finden Sie unter AWS Tagging Resources.
CodeCommit unterstützt auch Richtlinien, die auf Sitzungs-Tags basieren. Weitere Informationen finden Sie unter Sitzungs-Tags
Verwendung von Tags zur Bereitstellung von Identitätsinformationen in CodeCommit
CodeCommit unterstützt die Verwendung von Sitzungs-Tags, bei denen es sich um Schlüssel-Wert-Paarattribute handelt, die Sie übergeben, wenn Sie eine IAM-Rolle übernehmen, temporäre Anmeldeinformationen verwenden oder einen Benutzer in () verbinden. AWS Security Token Service AWS STS Sie können Tags auch einem IAM-Benutzer zuordnen. Sie können die in diesen Tags enthaltenen Informationen verwenden, um leichter zu ermitteln, wer eine Änderung vorgenommen oder ein Ereignis verursacht hat. CodeCommit schließt die Werte für Tags mit den folgenden Schlüsselnamen in CodeCommit Ereignisse ein:
| Tastenname | Wert |
|---|---|
displayName |
Der für den Benutzer lesbare Name, der angezeigt und mit dem Benutzer verknüpft werden soll (z. B. Mary Major oder Saanvi Sarkar). |
emailAddress |
Die E-Mail-Adresse, die für den Benutzer angezeigt und mit ihm verknüpft werden soll (z. B. mary_major@example.com oder saanvi_sarkar@example.com). |
Wenn diese Informationen bereitgestellt werden, werden sie CodeCommit in Veranstaltungen aufgenommen, die an Amazon EventBridge und Amazon CloudWatch Events gesendet werden. Weitere Informationen finden Sie unter Überwachung von CodeCommit Ereignissen in Amazon EventBridge und Amazon CloudWatch Events.
Um die Sitzungsmarkierung zu verwenden, müssen Rollen Richtlinien enthalten, bei denen die sts:TagSession-Berechtigung auf Allow gesetzt ist. Wenn Sie den Verbundzugriff verwenden, können Sie den Anzeigenamen und die E-Mail-Tag-Informationen im Rahmen Ihrer Einrichtung konfigurieren. Wenn Sie beispielsweise Azure Active Directory verwenden, können Sie die folgenden Antragsinformationen angeben:
| Name des Antrags | Wert |
|---|---|
https://aws.amazon.com/SAML/Attributes/PrincipalTag:displayName |
user.displayname |
https://aws.amazon.com/SAML/Attributes/PrincipalTag:emailAddress |
user.mail |
Sie können die verwenden AWS CLI , um Sitzungs-Tags zu übergeben displayName und zu emailAddress verwendenAssumeRole. Beispielsweise Mary Major könnte ein Benutzer, der eine Rolle mit dem Namen Developer Wer möchte ihm seinen Namen zuordnen möchten, den assume-role Befehl ähnlich dem folgenden verwenden:
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
Weitere Informationen finden Sie unter AssumeRole.
Sie können den Vorgang AssumeRoleWithSAML verwenden, um einen Satz temporärer Anmeldeinformationen zurückzugeben, die die Tags emailAddress und displayName enthalten. Sie können diese Tags verwenden, wenn Sie auf CodeCommit-Repositorys zugreifen. Dies setzt voraus, dass Ihr Unternehmen oder Ihre Gruppe Ihre SAML-Lösung eines Drittanbieters bereits integriert hat. AWS Wenn dies der Fall ist, können Sie SAML-Attribute als Sitzungs-Tags übergeben. Wenn Sie beispielsweise Identitätsattribute für einen Anzeigenamen und eine E-Mail-Adresse für einen Benutzer übergeben möchten, der Saanvi Sarkar als Sitzungs-Tags benannt ist:
<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>
Weitere Informationen finden Sie unter Übergeben von Sitzungs-Tags mithilfe von AssumeRoleWith SAML.
Sie können den Vorgang AssumeRoleWithIdentity verwenden, um einen Satz temporärer Anmeldeinformationen zurückzugeben, die die Tags emailAddress und displayName enthalten. Sie können diese Tags verwenden, wenn Sie auf CodeCommit-Repositorys zugreifen. Um Sitzungs-Tags von OpenID Connect (OIDC) zu übergeben, müssen Sie die Sitzungs-Tags in das JSON Web Token (JWT) einbeziehen. Zum Beispiel enthält das dekodierte JWP-Token, das für den Aufruf verwendet wirdAssumeRoleWithWebIdentity, die Tags displayName und die emailAddress Sitzungs-Tags für einen Benutzer mit dem Namen: 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" ] } }
Weitere Informationen finden Sie unter Übergeben von Sitzungs-Tags mithilfe von. AssumeRoleWithWebIdentity
Sie können den Vorgang GetFederationToken verwenden, um einen Satz temporärer Anmeldeinformationen zurückzugeben, die die Tags emailAddress und displayName enthalten. Sie können diese Tags verwenden, wenn Sie auf CodeCommit-Repositorys zugreifen. Um beispielsweise den zu verwenden, AWS CLI um ein Verbund-Token abzurufen, das die emailAddress Tags displayName und enthält:
aws sts get-federation-token \ --name my-federated-user \ –-tags key=displayName,value="Nikhil Jayashankar" key=emailAddress,value=nikhil_jayashankar@example.com
Weitere Informationen finden Sie unter Übergeben von Sitzungs-Tags mithilfe von GetFederationToken.
CodeCommit IAM-Rollen
Eine IAM-Rolle ist eine Entität in Ihrem Amazon–Web-Services-Konto mit spezifischen Berechtigungen.
Verwenden temporärer Anmeldeinformationen mit CodeCommit
Sie können temporäre Anmeldeinformationen verwenden, um sich über einen Verbund anzumelden, eine IAM-Rolle anzunehmen oder eine kontenübergreifende Rolle anzunehmen. Sie erhalten temporäre Sicherheitsanmeldedaten, indem Sie AWS STS API-Operationen wie AssumeRoleoder aufrufen GetFederationToken.
CodeCommit unterstützt die Verwendung temporärer Anmeldeinformationen. Weitere Informationen finden Sie unter Verbindung zu AWS CodeCommit Repositorys mit rotierenden Anmeldeinformationen herstellen.
Service-verknüpfte Rollen
Mit Dienstverknüpften Rollen können AWS Dienste auf Ressourcen in anderen Diensten zugreifen, um eine Aktion in Ihrem Namen auszuführen. Serviceverknüpfte Rollen werden in Ihrem IAM-Konto angezeigt und gehören zum Service. Ein IAM-Administrator kann die Berechtigungen für serviceverknüpfte Rollen anzeigen, aber nicht bearbeiten.
CodeCommit verwendet keine dienstbezogenen Rollen.
Servicerollen
Dieses Feature ermöglicht einem Service das Annehmen einer Servicerolle in Ihrem Namen. Diese Rolle gewährt dem Service Zugriff auf Ressourcen in anderen Diensten, um eine Aktion in Ihrem Namen auszuführen. Servicerollen werden in Ihrem IAM-Konto angezeigt und gehören zum Konto. Dies bedeutet, dass ein IAM-Administrator die Berechtigungen für diese Rolle ändern kann. Dies kann jedoch die Funktionalität des Dienstes beeinträchtigen.
CodeCommit verwendet keine Servicerollen.
AWS CodeCommit Beispiele für identitätsbasierte Richtlinien
IAM-Benutzer besitzen keine Berechtigungen zum Erstellen oder Ändern von CodeCommit -Ressourcen. Sie können auch keine Aufgaben mit der AWS-Managementkonsole AWS CLI, oder AWS API ausführen. Ein IAM-Administrator muss IAM-Richtlinien erstellen, die Benutzern und Rollen die Berechtigung zum Ausführen bestimmter API-Operationen für die angegebenen Ressourcen gewähren, die diese benötigen. Der Administrator muss diese Richtlinien anschließend den IAM-Benutzern oder -Gruppen anfügen, die diese Berechtigungen benötigen.
Beispiele für diese Richtlinien finden Sie unter:
-
Beispiel 1: Erlauben Sie einem Benutzer, Operationen CodeCommit in einem einzigen AWS-Region
-
Beispiel 2: Erlaube einem Benutzer, Git für ein einzelnes Repository zu verwenden
-
Beispiel 5: Aktionen für Repositorys mit Tags verweigern oder zulassen
-
Konfiguriere den kontoübergreifenden Zugriff auf ein AWS CodeCommit Repository mithilfe von Rollen
Informationen dazu, wie Sie unter Verwendung dieser beispielhaften JSON-Richtliniendokumente eine identitätsbasierte IAM-Richtlinie erstellen, finden Sie unter Erstellen von Richtlinien auf der JSON-Registerkarte im IAM-Benutzerhandbuch.
Themen
Bewährte Methoden für Richtlinien
Identitätsbasierte Richtlinien legen fest, ob jemand CodeCommit Ressourcen in Ihrem Konto erstellen, darauf zugreifen oder sie löschen kann. Dies kann zusätzliche Kosten für Ihr verursachen AWS-Konto. Befolgen Sie beim Erstellen oder Bearbeiten identitätsbasierter Richtlinien die folgenden Anleitungen und Empfehlungen:
-
Beginnen Sie mit AWS verwalteten Richtlinien und wechseln Sie zu Berechtigungen mit den geringsten Rechten — Verwenden Sie die AWS verwalteten Richtlinien, die Berechtigungen für viele gängige Anwendungsfälle gewähren, um Ihren Benutzern und Workloads zunächst Berechtigungen zu gewähren. Sie sind in Ihrem verfügbar. AWS-Konto Wir empfehlen Ihnen, die Berechtigungen weiter zu reduzieren, indem Sie vom AWS Kunden verwaltete Richtlinien definieren, die speziell auf Ihre Anwendungsfälle zugeschnitten sind. Weitere Informationen finden Sie unter AWS -verwaltete Richtlinien oder AWS -verwaltete Richtlinien für Auftrags-Funktionen im IAM-Benutzerhandbuch.
-
Anwendung von Berechtigungen mit den geringsten Rechten – Wenn Sie mit IAM-Richtlinien Berechtigungen festlegen, gewähren Sie nur die Berechtigungen, die für die Durchführung einer Aufgabe erforderlich sind. Dies ist möglich, indem Sie die Aktionen definieren, die unter bestimmten Bedingungen für bestimmte Ressourcen ausgeführt werden können. Dies wird auch als Berechtigungen mit geringsten Rechten bezeichnet. Weitere Informationen zur Verwendung von IAM zum Anwenden von Berechtigungen finden Sie unter Richtlinien und Berechtigungen in IAM im IAM-Benutzerhandbuch.
-
Verwenden von Bedingungen in IAM-Richtlinien zur weiteren Einschränkung des Zugriffs – Sie können Ihren Richtlinien eine Bedingung hinzufügen, um den Zugriff auf Aktionen und Ressourcen zu beschränken. Sie können beispielsweise eine Richtlinienbedingung schreiben, um anzugeben, dass alle Anforderungen mit SSL gesendet werden müssen. Sie können auch Bedingungen verwenden, um Zugriff auf Serviceaktionen zu gewähren, wenn diese für einen bestimmten Zweck verwendet werden AWS-Service, z. CloudFormation B. Weitere Informationen finden Sie unter IAM-JSON-Richtlinienelemente: Bedingung im IAM-Benutzerhandbuch.
-
Verwenden von IAM Access Analyzer zur Validierung Ihrer IAM-Richtlinien, um sichere und funktionale Berechtigungen zu gewährleisten – IAM Access Analyzer validiert neue und vorhandene Richtlinien, damit die Richtlinien der IAM-Richtliniensprache (JSON) und den bewährten IAM-Methoden entsprechen. IAM Access Analyzer stellt mehr als 100 Richtlinienprüfungen und umsetzbare Empfehlungen zur Verfügung, damit Sie sichere und funktionale Richtlinien erstellen können. Weitere Informationen finden Sie unter Richtlinienvalidierung mit IAM Access Analyzer im IAM-Benutzerhandbuch.
-
Multi-Faktor-Authentifizierung (MFA) erforderlich — Wenn Sie ein Szenario haben, das IAM-Benutzer oder einen Root-Benutzer in Ihrem System erfordert AWS-Konto, aktivieren Sie MFA für zusätzliche Sicherheit. Wenn MFA beim Aufruf von API-Vorgängen erforderlich sein soll, fügen Sie Ihren Richtlinien MFA-Bedingungen hinzu. Weitere Informationen finden Sie unter Sicherer API-Zugriff mit MFA im IAM-Benutzerhandbuch.
Weitere Informationen zu bewährten Methoden in IAM finden Sie unter Bewährte Methoden für die Sicherheit in IAM im IAM-Benutzerhandbuch.
Verwenden der CodeCommit -Konsole
Um auf die AWS CodeCommit Konsole zugreifen zu können, benötigen Sie ein Mindestmaß an Berechtigungen. Diese Berechtigungen müssen es Ihnen ermöglichen, Informationen zu den CodeCommit Ressourcen in Ihrem Amazon Web Services Services-Konto aufzulisten und einzusehen. Wenn Sie eine identitätsbasierte Richtlinie erstellen, die strenger ist als die mindestens erforderlichen Berechtigungen, funktioniert die Konsole nicht wie vorgesehen für Entitäten (IAM-Benutzer oder -Rollen) mit dieser Richtlinie.
Um sicherzustellen, dass diese Entitäten die CodeCommit Konsole weiterhin verwenden können, fügen Sie den Entitäten außerdem die folgende AWS verwaltete Richtlinie hinzu. Weitere Informationen finden Sie unter Hinzufügen von Berechtigungen zu einem Benutzer im IAM-Benutzerhandbuch:
Weitere Informationen finden Sie unter Verwendung identitätsbasierter Richtlinien (IAM-Richtlinien) für CodeCommit.
Sie müssen Benutzern, die nur die API AWS CLI oder die AWS API aufrufen, keine Mindestberechtigungen für die Konsole gewähren. Stattdessen sollten Sie nur Zugriff auf die Aktionen zulassen, die den API-Operation entsprechen, die Sie ausführen möchten.
Gewähren der Berechtigung zur Anzeige der eigenen Berechtigungen für Benutzer
In diesem Beispiel wird gezeigt, wie Sie eine Richtlinie erstellen, die IAM-Benutzern die Berechtigung zum Anzeigen der eingebundenen Richtlinien und verwalteten Richtlinien gewährt, die ihrer Benutzeridentität angefügt sind. Diese Richtlinie umfasst Berechtigungen zum Ausführen dieser Aktion auf der Konsole oder programmgesteuert mithilfe der API AWS CLI oder 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": "*" } ] }
Anzeige CodeCommit repositories auf Grundlage von Stichworten
Sie können in Ihrer identitätsbasierten Richtlinie Bedingungen für die Steuerung des Zugriffs auf CodeCommit -Ressourcen auf der Basis von Tags verwenden. Eine Beispielrichtlinie, die die Vorgehensweise veranschaulicht, finden Sie unter Beispiel 5: Aktionen für Repositorys mit Tags verweigern oder zulassen.
Weitere Informationen finden Sie unter IAM-JSON-Richtlinienelemente: Bedingung im IAM-Benutzerhandbuch.
Problembehebung bei AWS CodeCommit Identität und Zugriff
Verwenden Sie die folgenden Informationen, um häufig auftretende Probleme zu diagnostizieren und zu beheben, die bei der Arbeit mit CodeCommit und IAM auftreten können.
Themen
Ich bin nicht berechtigt, eine Aktion durchzuführen in CodeCommit
Wenn Ihnen AWS-Managementkonsole mitgeteilt wird, dass Sie nicht berechtigt sind, eine Aktion durchzuführen, müssen Sie sich an Ihren Administrator wenden, um Unterstützung zu erhalten. Ihr Administrator hat Ihnen Ihre Anmeldeinformationen zur Verfügung gestellt.
Weitere Informationen finden Sie unter Erforderliche Berechtigungen für die Verwendung der CodeCommit-Konsole.
Ich bin nicht berechtigt, iam auszuführen: PassRole
Wenn Sie eine Fehlermeldung erhalten, dass Sie nicht autorisiert sind, die iam:PassRole-Aktion auszuführen, müssen Ihre Richtlinien aktualisiert werden, damit Sie eine Rolle an CodeCommit übergeben können.
Einige AWS-Services ermöglichen es Ihnen, eine bestehende Rolle an diesen Dienst zu übergeben, anstatt eine neue Servicerolle oder eine dienstverknüpfte Rolle zu erstellen. Hierzu benötigen Sie Berechtigungen für die Übergabe der Rolle an den Dienst.
Der folgende Beispielfehler tritt auf, wenn ein IAM-Benutzer mit dem Namen marymajor versucht, die Konsole zu verwenden, um eine Aktion in CodeCommit auszuführen. Um die Aktion ausführen zu können, benötigt der Service jedoch Berechtigungen, die von einer Servicerolle gewährt werden. Mary besitzt keine Berechtigungen für die Übergabe der Rolle an den Dienst.
User: arn:aws:iam::123456789012:user/marymajoris not authorized to perform: iam:PassRole
In diesem Fall müssen die Richtlinien von Mary aktualisiert werden, um die Aktion iam:PassRole ausführen zu können.
Wenn Sie Hilfe benötigen, wenden Sie sich an Ihren AWS Administrator. Ihr Administrator hat Ihnen Ihre Anmeldeinformationen odzur Verfügung gestellt.
Ich möchte meine Zugriffsschlüssel anzeigen
Nachdem Sie Ihre IAM-Benutzerzugriffsschlüssel erstellt haben, können Sie Ihre Zugriffsschlüssel-ID jederzeit anzeigen. Sie können Ihren geheimen Zugriffsschlüssel jedoch nicht erneut anzeigen. Wenn Sie den geheimen Zugriffsschlüssel verlieren, müssen Sie ein neues Zugriffsschlüsselpaar erstellen.
Zugriffsschlüssel bestehen aus zwei Teilen: einer Zugriffsschlüssel-ID (z. B. AKIAIOSFODNN7EXAMPLE) und einem geheimen Zugriffsschlüssel (z. B. wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY). Ähnlich wie bei Benutzernamen und Passwörtern müssen Sie die Zugriffsschlüssel-ID und den geheimen Zugriffsschlüssel zusammen verwenden, um Ihre Anforderungen zu authentifizieren. Verwalten Sie Ihre Zugriffsschlüssel so sicher wie Ihren Benutzernamen und Ihr Passwort.
Wichtig
Stellen Sie Ihre Zugriffsschlüssel keinen Dritten bereit, auch nicht, wenn Sie Hilfe bei der Suche nach Ihrer kanonischen Benutzer-ID benötigen. Auf diese Weise können Sie jemandem dauerhaften Zugriff auf Ihre gewähren AWS-Konto.
Während der Erstellung eines Zugriffsschlüsselpaars werden Sie aufgefordert, die Zugriffsschlüssel-ID und den geheimen Zugriffsschlüssel an einem sicheren Speicherort zu speichern. Der geheime Zugriffsschlüssel ist nur zu dem Zeitpunkt verfügbar, an dem Sie ihn erstellen. Wenn Sie Ihren geheimen Zugriffsschlüssel verlieren, müssen Sie Ihrem IAM-Benutzer neue Zugriffsschlüssel hinzufügen. Sie können maximal zwei Zugriffsschlüssel besitzen. Wenn Sie bereits zwei Zugriffschlüssel besitzen, müssen Sie ein Schlüsselpaar löschen, bevor Sie ein neues erstellen. Anweisungen hierfür finden Sie unter Verwalten von Zugriffsschlüsseln im IAM-Benutzerhandbuch.
Ich bin Administrator und möchte anderen den Zugriff ermöglichen CodeCommit
Um anderen den Zugriff zu ermöglichen CodeCommit, müssen Sie den Personen oder Anwendungen, die Zugriff benötigen, die entsprechenden Berechtigungen erteilen. Wenn Sie Personen und Anwendungen verwalten, weisen Sie Benutzern oder Gruppen Berechtigungssätze zu, um deren Zugriffsebene zu definieren. AWS IAM Identity Center Mit Berechtigungssätzen werden automatisch IAM-Richtlinien erstellt und den IAM-Rollen zugewiesen, die der Person oder Anwendung zugeordnet sind. Weitere Informationen finden Sie im AWS IAM Identity Center Benutzerhandbuch unter Berechtigungssätze.
Wenn Sie IAM Identity Center nicht verwenden, müssen Sie IAM-Entitäten (Benutzer oder Rollen) für die Personen oder Anwendungen erstellen, die Zugriff benötigen. Anschließend müssen Sie der Entität eine Richtlinie anfügen, die dieser die korrekten Berechtigungen in CodeCommit gewährt. Nachdem die Berechtigungen erteilt wurden, stellen Sie dem Benutzer oder Anwendungsentwickler die Anmeldeinformationen zur Verfügung. Sie werden diese Anmeldeinformationen für den Zugriff verwenden AWS. Weitere Informationen zum Erstellen von IAM-Benutzern, -Gruppen, -Richtlinien und -Berechtigungen finden Sie im IAM-Benutzerhandbuch unter IAM-Identitäten sowie Richtlinien und Berechtigungen in IAM.
Ich möchte Personen außerhalb meines Amazon Web Services Services-Kontos den Zugriff auf meine CodeCommit Ressourcen ermöglichen
Weitere Informationen finden Sie unter Konfiguriere den kontoübergreifenden Zugriff auf ein AWS CodeCommit Repository mithilfe von Rollen.