Konfigurieren der Tool-Authentifizierung mit AWS - AWS Tools for PowerShell

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.

Konfigurieren der Tool-Authentifizierung mit AWS

Sie müssen bei der Entwicklung mit festlegen AWS , wie sich Ihr Code bei authentifiziert AWS -Services. Es gibt verschiedene Möglichkeiten, den programmgesteuerten Zugriff auf - AWS Ressourcen zu konfigurieren, je nach Umgebung und verfügbarem AWS Zugriff.

Informationen zu verschiedenen Authentifizierungsmethoden für die Tools für PowerShellfinden Sie unter Authentifizierung und Zugriff im AWS Referenzhandbuch für -SDKs und Tools.

In diesem Thema wird davon ausgegangen, dass ein neuer Benutzer lokal entwickelt, von seinem Arbeitgeber keine Authentifizierungsmethode erhalten hat und verwendet, AWS IAM Identity Center um temporäre Anmeldeinformationen zu erhalten. Wenn Ihre Umgebung nicht unter diese Annahmen fällt, treffen einige der Informationen in diesem Thema möglicherweise nicht auf Sie zu, oder einige der Informationen wurden Ihnen möglicherweise bereits gegeben.

Die Konfiguration dieser Umgebung erfordert mehrere Schritte, die sich wie folgt zusammenfassen lassen:

Aktivieren und Konfigurieren von IAM Identity Center

Um verwenden zu können AWS IAM Identity Center, muss es zuerst aktiviert und konfiguriert werden. Weitere Informationen dazu, wie Sie dies für tun PowerShell, finden Sie in Schritt 1 im Thema zur IAM-Identity-Center-Authentifizierung im AWS Referenzhandbuch zu -SDKs und Tools. Folgen Sie insbesondere den Anweisungen unter Ich habe keinen Zugriff über IAM Identity Center eingerichtet.

Konfigurieren Sie die Tools für PowerShell zur Verwendung von IAM Identity Center.

Anmerkung

Beginnend mit Version 4.1.538 der Tools für besteht die empfohlene Methode zum Konfigurieren von SSO-Anmeldeinformationen und zum Starten einer AWS -Zugriffsportalsitzung darin PowerShell, die Invoke-AWSSSOLogin Cmdlets Initialize-AWSSSOConfiguration und zu verwenden, wie in diesem Thema beschrieben. Wenn Sie keinen Zugriff auf diese Version der Tools für PowerShell (oder höher) haben oder diese Cmdlets nicht verwenden können, können Sie diese Aufgaben trotzdem mithilfe der ausführen AWS CLI. Informationen dazu finden Sie unter Verwenden der AWS CLI für die Portalanmeldung.

