

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.

# AWS Transfer Family API-Referenz
<a name="api-welcome"></a>

Das vollständige API-Referenzhandbuch für Transfer Family ist unter [AWS Transfer Family API Reference](https://docs.aws.amazon.com/transfer/latest/APIReference/api-welcome.html) verfügbar. 

AWS Transfer Family ist ein sicherer Übertragungsservice, mit dem Sie Dateien über die folgenden Protokolle in den und aus dem Amazon Simple Storage Service (Amazon S3) -Speicher übertragen können:
+ Secure Shell (SSH) File Transfer Protocol (SFTP)
+ Sicheres Dateiübertragungsprotokoll (FTPS)
+ Dateiübertragungsprotokoll (FTP)
+ Erklärung zur Anwendbarkeit 2 (AS2)

Server, Benutzer und Rollen werden alle anhand ihres Amazon-Ressourcennamens (ARN) identifiziert. Sie können Entitäten mit einem ARN Tags zuweisen, bei denen es sich um Schlüssel-Wert-Paare handelt. Tags sind Metadaten, die verwendet werden können, um diese Entitäten zu gruppieren oder nach ihnen zu suchen. Tags sind beispielsweise für die Buchhaltung nützlich.

Die folgenden Konventionen werden bei AWS Transfer Family ID-Formaten eingehalten:
+ `ServerId`-Werte haben das Format `s-01234567890abcdef`.
+ `SshPublicKeyId`-Werte haben das Format `key-01234567890abcdef`.

Die Formate von Amazon Resource Name (ARN) haben die folgende Form:
+ Für Server haben ARNs die folgende Form`arn:aws:transfer:{{region}}:{{account-id}}:server/{{server-id}}`.

  Ein Beispiel für einen Server-ARN lautet `arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef`.
+ Für Benutzer haben ARNs das Format `arn:aws:transfer:{{region}}:{{account-id}}:user/{{server-id}}/{{username}}`.

  Ein Beispiel ist `arn:aws:transfer:us-east-1:123456789012:user/s-01234567890abcdef/user1`.

Folgende DNS-Einträge (Endpunkte) werden verwendet:
+ API-Endpunkte haben das Format `transfer.{{region}}.amazonaws.com`.
+ Server-Endpunkte haben das Format `{{server-id}}.server.transfer.{{region}}.amazonaws.com`.

Diese API-Schnittstellenreferenz für AWS Transfer Family enthält Dokumentation für eine Programmierschnittstelle, die Sie zur Verwaltung AWS Transfer Family verwenden können. Die Referenzstruktur:
+ Eine alphabetische Liste der API-Aktionen finden Sie unter [Actions](https://docs.aws.amazon.com/transfer/latest/APIReference/API_Operations.html).
+ Eine alphabetische Liste der Datentypen finden Sie unter. [Types](https://docs.aws.amazon.com/transfer/latest/APIReference/API_Types.html)
+ Eine Liste der häufigen Abfrageparameter finden Sie unter [Häufige Parameter](https://docs.aws.amazon.com/transfer/latest/APIReference/CommonParameters.html).
+ Beschreibungen der Fehlercodes finden Sie unter [Häufige Fehler](https://docs.aws.amazon.com/transfer/latest/APIReference/CommonErrors.html).

**Tipp**  
Anstatt einen Befehl tatsächlich auszuführen, können Sie den `--generate-cli-skeleton` Parameter mit jedem API-Aufruf verwenden, um eine Parametervorlage zu generieren und anzuzeigen. Anschließend können Sie die generierte Vorlage anpassen und als Eingabe für einen späteren Befehl verwenden. Einzelheiten finden Sie unter [Generieren und Verwenden einer Parameter-Skelettdatei](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-skeleton.html#cli-usage-skeleton-generate).

## API-Anfragen stellen
<a name="making-api-requests"></a>

Zusätzlich zur Verwendung der Konsole können Sie die AWS Transfer Family API verwenden, um Ihre Server programmgesteuert zu konfigurieren und zu verwalten. In diesem Abschnitt werden die AWS Transfer Family Vorgänge, das Signieren von Anfragen zur Authentifizierung und die Fehlerbehandlung beschrieben. Informationen zu den Regionen und Endpunkten, die für Transfer Family verfügbar sind, finden Sie unter [AWS Transfer Family Endpunkte und Kontingente](https://docs.aws.amazon.com/general/latest/gr/transfer-service.html) in der *Allgemeine AWS-Referenz*

**Anmerkung**  
Sie können die AWS SDKs auch bei der Entwicklung von Anwendungen mit Transfer Family; verwenden. Die AWS SDKs für Java, .NET und PHP umschließen die zugrunde liegende Transfer Family Family-API und vereinfachen so Ihre Programmieraufgaben. Informationen zum Herunterladen der SDK-Bibliotheken finden Sie unter [Beispielcodebibliotheken](https://aws.amazon.com/code).

### Erforderliche Anforderungsheader für Transfer Family
<a name="request-headers"></a>

In diesem Abschnitt werden die erforderlichen Header beschrieben, die Sie mit jeder POST-Anfrage an senden müssen. AWS Transfer Family In HTTP-Headern geben Sie wichtige Informationen über die Abfrage an, z. B, die Operation, die aufgerufen werden soll, das Datum der Abfrage und Informationen zur Ihrer Autorisierung als Sender der Abfrage. In Headern muss Groß- und Kleinschreibung beachtet werden; die Reihenfolge der Header ist nicht wichtig.

Das folgende Beispiel zeigt Header, die in der [ListServers](https://docs.aws.amazon.com/transfer/latest/userguide/API_ListServers.html)Operation verwendet werden.

```
POST / HTTP/1.1
Host: transfer.us-east-1.amazonaws.com
x-amz-target: TransferService.ListServers
x-amz-date: 20220507T012034Z
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20220507/us-east-1/transfer/aws4_request,
    SignedHeaders=content-type;host;x-amz-date;x-amz-target,
    Signature=13550350a8681c84c861aac2e5b440161c2b33a3e4f302ac680ca5b686de48de
Content-Type: application/x-amz-json-1.1
Content-Length: 17

{"MaxResults":10}
```

Im Folgenden sind die Header aufgeführt, die in Ihren POST-Anfragen an Transfer Family enthalten sein müssen. Die unten aufgeführten Header, die mit „x-amz“ beginnen, sind spezifisch für. AWS Alle anderen aufgeführten Header sind allgemeine Header für HTTP-Transaktionen.

### Eingaben und Unterschreiben von Familienanfragen übertragen
<a name="tf-request-structure"></a>

Alle Anforderungseingaben müssen als Teil der JSON-Nutzlast im Anfragetext gesendet werden. Für Aktionen, bei denen alle Anforderungsfelder optional sind, müssen Sie beispielsweise `ListServers` immer noch ein leeres JSON-Objekt im Anforderungstext angeben, z. B. `{}` Die Struktur der Transfer Family Family-Nutzlast request/response ist beispielsweise [DescribeServer](https://docs.aws.amazon.com/transfer/latest/userguide/API_DescribeServer.html)in der vorhandenen API-Referenz dokumentiert. 

Transfer Family unterstützt die Authentifizierung mit AWS Signature Version 4. Einzelheiten finden Sie unter [AWS API-Anfragen signieren](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-signing.html).

### Fehlermeldungen
<a name="RESTErrorResponses"></a>

Bei einem Fehler enthalten die Informationen im Antwort-Header:
+ Content-Type: `application/x-amz-json-1.1`
+ Einen passenden `4xx`- oder `5xx`-HTTP-Statuscode

Der Textkörper einer Fehlermeldung enthält Informationen zu dem aufgetretenen Fehler. Das folgende Beispiel zeigt eine Fehlerantwort mit der Ausgabesyntax von Antwortelementen für alle Fehlermeldungen.

```
{
    "__type": "String",
    "Message": "String", <!-- Message is lowercase in some instances -->
    "Resource": "String",
    "ResourceType": "String",
    "RetryAfterSeconds": "String"
}
```

In der folgenden Tabellen werden die Felder der JSON-Fehlerantwort in dieser Syntax erläutert.

**\_\_type**  
Eine der Ausnahmen bei einem Transfer Family Family-API-Aufruf.   
*Typ:* Zeichenfolge

**Nachricht** oder **Nachricht**  
Eine der Operationsfehlercode-Nachrichten .  
Einige Ausnahmen verwenden`message`, andere verwenden`Message`. Sie können den Code für Ihre Schnittstelle überprüfen, um den richtigen Fall zu ermitteln. Alternativ können Sie jede Option testen, um zu sehen, welche funktioniert.
*Typ:* Zeichenfolge

**Ressource**  
Die Ressource, für die der Fehler ausgelöst wurde. Wenn Sie beispielsweise versuchen, einen Benutzer zu erstellen, der bereits existiert, `Resource` ist dies der Benutzername für den vorhandenen Benutzer.  
*Typ:* Zeichenfolge

**ResourceType**  
Der Ressourcentyp, für den der Fehler ausgelöst wird. Wenn Sie beispielsweise versuchen, einen Benutzer zu erstellen, der bereits existiert, `ResourceType` ist `User` der.  
*Typ:* Zeichenfolge

**RetryAfterSeconds**  
Die Anzahl der Sekunden, die gewartet werden muss, bevor der Befehl erneut ausgeführt wird.  
*Typ:* Zeichenfolge

#### Beispiele für Antworten auf Fehler
<a name="RESTErrorResponsesExamples"></a>

Der folgende JSON-Hauptteil wird zurückgegeben, wenn Sie die `DescribeServer` API aufrufen und einen Server angeben, der nicht existiert.

```
{
  "__type": "ResourceNotFoundException",
  "Message": "Unknown server",
  "Resource": "s-11112222333344444",
  "ResourceType": "Server"
}
```

Der folgende JSON-Hauptteil wird zurückgegeben, wenn die Ausführung einer API zu einer Drosselung führt.

```
{
   "__type":"ThrottlingException",
   "RetryAfterSeconds":"1"
}
```

Der folgende JSON-Hauptteil wird zurückgegeben, wenn Sie die `CreateServer` API verwenden und nicht über ausreichende Berechtigungen verfügen, um einen Transfer Family Family-Server zu erstellen.

```
{
  "__type": "AccessDeniedException",
  "Message": "You do not have sufficient access to perform this action."
}
```

Der folgende JSON-Hauptteil wird zurückgegeben, wenn Sie die `CreateUser` API verwenden und einen Benutzer angeben, der bereits existiert.

```
{
  "__type": "ResourceExistsException",
  "Message": "User already exists",
  "Resource": "Alejandro-Rosalez",
  "ResourceType": "User"
}
```

### Verfügbare Bibliotheken
<a name="using-libraries"></a>

AWS bietet Bibliotheken, Beispielcode, Tutorials und andere Ressourcen für Softwareentwickler, die es vorziehen, Anwendungen mithilfe sprachspezifischer APIs anstelle der Befehlszeilentools und der Abfrage-API zu erstellen. Diese Bibliotheken bieten grundlegende Funktionen (nicht in den APIs enthalten) wie Anforderungsauthentifizierung, Wiederholungen von Anfragen und Fehlerbehandlung, sodass der Einstieg erleichtert wird. Siehe [Tools, auf denen Sie aufbauen können AWS](https://aws.amazon.com/tools/?id=docs_gateway)

Bibliotheken und Beispielcode in allen Sprachen finden Sie unter [Beispielcode und Bibliotheken](https://aws.amazon.com/code).

## Identitätsanbieter
<a name="identity-providers"></a>

AWS Transfer Family unterstützt mehrere Identitätsanbietertypen zur Authentifizierung und Verwaltung von Benutzern. Jeder Server kann nur eine Authentifizierungsmethode verwenden, die bei der Erstellung des Servers ausgewählt werden muss.

Der Dienst wurde verwaltet  
Bei der `SERVICE_MANAGED` Authentifizierungsmethode werden Benutzeranmeldeinformationen darin gespeichert und verwaltet AWS Transfer Family. Benutzer werden mit öffentlichen SSH-Schlüsseln authentifiziert, die mit ihrem Benutzernamen auf dem Server verknüpft sind.  
Jeder Benutzer kann einen oder mehrere öffentliche SSH-Schlüssel im Dienst speichern lassen. Wenn ein Client eine Dateioperation anfordert, stellt er den Benutzernamen und den privaten SSH-Schlüssel bereit, der anhand des gespeicherten öffentlichen Schlüssels authentifiziert wird.

Directory Service  
Die `AWS_DIRECTORY_SERVICE` Authentifizierungsmethode ermöglicht Ihnen die Integration mit dem AWS Directory Service für Microsoft Active Directory (AWS Directory Service for Microsoft Active Directory).  
Mit dieser Option können Sie die Benutzerauthentifizierung und den Zugriff über Ihre vorhandenen Active Directory-Gruppen verwalten. Benutzer können sich mit ihren Active Directory-Anmeldeinformationen authentifizieren.  
Es gibt ein Standardlimit von 100 Active Directory-Gruppen pro Server, das durch eine Erhöhung des Dienstlimits auf maximal 150 Gruppen erhöht werden kann.

Lambda  
Die `AWS_LAMBDA` Authentifizierungsmethode ermöglicht es Ihnen, mithilfe von eine Verbindung zu einem benutzerdefinierten Identitätsanbieter herzustellen AWS Lambda.  
Diese Option bietet Flexibilität bei der Integration in Ihre vorhandenen Identitätsmanagementsysteme. Die Lambda-Funktion ist dafür verantwortlich, Benutzer zu authentifizieren und die entsprechenden Zugriffsrichtlinien zurückzugeben.

Benutzerdefiniert (API Gateway)  
Die `API_GATEWAY` Authentifizierungsmethode (in der Konsole als **Benutzerdefiniert** angezeigt) ermöglicht es Ihnen, eine benutzerdefinierte Authentifizierungsmethode zu verwenden, die sowohl Benutzerauthentifizierung als auch Zugriffskontrolle bietet.  
Diese Methode basiert darauf, dass Amazon API Gateway Ihren API-Aufruf von Ihrem Identitätsanbieter verwendet, um Benutzeranfragen zu validieren. Sie können diese benutzerdefinierte Methode verwenden, um Benutzer anhand eines Verzeichnisdienstes, eines name/password Datenbankpaars oder eines anderen Mechanismus zu authentifizieren.

Für alle Authentifizierungsmethoden werden Benutzern Richtlinien zugewiesen, die ihren Zugriff auf Amazon S3 S3-Buckets oder Amazon Elastic File System-Dateisysteme definieren. Der Server erbt die Vertrauensstellung vom Benutzer über eine IAM-Rolle mit einer `AssumeRole` Aktion, sodass er Dateioperationen im Namen des Benutzers ausführen kann.

## Benennungskonventionen
<a name="conventions"></a>

AWS Transfer Family verwendet standardisierte Formate für Ressourcen-Identifikatoren und Amazon Resource Names (ARNs). Bei der Arbeit mit der API ist es wichtig, diese Konventionen zu verstehen. AWS Transfer Family 

### ID-Formate
<a name="id-formats"></a>

Die folgenden Konventionen werden bei AWS Transfer Family ID-Formaten eingehalten:

Server-IDs  
`ServerId`-Werte haben das Format `s-01234567890abcdef`.

Öffentliche SSH-Schlüssel-IDs  
`SshPublicKeyId`-Werte haben das Format `key-01234567890abcdef`.

Konnektor-IDs  
`ConnectorId`-Werte haben das Format `c-01234567890abcdef`.

Workflow-IDs  
`WorkflowId`-Werte haben das Format `w-01234567890abcdef`.

Profil-IDs  
`ProfileId`-Werte haben das Format `p-01234567890abcdef`.

WebApp IDs  
`WebAppId`-Werte haben das Format `webapp-01234567890abcdef`.

### ARN-Formate
<a name="arn-formats"></a>

Die Formate von Amazon Resource Name (ARN) haben die folgende Form:

Server-ARNs  
Für Server haben ARNs die folgende Form. `arn:aws:transfer:{{region}}:{{account-id}}:server/{{server-id}}`  
Beispiel: `arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef`.

Benutzer-ARNs  
Für Benutzer haben ARNs das Format `arn:aws:transfer:{{region}}:{{account-id}}:user/{{server-id}}/{{username}}`.  
Beispiel: `arn:aws:transfer:us-east-1:123456789012:user/s-01234567890abcdef/user1`.

ARNs des Anschlusses  
Für Steckverbinder haben ARNs die folgende Form. `arn:aws:transfer:{{region}}:{{account-id}}:connector/{{connector-id}}`  
Beispiel: `arn:aws:transfer:us-east-1:123456789012:connector/c-01234567890abcdef`.

Arbeitsablauf-ARNs  
Für Workflows haben ARNs die folgende Form. `arn:aws:transfer:{{region}}:{{account-id}}:workflow/{{workflow-id}}`  
Beispiel: `arn:aws:transfer:us-east-1:123456789012:workflow/w-01234567890abcdef`.

WebApp ARNs  
Für Webanwendungen haben ARNs die Form. `arn:aws:transfer:{{region}}:{{account-id}}:webapp/{{webapp-id}}`  
Beispiel: `arn:aws:transfer:us-east-1:123456789012:webapp/webapp-01234567890abcdef`.

Sie können Entitäten mit einem ARN Tags zuweisen, bei denen es sich um Schlüssel-Wert-Paare handelt. Tags sind Metadaten, die verwendet werden können, um diese Entitäten zu gruppieren oder nach ihnen zu suchen. Tags sind beispielsweise für die Buchhaltung nützlich.

## DNS und Endpunkte
<a name="dns-endpoints"></a>

AWS Transfer Family verwendet standardisierte DNS-Namenskonventionen sowohl für API-Endpunkte als auch für Serverendpunkte. Das Verständnis dieser Endpunkte ist für die Konfiguration von Clients und die Durchführung von API-Aufrufen unerlässlich.

### API-Endpunkte
<a name="api-endpoints"></a>

API-Endpunkte werden für API-Aufrufe zur Verwaltung AWS Transfer Family von Ressourcen verwendet. Diese Endpunkte haben die folgenden Formen:

Standard-API-Endpunkte  
Standard-API-Endpunkte haben die Form. `transfer.{{region}}.amazonaws.com`  
Beispiel: `transfer.us-east-1.amazonaws.com`

Dual-Stack API-Endpunkte  
AWS Transfer Family bietet Dual-Stack-API-Endpunkte, auf die entweder über IPv4- oder IPv6-Anfragen zugegriffen werden kann:  
+ https://transfer.*{{region-code}}*.api.aws
+ https://transfer-fips.*{{region-code}}*.api.aws

### Server-Endpunkte
<a name="server-endpoints"></a>

Serverendpunkte werden von Dateiübertragungsclients verwendet, um eine Verbindung zu AWS Transfer Family Servern herzustellen. Diese Endpunkte haben die folgenden Formen:

Standard-Serverendpunkte  
Standard-Serverendpunkte haben die Form. `{{server-id}}.server.transfer.{{region}}.amazonaws.com`  
Beispiel: `s-01234567890abcdef.server.transfer.us-east-1.amazonaws.com`

Benutzerdefinierte Hostnamen  
Sie können auch benutzerdefinierte Hostnamen für Ihre AWS Transfer Family Server konfigurieren. Benutzerdefinierte Hostnamen können verwendet werden, um Ihren Benutzern ein benutzerfreundlicheres oder markenspezifischeres Erlebnis zu bieten.  
Um einen benutzerdefinierten Hostnamen zu verwenden, müssen Sie:  

1. Besitzen Sie den Domainnamen

1. Stellen Sie ein gültiges Zertifikat bereit

1. Konfigurieren Sie DNS-Einträge so, dass sie auf Ihren AWS Transfer Family Server verweisen

Eine vollständige Liste der AWS Transfer Family Endpunkte nach AWS Regionen finden Sie unter [AWS Transfer Family Endpunkte und Kontingente](https://docs.aws.amazon.com/general/latest/gr/transfer-service.html) in der. *Allgemeine AWS-Referenz*