

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.

# API-Schlüssel
<a name="api-keys"></a>

Mit Amazon Bedrock API-Schlüsseln können Sie API-Anfragen mit einem Bearer-Token anstelle von Anmeldeinformationen authentifizieren. AWS Es gibt zwei Arten:
+ **Short-term**— Dauert bis zu 12 Stunden (oder die Dauer Ihrer Sitzung, je nachdem, welcher Zeitraum kürzer ist). Erbt die Berechtigungen des IAM-Prinzipals, der zur Generierung verwendet wurde. Für den produktiven Einsatz empfohlen.
+ **Long-term**— Hält bis zu einem konfigurierten Ablaufdatum an. Erstellt einen IAM-Benutzer mit angehängten Richtlinien. Nur für Erkundungszwecke empfohlen.

**Anmerkung**  
Alle API-Aufrufe sind angemeldet AWS CloudTrail. API-Schlüssel werden als Autorisierungsheader übergeben und nicht protokolliert.

## Generieren Sie einen kurzfristigen API-Schlüssel
<a name="api-keys-gen-short"></a>

Wählen Sie die Registerkarte für Ihre bevorzugte Methode aus und befolgen Sie dann die Schritte:

------
#### [ Console ]

1. Melden Sie sich bei der AWS-Managementkonsole 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](https://console.aws.amazon.com/bedrock).

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

1. Wählen Sie auf der Registerkarte **Short-term API-Schlüssel** die Option **Kurzfristige API-Schlüssel generieren** aus.

Der Schlüssel läuft ab, wenn Ihre Konsolensitzung abläuft (maximal 12 Stunden). Um einen Schlüssel für eine andere Region zu generieren, wechseln Sie zuerst in der Konsole zwischen den Regionen.

------
#### [ Python ]

Installieren Sie den Token-Generator:

```
pip install aws-bedrock-token-generator
```

Generieren Sie ein Token:

```
from aws_bedrock_token_generator import provide_token

token = provide_token()
print(f"Token: {token}")
```

------
#### [ Javascript ]

Installieren Sie den Token-Generator:

```
npm install @aws/bedrock-token-generator
```

Generieren Sie ein Token:

```
import { getTokenProvider } from "@aws/bedrock-token-generator";

const provideToken = getTokenProvider();
const token = await provideToken();
console.log(`Bearer Token: ${token}`);
```

------
#### [ Java ]

Fügen Sie die Abhängigkeit hinzu (Maven):

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

Generieren Sie ein Token:

```
import software.amazon.bedrock.token.BedrockTokenGenerator;

BedrockTokenGenerator tokenGenerator = BedrockTokenGenerator.builder().build();
String token = tokenGenerator.getToken();
```

------

## Generieren Sie einen langfristigen API-Schlüssel
<a name="api-keys-gen-long"></a>

**Warnung**  
Long-term Schlüssel dienen nur zur Erkundung. Verwenden Sie für die Produktion kurzfristige Schlüssel. Weitere Informationen finden Sie unter [Alternativen zu langfristigen Zugriffsschlüsseln](https://docs.aws.amazon.com/IAM/latest/UserGuide/security-creds-programmatic-access.html#security-creds-alternatives-to-long-term-access-keys).

Wählen Sie die Registerkarte für Ihre bevorzugte Methode aus und befolgen Sie dann die Schritte:

------
#### [ Console ]

1. Melden Sie sich bei der AWS-Managementkonsole 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](https://console.aws.amazon.com/bedrock).

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

1. Wählen Sie auf der Registerkarte **Long-term API-Schlüssel** die Option **Langfristige API-Schlüssel generieren** aus.

1. Wählen Sie eine Ablaufzeit und fügen Sie optional Berechtigungen unter **Erweiterte Berechtigungen** hinzu.

1. Klicken Sie auf **Generieren**.

------
#### [ CLI ]

```
# Create an IAM user
aws iam create-user --user-name bedrock-api-user

# Attach permissions
aws iam attach-user-policy --user-name bedrock-api-user \
    --policy-arn arn:aws:iam::aws:policy/AmazonBedrockLimitedAccess

# Generate the API key (replace 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}}}
```

`ServiceApiKeyValue`In der Antwort steht Ihr API-Schlüssel.

Um den Schlüssel später zu deaktivieren oder zu löschen, verwenden Sie den `ServiceSpecificCredentialId` aus der Antwort:

```
# Deactivate the key
aws iam update-service-specific-credential \
    --user-name bedrock-api-user \
    --service-specific-credential-id {{${ServiceSpecificCredentialId}}} \
    --status Inactive

# Delete the key permanently
aws iam delete-service-specific-credential \
    --user-name bedrock-api-user \
    --service-specific-credential-id {{${ServiceSpecificCredentialId}}}
```

------
#### [ Python ]

```
import boto3

iam_client = boto3.client("iam")

# Create IAM user
iam_client.create_user(UserName="bedrock-api-user")

# Attach permissions
iam_client.attach_user_policy(
    UserName="bedrock-api-user",
    PolicyArn="arn:aws:iam::aws:policy/AmazonBedrockLimitedAccess"
)

# Generate API key
response = iam_client.create_service_specific_credential(
    UserName="bedrock-api-user",
    ServiceName="bedrock.amazonaws.com",
    CredentialAgeDays=30
)
api_key = response["ServiceSpecificCredential"]["ServiceApiKeyValue"]
print(api_key)
```

------

## Verwenden eines API-Schlüssels
<a name="api-keys-use"></a>

Legen Sie den Schlüssel als Umgebungsvariable fest:

```
# macOS/Linux
export AWS_BEARER_TOKEN_BEDROCK={{${api-key}}}

# Windows
setx AWS_BEARER_TOKEN_BEDROCK "{{${api-key}}}"
```

Oder übergebe es direkt in der `Authorization` Kopfzeile:

```
Authorization: Bearer {{${api-key}}}
```

**Beispiel: Stellen Sie eine Converse-Anfrage**  
Wählen Sie die Registerkarte für Ihre bevorzugte Methode und folgen Sie dann den Schritten:

------
#### [ cURL ]

```
curl -X POST "https://bedrock-runtime.us-east-1.amazonaws.com/model/us.anthropic.claude-sonnet-4-6/converse" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK" \
  -d '{
    "messages": [{"role": "user", "content": [{"text": "Hello"}]}]
  }'
```

------
#### [ Python (boto3) ]

```
import os
import boto3

os.environ['AWS_BEARER_TOKEN_BEDROCK'] = "{{${api-key}}}"

client = boto3.client("bedrock-runtime", region_name="us-east-1")
response = client.converse(
    modelId="us.anthropic.claude-sonnet-4-6",
    messages=[{"role": "user", "content": [{"text": "Hello"}]}]
)
```

------

## Auto-refresh kurzfristige Schlüssel
<a name="api-keys-auto-refresh"></a>

Rufen Sie bei Anwendungen mit langer Laufzeit vor jeder Anfrage den Token-Generator auf. Er gibt ein zwischengespeichertes Token zurück, falls es noch gültig ist, oder generiert automatisch ein neues:

------
#### [ Python ]

```
from aws_bedrock_token_generator import provide_token
import requests

url = "https://bedrock-runtime.us-west-2.amazonaws.com/model/us.anthropic.claude-sonnet-4-6/converse"
payload = {"messages": [{"role": "user", "content": [{"text": "Hello"}]}]}

# Call provide_token() before each request — it handles caching/refresh
token = provide_token()
headers = {"Content-Type": "application/json", "Authorization": f"Bearer {token}"}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
```

------
#### [ Javascript ]

```
import { getTokenProvider } from "@aws/bedrock-token-generator";

const provideToken = getTokenProvider();

const url = "https://bedrock-runtime.us-east-1.amazonaws.com/model/us.anthropic.claude-sonnet-4-6/converse";
const payload = {messages: [{role: "user", content: [{text: "Hello"}]}]};

// provideToken() handles caching/refresh automatically
const headers = {
    "Content-Type": "application/json",
    "Authorization": `Bearer ${await provideToken()}`
};
await fetch(url, {method: 'POST', headers, body: JSON.stringify(payload)});
```

------

Weitere Beispiele finden Sie in der Token-Generator-Dokumentation: [Python](https://github.com/aws/aws-bedrock-token-generator-python/blob/main/README.md) \| [Javascript](https://github.com/aws/aws-bedrock-token-generator-js/blob/main/README.md) \| [Java](https://github.com/aws/aws-bedrock-token-generator-java/blob/main/README.md).

## Berechtigungen ändern
<a name="api-keys-modify"></a>

Ein langfristiger API-Schlüssel ist einem IAM-Benutzer zugeordnet. Um seine Berechtigungen zu ändern, ändern Sie die diesem Benutzer zugewiesenen Richtlinien. Weitere Informationen finden Sie unter [Hinzufügen und Entfernen von IAM-Identitätsberechtigungen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html).

Von der Konsole aus: Gehen Sie zu **API-Schlüssel** > **Long-term API-Schlüssel** > Wählen Sie Ihren Schlüssel aus > **In der IAM-Konsole verwalten**.

## Kompromittierte Schlüssel
<a name="api-keys-compromised"></a>

Wenn ein Schlüssel kompromittiert wurde, ergreifen Sie eine der folgenden Maßnahmen:


| Action | Schlüsseltyp | Wie | 
| --- | --- | --- | 
| Deaktivieren | Long-term | Konsole: API-Schlüssel > Schlüssel auswählen > Aktionen > Deaktivieren. API: UpdateServiceSpecificCredential mitStatus=Inactive. | 
| Zurücksetzen | Long-term | Konsole: Aktionen > Reset-Taste. API:ResetServiceSpecificCredential. | 
| Delete | Long-term | Konsole: Aktionen > Löschen. API:DeleteServiceSpecificCredential. | 
| Sitzung ungültig machen | Short-term | Hängen Sie eine IAM-Richtlinie an die Identität an, die die Sitzungbedrock:CallWithBearerToken, die zur Generierung des Schlüssels verwendet wurde, verweigert oder ungültig macht. | 

## Steuern Sie, wer API-Schlüssel generieren und verwenden kann
<a name="api-keys-control"></a>

Zwei IAM-Aktionen steuern die Generierung und Verwendung von API-Schlüsseln:
+ `iam:CreateServiceSpecificCredential`— Steuert die Generierung von langfristigen Schlüsseln. Verwenden Sie den `iam:ServiceSpecificCredentialAgeDays` Bedingungsschlüssel, um den Ablauf zu begrenzen (z. B. maximal 90 Tage).
+ `bedrock:CallWithBearerToken`— Steuert die Verwendung eines beliebigen API-Schlüssels. Verwenden Sie den `bedrock:bearerTokenType` Bedingungsschlüssel mit Werten `SHORT_TERM` oder `LONG_TERM` als Ziel für bestimmte Schlüsseltypen.

**Beispiel: Verhindern Sie, dass eine Identität einen beliebigen API-Schlüssel verwendet**  
Hängen Sie diese Richtlinie an die Identität an:

```
{
    "Version": "2012-10-17", 		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": "bedrock:CallWithBearerToken",
            "Resource": "*"
        }
    ]
}
```

**Beispiel: Nur kurzlebige Schlüssel zulassen (max. 90 Tage)**  
Hängen Sie diese Richtlinie an die Identität an:

```
{
    "Version": "2012-10-17", 		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iam:CreateServiceSpecificCredential",
            "Resource": "*",
            "Condition": {
                "NumericLessThanEquals": {
                    "iam:ServiceSpecificCredentialAgeDays": "90"
                },
                "StringEquals": {
                    "iam:ServiceSpecificCredentialServiceName": "bedrock.amazonaws.com"
                }
            }
        }
    ]
}
```

Ausführlichere Beispiele für Richtlinien finden Sie unter[Referenz zu API-Schlüsseln](api-keys-reference.md).