Das folgende Verfahren aktualisiert die AWS config freigegebene Datei mit SSO-Informationen, die die Tools für zum Abrufen temporärer Anmeldeinformationen PowerShell verwenden. Als Folge dieses Verfahrens wird auch eine AWS -Zugriffsportalsitzung gestartet. Wenn die freigegebene config Datei bereits SSO-Informationen enthält und Sie nur wissen möchten, wie Sie eine -Zugriffsportalsitzung mit den Tools für starten PowerShell, lesen Sie den nächsten Abschnitt in diesem Thema, Starten einer - AWS Zugriffsportalsitzung.

  1. Wenn Sie dies noch nicht getan haben, öffnen PowerShell und installieren Sie die AWS Tools for PowerShell entsprechend Ihrem Betriebssystem und Ihrer Umgebung, einschließlich der gängigen Cmdlets. Weitere Informationen über die entsprechende Vorgehensweise finden Sie unter Installieren des AWS Tools for PowerShell.

    Wenn Sie beispielsweise die modularisierte Version der Tools für PowerShell unter Windows installieren, würden Sie höchstwahrscheinlich Befehle ausführen, die den folgenden ähneln:

    Install-Module -Name AWS.Tools.Installer Install-AWSToolsModule AWS.Tools.Common
  2. Führen Sie den folgenden Befehl aus. Ersetzen Sie die Beispieleigenschaftswerte durch Werte aus Ihrer IAM-Identity-Center-Konfiguration. Informationen zu diesen Eigenschaften und deren Suche finden Sie unter Einstellungen für IAM-Identity-Center-Anmeldeinformationsanbieter im AWS Referenzhandbuch für SDKs und Tools.

    $params = @{ ProfileName = 'my-sso-profile' AccountId = '111122223333' RoleName = 'SamplePermissionSet' SessionName = 'my-sso-session' StartUrl = 'https://provided-domain.awsapps.com/start' SSORegion = 'us-west-2' RegistrationScopes = 'sso:account:access' }; Initialize-AWSSSOConfiguration @params

    Alternativ können Sie einfach das Cmdlet selbst, und die Tools for verwendenInitialize-AWSSSOConfiguration, um Sie zur Eingabe der Eigenschaftswerte PowerShell aufzufordern.

    Überlegungen zu bestimmten Eigenschaftswerten:

    • Wenn Sie einfach die Anweisungen zum Aktivieren und Konfigurieren von IAM Identity Center befolgt haben, ist der Wert für -RoleName möglicherweise PowerUserAccess. Wenn Sie jedoch einen speziell für die PowerShell Arbeit festgelegten IAM-Identity-Center-Berechtigungssatz erstellt haben, verwenden Sie stattdessen diesen.

    • Stellen Sie sicher, dass Sie die verwenden AWS-Region , in der Sie IAM Identity Center konfiguriert haben.

  3. Zu diesem Zeitpunkt enthält die AWS config freigegebene Datei ein Profil my-sso-profile namens mit einer Reihe von Konfigurationswerten, auf die von den Tools für verwiesen werden kann PowerShell. Den Speicherort dieser Datei finden Sie unter Speicherort der freigegebenen Dateien im Referenzhandbuch für AWS SDKs und Tools.

    Die Tools für PowerShell verwenden den SSO-Token-Anbieter des Profils, um Anmeldeinformationen zu erhalten, bevor Anfragen an gesendet werden AWS. Der sso_role_name Wert, bei dem es sich um eine IAM-Rolle handelt, die mit einem IAM-Identity-Center-Berechtigungssatz verbunden ist, sollte den Zugriff auf die in Ihrer Anwendung AWS -Services verwendeten ermöglichen.

    Das folgende Beispiel zeigt das Profil, das mit dem oben gezeigten Befehl erstellt wurde. Einige der Eigenschaftswerte und ihre Reihenfolge können in Ihrem tatsächlichen Profil unterschiedlich sein. Die -sso-sessionEigenschaft des Profils bezieht sich auf den Abschnitt mit dem Namen my-sso-session, der Einstellungen zum Initiieren einer - AWS Zugriffsportalsitzung enthält.

    [profile my-sso-profile] sso_account_id=111122223333 sso_role_name=SamplePermissionSet sso_session=my-sso-session [sso-session my-sso-session] sso_region=us-west-2 sso_registration_scopes=sso:account:access sso_start_url=https://provided-domain.awsapps.com/start/
  4. Wenn Sie bereits über eine aktive - AWS Zugriffsportalsitzung verfügen, PowerShell informiert Sie die Tools für darüber, dass Sie bereits angemeldet sind.

    Wenn dies nicht der Fall ist, PowerShell versucht die Tools für automatisch, die SSO-Autorisierungsseite in Ihrem Standard-Webbrowser zu öffnen. Folgen Sie den Anweisungen in Ihrem Browser, die einen SSO-Autorisierungscode, einen Benutzernamen und ein Passwort sowie die Berechtigung für den Zugriff auf AWS IAM Identity Center Konten und Berechtigungssätze enthalten können.

    Die Tools für PowerShell informieren Sie darüber, dass die SSO-Anmeldung erfolgreich war.

Starten einer - AWS Zugriffsportalsitzung

