Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWS Transfer Family Referensi API
Panduan Referensi API lengkap untuk Transfer Family tersedia di Referensi AWS Transfer Family API.
AWS Transfer Family adalah layanan transfer aman yang dapat Anda gunakan untuk mentransfer file masuk dan keluar dari penyimpanan Amazon Simple Storage Service (Amazon S3) melalui protokol berikut:
-
Protokol Transfer File Secure Shell (SSH) (SFTP)
-
Protokol Transfer File Aman (FTPS)
-
Protokol Transfer File (FTP)
-
Pernyataan Penerapan 2 (AS2)
Server, pengguna, dan peran semuanya diidentifikasi oleh Amazon Resource Name (ARN) mereka. Anda dapat menetapkan tag, yang merupakan pasangan nilai kunci, ke entitas dengan ARN. Tag adalah metadata yang dapat digunakan untuk mengelompokkan atau mencari entitas ini. Salah satu contoh di mana tag berguna adalah untuk tujuan akuntansi.
Konvensi berikut diamati dalam format AWS Transfer Family ID:
-
ServerIdnilai mengambil bentuks-01234567890abcdef. -
SshPublicKeyIdnilai mengambil bentukkey-01234567890abcdef.
Format Amazon Resource Name (ARN) mengambil bentuk berikut:
-
Untuk server, ARN mengambil formulir
arn:aws:transfer:.region:account-id:server/server-idContoh dari ARN server adalah:
arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef. -
Untuk pengguna, ARN mengambil formulir
arn:aws:transfer:.region:account-id:user/server-id/usernameContohnya adalah
arn:aws:transfer:us-east-1:123456789012:user/s-01234567890abcdef/user1.
Entri DNS (endpoint) yang digunakan adalah sebagai berikut:
-
Titik akhir API mengambil formulir
transfer..region.amazonaws.com -
Titik akhir server mengambil formulir
.server-id.server.transfer.region.amazonaws.com
Referensi antarmuka API ini AWS Transfer Family berisi dokumentasi untuk antarmuka pemrograman yang dapat Anda gunakan untuk mengelola AWS Transfer Family. Struktur referensi adalah sebagai berikut:
-
Untuk daftar tindakan API menurut abjad, lihat. Actions
-
Untuk daftar alfabet tipe data, lihat. Types
-
Untuk daftar parameter kueri umum, lihat Parameter Umum.
-
Untuk deskripsi kode kesalahan, lihat Kesalahan Umum.
Tip
Daripada benar-benar menjalankan perintah, Anda dapat menggunakan --generate-cli-skeleton parameter dengan panggilan API apa pun untuk menghasilkan dan menampilkan templat parameter. Anda kemudian dapat menggunakan template yang dihasilkan untuk menyesuaikan dan digunakan sebagai input pada perintah selanjutnya. Untuk detailnya, lihat Menghasilkan dan menggunakan file kerangka parameter.
Membuat permintaan API
Selain menggunakan konsol, Anda dapat menggunakan AWS Transfer Family API untuk mengonfigurasi dan mengelola server secara terprogram. Bagian ini menjelaskan AWS Transfer Family operasi, penandatanganan permintaan untuk otentikasi, dan penanganan kesalahan. Untuk informasi tentang wilayah dan titik akhir yang tersedia untuk Transfer Family, lihat AWS Transfer Family titik akhir dan kuota di Referensi Umum AWS
catatan
Anda juga dapat menggunakan AWS SDK saat mengembangkan aplikasi dengan Transfer Family;. AWS SDK untuk Java, .NET, dan PHP membungkus Transfer Family API yang mendasarinya, menyederhanakan tugas pemrograman Anda. Untuk informasi tentang mengunduh perpustakaan SDK, lihat Perpustakaan kode sampel
Transfer Family membutuhkan header permintaan
Bagian ini menjelaskan header yang diperlukan yang harus Anda kirim dengan setiap permintaan POST. AWS Transfer Family Anda menyertakan header HTTP untuk mengidentifikasi informasi kunci tentang permintaan termasuk operasi yang ingin Anda panggil, tanggal permintaan, dan informasi yang menunjukkan otorisasi Anda sebagai pengirim permintaan. Header tidak peka huruf besar/kecil dan urutan header tidak penting.
Contoh berikut menunjukkan header yang digunakan dalam ListServersoperasi.
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}
Berikut ini adalah header yang harus disertakan dengan permintaan POST Anda ke Transfer Family. Header yang ditunjukkan di bawah ini yang dimulai dengan “x-amz” khusus untuk. AWS Semua header lain yang terdaftar adalah header umum yang digunakan dalam transaksi HTTP.
Transfer Family meminta masukan dan penandatanganan
Semua input permintaan harus dikirim sebagai bagian dari muatan JSON di badan permintaan. Untuk Tindakan di mana semua bidang permintaan bersifat opsionalListServers, misalnya, Anda masih perlu menyediakan objek JSON kosong di badan permintaan, seperti{}. Struktur payload Transfer Family request/response didokumentasikan dalam referensi API yang ada, misalnya DescribeServer.
Transfer Family mendukung otentikasi menggunakan AWS Signature Versi 4. Untuk detailnya, lihat Menandatangani permintaan AWS API.
Tanggapan kesalahan
Ketika ada kesalahan, informasi header respons berisi:
-
Content-Type:
application/x-amz-json-1.1 -
Kode status yang sesuai
4xxatau5xxHTTP
Tubuh respons kesalahan berisi informasi tentang kesalahan yang terjadi. Contoh respon kesalahan berikut menunjukkan sintaks output elemen respon umum untuk semua respon kesalahan.
{ "__type": "String", "Message": "String", <!-- Message is lowercase in some instances --> "Resource": "String", "ResourceType": "String", "RetryAfterSeconds": "String" }
Tabel berikut menjelaskan bidang respons kesalahan JSON yang ditunjukkan dalam sintaks sebelumnya.
- __jenis
-
Salah satu pengecualian dari panggilan Transfer Family API.
Tipe: String
- Pesan atau pesan
-
Salah satu pesan kode kesalahan operasi.
catatan
Beberapa pengecualian digunakan
message, dan yang lainnya menggunakanMessage. Anda dapat memeriksa kode untuk antarmuka Anda untuk menentukan kasus yang tepat. Atau, Anda dapat menguji setiap opsi untuk melihat mana yang berfungsi.Tipe: String
- Sumber Daya
-
Sumber daya yang kesalahannya dipanggil. Misalnya, jika Anda mencoba membuat pengguna yang sudah ada, itu
Resourceadalah nama pengguna untuk pengguna yang ada.Tipe: String
- ResourceType
-
Jenis sumber daya yang kesalahannya dipanggil. Misalnya, jika Anda mencoba membuat pengguna yang sudah ada,
ResourceTypeisUser.Tipe: String
- RetryAfterSeconds
-
Jumlah detik untuk menunggu sebelum mencoba kembali perintah.
Tipe: String
Contoh respons kesalahan
Badan JSON berikut dikembalikan jika Anda memanggil DescribeServer API dan menentukan server yang tidak ada.
{ "__type": "ResourceNotFoundException", "Message": "Unknown server", "Resource": "s-11112222333344444", "ResourceType": "Server" }
Badan JSON berikut dikembalikan jika menjalankan API menyebabkan pelambatan terjadi.
{ "__type":"ThrottlingException", "RetryAfterSeconds":"1" }
Badan JSON berikut dikembalikan jika Anda menggunakan CreateServer API dan Anda tidak memiliki izin yang cukup untuk membuat server Transfer Family.
{ "__type": "AccessDeniedException", "Message": "You do not have sufficient access to perform this action." }
Badan JSON berikut dikembalikan jika Anda menggunakan CreateUser API dan menentukan pengguna yang sudah ada.
{ "__type": "ResourceExistsException", "Message": "User already exists", "Resource": "Alejandro-Rosalez", "ResourceType": "User" }
Pustaka yang tersedia
AWS menyediakan pustaka, kode sampel, tutorial, dan sumber daya lainnya untuk pengembang perangkat lunak yang lebih suka membangun aplikasi menggunakan API khusus bahasa alih-alih alat baris perintah dan API Kueri. Pustaka ini menyediakan fungsi dasar (tidak termasuk dalam API), seperti otentikasi permintaan, percobaan ulang permintaan, dan penanganan kesalahan sehingga lebih mudah untuk memulai. Lihat Alat untuk dibangun AWS
Untuk pustaka dan kode sampel dalam semua bahasa, lihat Contoh kode & pustaka
Penyedia Identitas
AWS Transfer Family mendukung beberapa jenis penyedia identitas untuk mengautentikasi dan mengelola pengguna. Setiap server hanya dapat menggunakan satu metode otentikasi, yang harus dipilih ketika server dibuat.
- Layanan Dikelola
-
Dengan metode
SERVICE_MANAGEDotentikasi, kredensyal pengguna disimpan dan dikelola di dalamnya. AWS Transfer Family Pengguna diautentikasi menggunakan kunci publik SSH yang terkait dengan nama pengguna mereka di server.Setiap pengguna dapat memiliki satu atau lebih kunci publik SSH yang disimpan dalam layanan. Ketika klien meminta operasi file, ia menyediakan nama pengguna dan kunci pribadi SSH, yang diautentikasi terhadap kunci publik yang disimpan.
- Directory Service
-
Metode
AWS_DIRECTORY_SERVICEotentikasi memungkinkan Anda untuk mengintegrasikan dengan AWS Directory Service untuk Microsoft Active Directory (AWS Directory Service for Microsoft Active Directory).Opsi ini memungkinkan Anda untuk mengelola otentikasi pengguna dan akses melalui grup Active Directory yang ada. Pengguna dapat mengautentikasi menggunakan kredensil Direktori Aktif mereka.
Ada batas default 100 grup Active Directory per server, yang dapat ditingkatkan hingga maksimum 150 grup melalui peningkatan batas layanan.
- Lambda
-
Metode
AWS_LAMBDAotentikasi memungkinkan Anda untuk terhubung ke penyedia identitas kustom menggunakan AWS Lambda.Opsi ini memberikan fleksibilitas untuk berintegrasi dengan sistem manajemen identitas Anda yang ada. Fungsi Lambda bertanggung jawab untuk mengautentikasi pengguna dan mengembalikan kebijakan akses yang sesuai.
- Kustom (API Gateway)
-
Metode
API_GATEWAYotentikasi (ditampilkan sebagai Kustom di konsol) memungkinkan Anda menggunakan metode otentikasi khusus yang menyediakan otentikasi pengguna dan kontrol akses.Metode ini bergantung pada Amazon API Gateway untuk menggunakan panggilan API Anda dari penyedia identitas Anda untuk memvalidasi permintaan pengguna. Anda dapat menggunakan metode kustom ini untuk mengautentikasi pengguna terhadap layanan direktori, name/password pasangan database, atau mekanisme lainnya.
Untuk semua metode otentikasi, pengguna diberi kebijakan yang menentukan akses mereka ke bucket Amazon S3 atau sistem file Amazon Elastic File System. Server mewarisi hubungan kepercayaan dari pengguna melalui peran IAM dengan AssumeRole tindakan, memungkinkannya untuk melakukan operasi file atas nama pengguna.
Konvensi Penamaan
AWS Transfer Family menggunakan format standar untuk pengidentifikasi sumber daya dan Amazon Resource Names (ARN). Memahami konvensi ini penting saat bekerja dengan AWS Transfer Family API.
Format ID
Konvensi berikut diamati dalam format AWS Transfer Family ID:
- ID Server
-
ServerIdnilai mengambil bentuks-01234567890abcdef. - ID Kunci Publik SSH
-
SshPublicKeyIdnilai mengambil bentukkey-01234567890abcdef. - ID konektor
-
ConnectorIdnilai mengambil bentukc-01234567890abcdef. - ID Alur Kerja
-
WorkflowIdnilai mengambil bentukw-01234567890abcdef. - ID Profil
-
ProfileIdnilai mengambil bentukp-01234567890abcdef. - WebApp ID
-
WebAppIdnilai mengambil bentukwebapp-01234567890abcdef.
Format ARN
Format Amazon Resource Name (ARN) mengambil bentuk berikut:
- Server ARN
-
Untuk server, ARN mengambil formulir
arn:aws:transfer:.region:account-id:server/server-idContoh:
arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef. - ARN Pengguna
-
Untuk pengguna, ARN mengambil formulir
arn:aws:transfer:.region:account-id:user/server-id/usernameContoh:
arn:aws:transfer:us-east-1:123456789012:user/s-01234567890abcdef/user1. - Konektor ARN
-
Untuk konektor, ARN mengambil formulir
arn:aws:transfer:.region:account-id:connector/connector-idContoh:
arn:aws:transfer:us-east-1:123456789012:connector/c-01234567890abcdef. - ARN Alur Kerja
-
Untuk alur kerja, ARN mengambil formulir.
arn:aws:transfer:region:account-id:workflow/workflow-idContoh:
arn:aws:transfer:us-east-1:123456789012:workflow/w-01234567890abcdef. - WebApp ARN
-
Untuk aplikasi web, ARN mengambil formulir
arn:aws:transfer:.region:account-id:webapp/webapp-idContoh:
arn:aws:transfer:us-east-1:123456789012:webapp/webapp-01234567890abcdef.
Anda dapat menetapkan tag, yang merupakan pasangan nilai kunci, ke entitas dengan ARN. Tag adalah metadata yang dapat digunakan untuk mengelompokkan atau mencari entitas ini. Salah satu contoh di mana tag berguna adalah untuk tujuan akuntansi.
DNS dan Endpoint
AWS Transfer Family menggunakan konvensi penamaan DNS standar untuk titik akhir API dan titik akhir server. Memahami titik akhir ini sangat penting untuk mengonfigurasi klien dan melakukan panggilan API.
Titik Akhir API
Titik akhir API digunakan untuk membuat panggilan API untuk mengelola AWS Transfer Family sumber daya. Titik akhir ini mengambil bentuk berikut:
- Titik Akhir API Standar
-
Titik akhir API standar mengambil formulir
transfer..region.amazonaws.com.rproxy.govskope.caContoh:
transfer.us-east-1.amazonaws.com - Dual-Stack Titik Akhir API
-
AWS Transfer Family menawarkan titik akhir API dual-stack yang dapat diakses menggunakan permintaan IPv4 atau IPv6:
-
https://transfer.
region-code.api.aws -
https://transfer-fips.
region-code.api.aws
-
Titik Akhir Server
Endpoint server digunakan oleh klien transfer file untuk terhubung ke AWS Transfer Family server. Titik akhir ini mengambil bentuk berikut:
- Titik Akhir Server Standar
-
Titik akhir server standar mengambil formulir
.server-id.server.transfer.region.amazonaws.com.rproxy.govskope.caContoh:
s-01234567890abcdef.server.transfer.us-east-1.amazonaws.com - Nama Host Kustom
-
Anda juga dapat mengonfigurasi nama host khusus untuk AWS Transfer Family server Anda. Nama host khusus dapat digunakan untuk memberikan pengalaman yang lebih ramah pengguna atau bermerek bagi pengguna Anda.
Untuk menggunakan nama host khusus, Anda harus:
-
Memiliki nama domain
-
Berikan sertifikat yang valid
-
Konfigurasikan catatan DNS untuk menunjuk ke server Anda AWS Transfer Family
-
Untuk daftar lengkap AWS Transfer Family titik akhir menurut AWS Wilayah, lihat AWS Transfer Family titik akhir dan kuota di. Referensi Umum AWS