Amazon Bedrock API キーを生成する - Amazon Bedrock

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Bedrock API キーを生成する

Amazon Bedrock API キーは、 AWS Management Console または AWS API を使用して生成できます。を使用して AWS Management Console 、いくつかのステップで Amazon Bedrock API キーを簡単に生成することをお勧めします。

コンソールを使用して Amazon Bedrock API キーを生成する

コンソールを使用して Amazon Bedrock API キーを生成するには、次の手順を実行します。

  1. Amazon Bedrock コンソールを使用するアクセス許可を持つ IAM ID AWS Management Console を使用して にサインインします。次に、https://console.aws.amazon.com/bedrock/ で Amazon Bedrock コンソールを開きます。

  2. 左側のナビゲーションペインで、API キーを選択します。

  3. 次のいずれかのタイプのキーを生成します。

    • 短期 API キー短期 API キータブで、短期 API キーの生成を選択します。キーは、コンソールセッションの有効期限が切れたとき (12 時間以内) に期限切れになり、生成 AWS リージョン 元の を呼び出すことができます。リージョンは、生成されたキーで直接変更できます。

    • 長期 API キー長期 API キータブで、長期 API キーの生成を選択します。

      1. API キーの有効期限セクションで、キーの有効期限が切れるまでの時間を選択します。

      2. (オプション) デフォルトでは、コア Amazon Bedrock API オペレーションへのアクセスを許可する AmazonBedrockLimitedAccess AWS管理ポリシーが、キーに関連付けられた IAM ユーザーにアタッチされます。ユーザーにアタッチするポリシーをさらに選択するには、高度なアクセス許可セクションを展開し、追加するポリシーを選択します。

      3. [Generate] (生成) を選択します。

      警告

      Amazon Bedrock の探索には、長期キーの使用を制限することを強くお勧めします。セキュリティ要件が高いアプリケーションに Amazon Bedrock を組み込む準備ができたら、次のドキュメントを確認する必要があります。

API を使用して Amazon Bedrock API キーを生成する

を使用して Amazon Bedrock API キーを生成 AWS Management Console し、簡単に操作できるようにすることをお勧めします。ただし、 API を使用してキーを生成することもできます。ユースケースに対応するセクションを展開します。

API で長期的な Amazon Bedrock API キーを作成する一般的な手順は次のとおりです。

  1. IAM エンドポイントで CreateUser リクエストを送信して、IAM ユーザーを作成します。 https://docs.aws.amazon.com/general/latest/gr/iam-service.html

  2. IAM エンドポイントで AttachUserPolicy リクエストを送信して、AmazonBedrockLimitedAccess を IAM ユーザーにアタッチします。 https://docs.aws.amazon.com/general/latest/gr/iam-service.htmlこのステップを繰り返して、必要に応じて他の管理ポリシーまたはカスタムポリシーをユーザーにアタッチできます。

    注記

    セキュリティのベストプラクティスとして、IAM ユーザーに IAM ポリシーをアタッチして、Amazon Bedrock API キーの使用を制限することを強くお勧めします。時間制限ポリシーの例とキーを使用できる IP アドレスの制限については、「インラインポリシーを IAM ユーザーにアタッチしてアクセスキーの使用を制御する」を参照してください。

  3. IAM エンドポイントCreateServiceSpecificCredential リクエストを送信し、 を bedrock.amazonaws.comとして指定して、長期的な Amazon Bedrock API キーを生成しますServiceName

    • レスポンスでServiceApiKeyValue返される は、長期的な Amazon Bedrock API キーです。

    • レスポンスでServiceSpecificCredentialId返された を使用して、キーに関連する API オペレーションを実行できます。

長期 Amazon Bedrock API キーを生成する方法については、任意の方法のタブを選択し、ステップに従います。

CLI

長期 Amazon Bedrock API キーを作成するには、 AWS Identity and Access Management API オペレーションを使用します。まず、前提条件を満たしていることを確認します。

前提条件

セットアップにより、 が AWS 認証情報を自動的に認識 AWS CLI できることを確認します。詳細については、「 の設定の構成 AWS CLI」を参照してください。

ターミナルを開き、次のコマンドを実行します。

  1. IAM ユーザーを作成します。名前を任意の名前に置き換えることができます。

    aws iam create-user --user-name bedrock-api-user
  2. AmazonBedrockLimitedAccess をユーザーにアタッチします。API キーに追加する他の AWS管理ポリシーまたはカスタムポリシーの ARNs を使用して、このステップを繰り返すことができます。

    aws iam attach-user-policy --user-name bedrock-api-user --policy-arn arn:aws:iam::aws:policy/AmazonBedrockLimitedAccess
  3. 長期 Amazon Bedrock API キーを作成し、${NUMBER-OF-DAYS} をキーの存続日数に置き換えます。

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

長期 Amazon Bedrock API キーを作成するには、 AWS Identity and Access Management API オペレーションを使用します。まず、前提条件を満たしていることを確認します。

前提条件

セットアップにより、Python が AWS 認証情報を自動的に認識できることを確認します。詳細については、「 の設定の構成 AWS CLI」を参照してください。

次のスクリプトを実行して、IAM ユーザーを作成し、Amazon Bedrock アクションを実行するためのアクセス許可をアタッチし、ユーザーに関連付ける長期的な Amazon Bedrock API キーを生成します。

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)

短期間の Amazon Bedrock API キーを生成できます。このキーは、その生成に使用されたセッション (12 時間以内) が存続します。

前提条件
  • セットアップにより、Python が AWS 認証情報を自動的に認識できることを確認します。詳細については、「 の設定 AWS CLI」を参照してください。

  • ターミナルを開き、使用している SDK に対応する コマンドを使用して Amazon Bedrock トークンジェネレーターをダウンロードします。

    • Python

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

      npm install @aws/bedrock-token-generator
  • API コールを行うために使用している IAM ID に、ロールを引き受けてロールセッションを作成するアクセス許可が最小限あることを確認します。

    • IAM ID には、ロールを引き受けるアクセス許可が必要です。ID にアクセス許可が制限されている場合は、次の ID ベースのポリシーを ID にアタッチできます (${arn:aws:iam::111122223333:role/SessionRole} をセッションのロールの実際の ARN に置き換えます)。

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

      ロールを引き受けるアクセス許可を ID に付与する方法の詳細については、「ロールを切り替えるアクセス許可をユーザーに付与する」を参照してください。

    • IAM ロールには、IAM アイデンティティが引き受けることを許可する信頼ポリシーが必要です。次の信頼ポリシーを IAM ロールにアタッチして、 Principalフィールドで指定されたプリンシパルがキーを作成するロールを引き受けることを許可できます。この例では、プリンシパルとして IAM ユーザーを指定します。ユーザーの実際の ARN に置き換えます。

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

      プリンシパルの詳細については、AWS 「JSON ポリシー要素: プリンシパル」を参照してください。ロールの信頼ポリシーを更新する方法については、「ロールの信頼ポリシーを更新する」を参照してください。

使用している SDK に対応するタブを選択し、スクリプトを実行してセッション認証情報から短期的な Amazon Bedrock API キーを生成します。

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 のインポート

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

Gradle のインポート

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

使用方法

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);
注記

短期キーのアクセス許可は、次の共通部分になります。

  • キーの生成に使用されるセッションにアタッチされたアクセス許可。

  • AmazonBedrockLimitedAccess によって付与されるアクセス許可。