Bevor Sie Befehle ausführen, die auf zugreifen AWS -Services, benötigen Sie eine aktive - AWS Zugriffsportalsitzung, damit die Tools für die IAM-Identity-Center-Authentifizierung verwenden PowerShell können, um Anmeldeinformationen aufzulösen. Um sich beim - AWS Zugriffsportal anzumelden, führen Sie den folgenden Befehl in aus PowerShell, wobei der Name des Profils -ProfileName my-sso-profile ist, das in der freigegebenen config Datei erstellt wurde, als Sie das Verfahren im vorherigen Abschnitt dieses Themas befolgt haben.

Invoke-AWSSSOLogin -ProfileName my-sso-profile

Wenn Sie bereits über eine aktive - AWS Zugriffsportalsitzung verfügen, PowerShell informiert Sie die Tools für darüber, dass Sie bereits angemeldet sind.

Wenn dies nicht der Fall ist, PowerShell versucht die Tools für automatisch, die SSO-Autorisierungsseite in Ihrem Standard-Webbrowser zu öffnen. Folgen Sie den Anweisungen in Ihrem Browser, die einen SSO-Autorisierungscode, einen Benutzernamen und ein Passwort sowie die Berechtigung für den Zugriff auf AWS IAM Identity Center Konten und Berechtigungssätze enthalten können.

Die Tools für PowerShell informieren Sie darüber, dass die SSO-Anmeldung erfolgreich war.

Um zu testen, ob Sie bereits über eine aktive Sitzung verfügen, führen Sie den folgenden Befehl aus, nachdem Sie das AWS.Tools.SecurityToken Modul nach Bedarf installiert oder importiert haben.

Get-STSCallerIdentity -ProfileName my-sso-profile

Die Antwort auf das Get-STSCallerIdentity Cmdlet meldet das IAM-Identity-Center-Konto und den in der freigegebenen config Datei konfigurierten Berechtigungssatz.

Beispiel

Im Folgenden finden Sie ein Beispiel für die Verwendung von IAM Identity Center mit den Tools für PowerShell. Dem Beispiel liegen folgende Annahmen zugrunde:

  • Sie haben IAM Identity Center aktiviert und wie zuvor in diesem Thema beschrieben konfiguriert. Die SSO-Eigenschaften befinden sich im my-sso-profile Profil, das zuvor in diesem Thema konfiguriert wurde.

  • Wenn Sie sich über die Invoke-AWSSSOLogin Cmdlets Initialize-AWSSSOConfiguration oder anmelden, verfügt der Benutzer mindestens über Leseberechtigungen für Amazon S3.

  • Einige S3-Buckets stehen diesem Benutzer zur Ansicht zur Verfügung.

Installieren oder importieren Sie das AWS.Tools.S3 Modul nach Bedarf und verwenden Sie dann den folgenden PowerShell Befehl, um eine Liste der S3-Buckets anzuzeigen.

Get-S3Bucket -ProfileName my-sso-profile

Zusätzliche Informationen

  • Weitere Optionen zur Authentifizierung für die Tools für PowerShell, z. B. die Verwendung von Profilen und Umgebungsvariablen, finden Sie im Konfigurationskapitel im AWS Referenzhandbuch für SDKs und Tools.

  • Bei einigen Befehlen muss eine - AWS Region angegeben werden. Es gibt eine Reihe von Möglichkeiten, dies zu tun, darunter die -Region Cmdlet-Option, das [default] Profil und die AWS_REGION Umgebungsvariable. Weitere Informationen finden Sie unter Angeben von AWS Regionen in diesem Handbuch und in der AWS Region im AWS Referenzhandbuch zu -SDKs und Tools.

  • Weitere Informationen zu bewährten Methoden finden Sie unter Bewährte Methoden für die Sicherheit in IAM im IAM-Benutzerhandbuch.

  • Informationen zum Erstellen kurzfristiger AWS Anmeldeinformationen finden Sie unter Temporäre Sicherheitsanmeldeinformationen im IAM-Benutzerhandbuch.

  • Weitere Informationen zu anderen Anbietern von Anmeldeinformationen finden Sie unter Standardisierte Anbieter von Anmeldeinformationen im Referenzhandbuch für AWS SDKs und Tools.