Generieren Sie einen Amazon Bedrock API-Schlüssel - Amazon Bedrock

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.

Generieren Sie einen Amazon Bedrock API-Schlüssel

Sie können einen Amazon Bedrock API-Schlüssel entweder mithilfe der AWS Management Console oder der AWS API generieren. Wir empfehlen Ihnen, den AWS Management Console zu verwenden, um mit wenigen Schritten auf einfache Weise einen Amazon Bedrock API-Schlüssel zu generieren.

Generieren Sie mit der Konsole einen Amazon Bedrock API-Schlüssel

Gehen Sie wie folgt vor, um mithilfe der Konsole einen Amazon Bedrock API-Schlüssel zu generieren:

  1. Melden Sie sich bei der AWS Management Console mit einer IAM-Identität an, die berechtigt ist, die Amazon Bedrock-Konsole zu verwenden. Öffnen Sie dann die Amazon Bedrock-Konsole unter https://console.aws.amazon.com/bedrock/.

  2. Wählen Sie im linken Navigationsbereich API-Schlüssel aus.

  3. Generieren Sie einen der folgenden Schlüsseltypen:

    • Kurzfristiger API-Schlüssel — Wählen Sie auf der Registerkarte Kurzfristige API-Schlüssel die Option Kurzfristige API-Schlüssel generieren aus. Der Schlüssel läuft ab, wenn Ihre Konsolensitzung abläuft (und nicht länger als 12 Stunden) und ermöglicht es Ihnen, Aufrufe an die Person zu tätigen AWS-Region , aus der Sie ihn generiert haben. Sie können die Region direkt im generierten Schlüssel ändern.

    • Langfristiger API-Schlüssel — Wählen Sie auf der Registerkarte Langfristige API-Schlüssel die Option Langfristige API-Schlüssel generieren aus.

      1. Wählen Sie im Abschnitt Ablauf des API-Schlüssels eine Zeit aus, nach der der Schlüssel abläuft.

      2. (Optional) Standardmäßig ist die AmazonBedrockLimitedAccess AWS-managed Policy, die Zugriff auf die wichtigsten Amazon Bedrock API-Operationen gewährt, an den IAM-Benutzer angehängt, der mit dem Schlüssel verknüpft ist. Um weitere Richtlinien auszuwählen, die an den Benutzer angehängt werden sollen, erweitern Sie den Abschnitt Erweiterte Berechtigungen und wählen Sie die Richtlinien aus, die Sie hinzufügen möchten.

      3. Wählen Sie Generate (Erstellen).

      Warnung

      Wir empfehlen dringend, die Verwendung von langfristigen Schlüsseln für die Erkundung von Amazon Bedrock einzuschränken. Wenn Sie bereit sind, Amazon Bedrock in Anwendungen mit höheren Sicherheitsanforderungen zu integrieren, sollten Sie die folgende Dokumentation lesen:

Generieren Sie mithilfe der API einen Amazon Bedrock API-Schlüssel

Wir empfehlen Ihnen, die AWS Management Console zur Generierung von Amazon Bedrock API-Schlüsseln zu verwenden, um eine einfache Bedienung zu gewährleisten. Sie können Schlüssel jedoch auch über die API generieren. Erweitern Sie den Abschnitt, der Ihrem Anwendungsfall entspricht.

Die allgemeinen Schritte zur Erstellung eines langfristigen Amazon Bedrock API-Schlüssels in der API lauten wie folgt:

  1. Erstellen Sie einen IAM-Benutzer, indem Sie eine CreateUserAnfrage mit einem IAM-Endpunkt senden.

  2. Hängen Sie den AmazonBedrockLimitedAccessan den IAM-Benutzer an, indem Sie eine AttachUserPolicyAnfrage mit einem IAM-Endpunkt senden. Sie können diesen Schritt wiederholen, um dem Benutzer bei Bedarf weitere verwaltete oder benutzerdefinierte Richtlinien anzuhängen.

    Anmerkung

    Als bewährte Sicherheitsmethode empfehlen wir dringend, IAM-Richtlinien an den IAM-Benutzer anzuhängen, um die Verwendung von Amazon Bedrock API-Schlüsseln einzuschränken. Beispiele für zeitlich begrenzte Richtlinien und die Beschränkung der IP-Adressen, die den Schlüssel verwenden können, finden Sie unter Steuern der Verwendung von Zugriffsschlüsseln, indem Sie einem IAM-Benutzer eine Inline-Richtlinie anhängen.

  3. Generieren Sie den langfristigen Amazon Bedrock API-Schlüssel, indem CreateServiceSpecificCredentialSie eine Anfrage mit einem IAM-Endpunkt senden und bedrock.amazonaws.com als. ServiceName

    • In der Antwort wird Ihr langfristiger Amazon Bedrock API-Schlüssel ServiceApiKeyValue zurückgegeben.

    • Der in der Antwort ServiceSpecificCredentialId zurückgegebene Code kann verwendet werden, um API-Operationen im Zusammenhang mit dem Schlüssel auszuführen.

