Générer une clé d'API Amazon Bedrock - Amazon Bedrock

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Générer une clé d'API Amazon Bedrock

Vous pouvez générer une clé d'API Amazon Bedrock à l'aide de l'API AWS Management Console ou de l' AWS API. Nous vous recommandons d'utiliser le AWS Management Console pour générer facilement une clé d'API Amazon Bedrock en quelques étapes.

Générez une clé d'API Amazon Bedrock à l'aide de la console

Pour générer une clé d'API Amazon Bedrock à l'aide de la console, procédez comme suit :

  1. Connectez-vous au AWS Management Console avec une identité IAM autorisée à utiliser la console Amazon Bedrock. Ouvrez ensuite la console Amazon Bedrock à https://console.aws.amazon.com/bedrock/l'adresse.

  2. Dans le volet de navigation de gauche, sélectionnez les clés d'API.

  3. Générez l'un des types de clés suivants :

    • Clé d'API à court terme : dans l'onglet Clés d'API à court terme, choisissez Générer des clés d'API à court terme. La clé expire à l'expiration de votre session de console (et pas plus de 12 heures) et vous permet de passer des appels vers la console à partir de Région AWS laquelle vous l'avez générée. Vous pouvez modifier la région directement dans la clé générée.

    • Clé d'API à long terme : dans l'onglet Clés d'API à long terme, choisissez Générer des clés d'API à long terme.

      1. Dans la section Expiration de la clé API, choisissez un délai après lequel la clé expirera.

      2. (Facultatif) Par défaut, la politique AmazonBedrockLimitedAccess AWS gérée, qui donne accès aux principales opérations de l'API Amazon Bedrock, est attachée à l'utilisateur IAM associé à la clé. Pour sélectionner d'autres politiques à associer à l'utilisateur, développez la section Autorisations avancées et sélectionnez les politiques que vous souhaitez ajouter.

      3. Sélectionnez Generate (Générer).

      Avertissement

      Nous recommandons vivement de restreindre l'utilisation de clés à long terme pour explorer Amazon Bedrock. Lorsque vous serez prêt à intégrer Amazon Bedrock dans des applications présentant des exigences de sécurité plus strictes, vous devriez consulter la documentation suivante :

Générez une clé d'API Amazon Bedrock à l'aide de l'API

Nous vous recommandons d'utiliser le AWS Management Console pour générer des clés d'API Amazon Bedrock afin de faciliter l'expérience. Cependant, vous pouvez également générer des clés via l'API. Développez la section correspondant à votre cas d'utilisation.

Les étapes générales pour créer une clé d'API Amazon Bedrock à long terme dans l'API sont les suivantes :

  1. Créez un utilisateur IAM en envoyant une CreateUserdemande avec un point de terminaison IAM.

  2. Attachez-le AmazonBedrockLimitedAccessà l'utilisateur IAM en envoyant une AttachUserPolicydemande avec un point de terminaison IAM. Vous pouvez répéter cette étape pour associer d'autres politiques gérées ou personnalisées selon les besoins à l'utilisateur.

    Note

    Pour des raisons de sécurité optimales, nous vous recommandons vivement d'associer des politiques IAM à l'utilisateur IAM afin de restreindre l'utilisation des clés d'API Amazon Bedrock. Pour des exemples de politiques limitées dans le temps et de restriction des adresses IP autorisées à utiliser la clé, voir Contrôler l'utilisation des clés d'accès en attachant une politique intégrée à un utilisateur IAM.

  3. Générez la clé d'API Amazon Bedrock à long terme en envoyant une CreateServiceSpecificCredentialdemande avec un point de terminaison IAM et en spécifiant bedrock.amazonaws.com comme. ServiceName

    • La ServiceApiKeyValue réponse renvoie votre clé API Amazon Bedrock à long terme.

    • Les ServiceSpecificCredentialId informations renvoyées dans la réponse peuvent être utilisées pour effectuer des opérations d'API liées à la clé.

Pour savoir comment générer une clé d'API Amazon Bedrock à long terme, choisissez l'onglet correspondant à votre méthode préférée, puis suivez les étapes suivantes :

CLI

