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
Das vollständige API-Referenzhandbuch für Transfer Family ist unter AWS Transfer Family API Reference 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 Formats-01234567890abcdef. -
SshPublicKeyId-Werte haben das Formatkey-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-idEin 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/usernameEin 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.
-
Eine alphabetische Liste der Datentypen finden Sie unter. Types
-
Eine Liste der häufigen Abfrageparameter finden Sie unter Häufige Parameter.
-
Beschreibungen der Fehlercodes finden Sie unter Häufige Fehler.
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.
API-Anfragen stellen
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 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
Erforderliche Anforderungsheader für Transfer Family
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 ListServersOperation verwendet werden.
POST / HTTP/1.1 Host:transfer---us-east-1.amazonaws.com.rproxy.govskope.cax-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
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 DescribeServerin der vorhandenen API-Referenz dokumentiert.
Transfer Family unterstützt die Authentifizierung mit AWS Signature Version 4. Einzelheiten finden Sie unter AWS API-Anfragen signieren.
Fehlermeldungen
Bei einem Fehler enthalten die Informationen im Antwort-Header:
-
Content-Type:
application/x-amz-json-1.1 -
Einen passenden
4xx- oder5xx-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 .
Anmerkung
Einige Ausnahmen verwenden
message, andere verwendenMessage. 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,
Resourceist 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,
ResourceTypeistUserder.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
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
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
Bibliotheken und Beispielcode in allen Sprachen finden Sie unter Beispielcode und Bibliotheken
Identitätsanbieter
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_MANAGEDAuthentifizierungsmethode 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_SERVICEAuthentifizierungsmethode 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_LAMBDAAuthentifizierungsmethode 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_GATEWAYAuthentifizierungsmethode (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
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
Die folgenden Konventionen werden bei AWS Transfer Family ID-Formaten eingehalten:
- Server-IDs
-
ServerId-Werte haben das Formats-01234567890abcdef. - Öffentliche SSH-Schlüssel-IDs
-
SshPublicKeyId-Werte haben das Formatkey-01234567890abcdef. - Konnektor-IDs
-
ConnectorId-Werte haben das Formatc-01234567890abcdef. - Workflow-IDs
-
WorkflowId-Werte haben das Formatw-01234567890abcdef. - Profil-IDs
-
ProfileId-Werte haben das Formatp-01234567890abcdef. - WebApp IDs
-
WebAppId-Werte haben das Formatwebapp-01234567890abcdef.
ARN-Formate
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-idBeispiel:
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/usernameBeispiel:
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-idBeispiel:
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-idBeispiel:
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-idBeispiel:
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
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
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.rproxy.govskope.caBeispiel:
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
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.rproxy.govskope.caBeispiel:
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:
-
Besitzen Sie den Domainnamen
-
Stellen Sie ein gültiges Zertifikat bereit
-
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 in der. Allgemeine AWS-Referenz