Um zu erfahren, wie Sie einen langfristigen Amazon Bedrock API-Schlüssel generieren, wählen Sie die Registerkarte für Ihre bevorzugte Methode und folgen Sie dann den Schritten:

CLI

Um einen langfristigen Amazon Bedrock API-Schlüssel zu erstellen, verwenden Sie AWS Identity and Access Management API-Operationen. Stellen Sie zunächst sicher, dass Sie die Voraussetzung erfüllt haben:

Voraussetzung

Stellen Sie sicher, dass Ihr Setup es dem AWS CLI ermöglicht, Ihre AWS Anmeldeinformationen automatisch zu erkennen. Weitere Informationen finden Sie unter Konfiguration der Einstellungen für AWS CLI.

Öffnen Sie ein Terminal und führen Sie die folgenden Befehle aus:

  1. Erstellen Sie einen IAM-Benutzer. Sie können den Namen durch einen Namen Ihrer Wahl ersetzen:

    aws iam create-user --user-name bedrock-api-user
  2. Hängen Sie das AmazonBedrockLimitedAccessan den Benutzer an. Sie können diesen Schritt mit allen anderen AWS verwalteten oder benutzerdefinierten Richtlinien wiederholen, die Sie dem API-Schlüssel hinzufügen möchten: ARNs

    aws iam attach-user-policy --user-name bedrock-api-user --policy-arn arn:aws:iam::aws:policy/AmazonBedrockLimitedAccess
  3. Erstellen Sie den langfristigen Amazon Bedrock API-Schlüssel und ${NUMBER-OF-DAYS} ersetzen Sie ihn durch die Anzahl der Tage, für die der Schlüssel gültig sein soll:

    aws iam create-service-specific-credential \ --user-name bedrock-api-user \ --service-name bedrock.amazonaws.com \ --credential-age-days ${NUMBER-OF-DAYS}
Python

Um einen langfristigen Amazon Bedrock API-Schlüssel zu erstellen, verwenden Sie AWS Identity and Access Management API-Operationen. Stellen Sie zunächst sicher, dass Sie die Voraussetzung erfüllt haben:

Voraussetzung

Stellen Sie sicher, dass Ihr Setup es Python ermöglicht, Ihre AWS Anmeldeinformationen automatisch zu erkennen. Weitere Informationen finden Sie unter Konfiguration der Einstellungen für AWS CLI.

Führen Sie das folgende Skript aus, um einen IAM-Benutzer zu erstellen, Berechtigungen für Amazon Bedrock-Aktionen zuzuweisen und einen langfristigen Amazon Bedrock-API-Schlüssel zu generieren, der dem Benutzer zugeordnet wird:

import boto3 from datetime import datetime, timedelta # Replace with name for your IAM user username = "bedrock-api-user" # Add any AWS-managed or custom policies that you want to the user bedrock_policies = [ "arn:aws:iam::aws:policy/AmazonBedrockLimitedAccess", # Limited access # "arn:aws:iam::aws:policy/AmazonBedrockMarketplaceAccess", # Optional: Access to Amazon Bedrock Marketplace actions ] # Set the key expiration time to a number of your choice expiration_time_in_days = 30 iam_client = boto3.client("iam") # Create IAM user user = iam_client.create_iam_user(username) # Attach policies to user for policy_arn in bedrock_policies: iam_client.attach_managed_policy(username, policy_arn) # Create long-term Amazon Bedrock API key and return it service_credentials = iam_client.create_service_specific_credential( user_name=username, service_name="bedrock", credential_age_days=expiration_time_in_days ) api_key = service_credentials["ServiceApiKeyValue"] print(api_key)

Sie können einen kurzfristigen Amazon Bedrock API-Schlüssel generieren, der so lange gültig ist, wie die Sitzung, in der er generiert wurde (und nicht länger als 12 Stunden).