Pour créer une clé d'API Amazon Bedrock à long terme, vous devez utiliser les opérations d' AWS Identity and Access Management API. Tout d'abord, assurez-vous que vous avez rempli les conditions préalables suivantes :

Prérequis

Assurez-vous que votre configuration permet de AWS CLI reconnaître automatiquement vos AWS informations d'identification. Pour en savoir plus, consultez Configuration des paramètres pour AWS CLI.

Ouvrez une fenêtre de terminal et exécutez les commandes suivantes :

  1. Créez un utilisateur IAM. Vous pouvez remplacer le nom par celui de votre choix :

    aws iam create-user --user-name bedrock-api-user
  2. Attachez-le AmazonBedrockLimitedAccessà l'utilisateur. Vous pouvez répéter cette étape avec toutes ARNs les autres politiques AWS gérées ou personnalisées que vous souhaitez ajouter à la clé d'API :

    aws iam attach-user-policy --user-name bedrock-api-user --policy-arn arn:aws:iam::aws:policy/AmazonBedrockLimitedAccess
  3. Créez la clé d'API Amazon Bedrock à long terme, en la ${NUMBER-OF-DAYS} remplaçant par le nombre de jours pendant lesquels vous souhaitez que la clé dure :

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

Pour créer une clé d'API Amazon Bedrock à long terme, vous devez utiliser les opérations d' AWS Identity and Access Management API. Tout d'abord, assurez-vous que vous avez rempli les conditions préalables suivantes :

Prérequis

Assurez-vous que votre configuration permet à Python de reconnaître automatiquement vos AWS informations d'identification. Pour en savoir plus, consultez Configuration des paramètres pour AWS CLI.

Exécutez le script suivant pour créer un utilisateur IAM, associer des autorisations pour effectuer des actions Amazon Bedrock et générer une clé d'API Amazon Bedrock à long terme à associer à l'utilisateur :

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)

Vous pouvez générer une clé d'API Amazon Bedrock à court terme qui dure aussi longtemps que la session utilisée pour la générer (et pas plus de 12 heures).

Prérequis
  • Assurez-vous que votre configuration permet à Python de reconnaître automatiquement vos AWS informations d'identification. Pour en savoir plus, consultez Configuration des paramètres pour AWS CLI.

  • Ouvrez un terminal et téléchargez le générateur de jetons Amazon Bedrock à l'aide de la commande correspondant au SDK que vous utilisez :

    • Python

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

      npm install @aws/bedrock-token-generator
  • Assurez-vous que l'identité IAM que vous utilisez pour effectuer des appels d'API dispose au minimum des autorisations nécessaires pour assumer un rôle et créer une session de rôle :

    • L'identité IAM doit disposer des autorisations nécessaires pour assumer le rôle. Si l'identité possède des autorisations restreintes, vous pouvez associer la politique d'identité suivante à l'identité (remplacez-la ${arn:aws:iam::111122223333:role/SessionRole} par l'ARN réel du rôle pour la session) :

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

      Pour plus d'informations sur l'octroi à une identité des autorisations lui permettant d'assumer un rôle, voir Accorder à un utilisateur l'autorisation de changer de rôle.

    • Le rôle IAM doit disposer d'une politique de confiance permettant à l'identité IAM de l'assumer. Vous pouvez associer la politique de confiance suivante à un rôle IAM pour permettre au principal spécifié dans le Principal champ d'assumer le rôle de création de la clé. Cet exemple indique qu'un utilisateur IAM est le principal. Remplacez-le par l'ARN réel de l'utilisateur.

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

      Pour plus d'informations sur les principes, voir Éléments de politique AWS JSON : Principal. Pour savoir comment mettre à jour une politique de confiance pour un rôle, voir Mettre à jour une politique de confiance de rôle.

Choisissez l'onglet correspondant au SDK que vous utilisez et exécutez le script pour générer une clé d'API Amazon Bedrock à court terme à partir des informations d'identification de votre session :

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

Importation Maven

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

Importation de Gradle

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

Utilisation

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);
Note

Les autorisations associées à la clé à court terme se situeront à l'intersection des autorisations suivantes :

  • Les autorisations associées à la session utilisées pour générer la clé.

  • Les autorisations accordées par le AmazonBedrockLimitedAccess.