Voraussetzungen
  • Stellen Sie sicher, dass Ihr Setup es Python ermöglicht, Ihre AWS Anmeldeinformationen automatisch zu erkennen. Weitere Informationen finden Sie unter Konfiguration der Einstellungen für AWS CLI.

  • Öffnen Sie ein Terminal und laden Sie den Amazon Bedrock-Token-Generator mit dem Befehl herunter, der dem von Ihnen verwendeten SDK entspricht:

    • Python

      python3 -m pip install aws-bedrock-token-generator
    • JavaScript

      npm install @aws/bedrock-token-generator
  • Stellen Sie sicher, dass die IAM-Identität, die Sie für API-Aufrufe verwenden, mindestens berechtigt ist, eine Rolle anzunehmen und eine Rollensitzung zu erstellen:

    • Die IAM-Identität muss über Berechtigungen verfügen, um die Rolle übernehmen zu können. Wenn die Identität über eingeschränkte Berechtigungen verfügt, können Sie die folgende identitätsbasierte Richtlinie an die Identität anhängen (${arn:aws:iam::111122223333:role/SessionRole}durch den tatsächlichen ARN der Rolle für die Sitzung ersetzen):

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "${arn:aws:iam::111122223333:role/SessionRole}" } ] }

      Weitere Informationen zum Erteilen von Berechtigungen zur Übernahme einer Rolle finden Sie unter Einem Benutzer Berechtigungen zum Rollenwechsel gewähren.

    • Die IAM-Rolle muss über eine Vertrauensrichtlinie verfügen, die es der IAM-Identität ermöglicht, diese zu übernehmen. Sie können einer IAM-Rolle die folgende Vertrauensrichtlinie zuordnen, damit der im Principal Feld angegebene Principal die Rolle beim Erstellen des Schlüssels übernehmen kann. In diesem Beispiel wird ein IAM-Benutzer als Principal angegeben. Ersetzen Sie es durch den tatsächlichen ARN des Benutzers.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "${arn:aws:iam::111122223333:user/UserId}" }, "Action": "sts:AssumeRole" } ] }

      Weitere Informationen zu Prinzipalen finden Sie unter AWS JSON-Richtlinienelemente: Principal. Informationen zum Aktualisieren einer Vertrauensrichtlinie für eine Rolle finden Sie unter Aktualisieren einer Rollenvertrauensrichtlinie.

Wählen Sie die Registerkarte, die dem SDK entspricht, das Sie verwenden, und führen Sie das Skript aus, um einen kurzfristigen Amazon Bedrock API-Schlüssel aus Ihren Sitzungsanmeldedaten zu generieren:

Python
from aws_bedrock_token_generator import BedrockTokenGenerator import boto3 # Replace with a region of your choice region = "us-east-1" # Fetch credentials session = boto3.Session() credentials = session.get_credentials() # Initialize token generator generator = BedrockTokenGenerator() # Generate one-time token token = generator.get_token(credentials, region)
Javascript
import { BedrockTokenGenerator } from '@aws/bedrock-token-generator'; import { fromNodeProviderChain } from '@aws-sdk/credential-providers'; async function example() { // Set region const region = 'us-east-1' // Create token generator const generator = new BedrockTokenGenerator(); // Get credentials from default provider chain const credentials = fromNodeProviderChain(); // Generate token const token = await generator.generateToken(credentials, region); // Use the token for API calls (valid for 12 hours) console.log(`Bearer Token: ${token}`); }
Java

Maven importieren

<dependency> <groupId>software.amazon.bedrock</groupId> <artifactId>aws-bedrock-token-generator</artifactId> <version>1.0.0</version> </dependency>

Gradle importieren

implementation 'software.amazon.bedrock:aws-bedrock-token-generator:1.0.0'

Usage

import software.amazon.bedrock.token.BedrockTokenGenerator; import software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider; import software.amazon.awssdk.regions.Region; // Create token generator BedrockTokenGenerator tokenGenerator = new BedrockTokenGenerator(); // Generate token using default credentials String bearerToken = tokenGenerator.getToken( DefaultCredentialsProvider.create().resolveCredentials(), Region ); // Use the token for API calls (valid for 12 hours) System.out.println("Bearer Token: " + bearerToken);
Anmerkung

Die Berechtigungen des kurzfristigen Schlüssels werden der Schnittpunkt der folgenden Elemente sein:

  • Die mit der Sitzung verknüpften Berechtigungen, die zur Generierung des Schlüssels verwendet wurden.

  • Die von der gewährten Berechtigungen AmazonBedrockLimitedAccess.