TestIdentityProvider - AWS Transfer Family

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

TestIdentityProvider

Jika server IdentityProviderType berkemampuan protokol transfer file AWS_DIRECTORY_SERVICE atauAPI_Gateway, uji apakah penyedia identitas Anda berhasil disiapkan. Kami sangat menyarankan Anda memanggil operasi ini untuk menguji metode otentikasi Anda segera setelah Anda membuat server Anda. Dengan demikian, Anda dapat memecahkan masalah dengan integrasi penyedia identitas untuk memastikan bahwa pengguna Anda dapat berhasil menggunakan layanan.

Parameter ServerId dan UserName diperlukan. ItuServerProtocol,SourceIp, dan UserPassword semuanya opsional.

Perhatikan hal berikut:

  • Anda tidak dapat menggunakan TestIdentityProvider jika server AndaSERVICE_MANAGED. IdentityProviderType

  • TestIdentityProvidertidak berfungsi dengan kunci: hanya menerima kata sandi.

  • TestIdentityProviderdapat menguji operasi kata sandi untuk Penyedia Identitas khusus yang menangani kunci dan kata sandi.

  • Jika Anda memberikan nilai yang salah untuk parameter apa pun, Response bidang kosong.

  • Jika Anda memberikan ID server untuk server yang menggunakan pengguna yang dikelola layanan, Anda mendapatkan kesalahan:

    An error occurred (InvalidRequestException) when calling the TestIdentityProvider operation: s-server-ID not configured for external auth

  • Jika Anda memasukkan ID Server untuk --server-id parameter yang tidak mengidentifikasi server Transfer yang sebenarnya, Anda menerima kesalahan berikut:

    An error occurred (ResourceNotFoundException) when calling the TestIdentityProvider operation: Unknown server.

    Mungkin saja sever Anda berada di wilayah yang berbeda. Anda dapat menentukan wilayah dengan menambahkan yang berikut:--region region-code, seperti --region us-east-2 menentukan server di AS Timur (Ohio).

Sintaksis Permintaan

{ "ServerId": "string", "ServerProtocol": "string", "SourceIp": "string", "UserName": "string", "UserPassword": "string" }

Parameter Permintaan

Untuk informasi tentang parameter yang umum untuk semua tindakan, lihat Parameter Umum.

Permintaan menerima data berikut dalam format JSON.

ServerId

Pengidentifikasi yang ditetapkan sistem untuk server tertentu. Metode otentikasi pengguna server itu diuji dengan nama pengguna dan kata sandi.

Jenis: String

Kendala Panjang: Panjang tetap 19.

Pola: s-([0-9a-f]{17})

Wajib: Ya

ServerProtocol

Jenis protokol transfer file yang akan diuji.

Protokol yang tersedia adalah:

  • Protokol Transfer File Secure Shell (SSH) (SFTP)

  • Protokol Transfer File Aman (FTPS)

  • Protokol Transfer File (FTP)

  • Pernyataan Penerapan 2 (AS2)

Jenis: String

Nilai yang Valid: SFTP | FTP | FTPS | AS2

Wajib: Tidak

SourceIp

Alamat IP sumber akun yang akan diuji.

Jenis: String

Batasan Panjang: Panjang minimum 0. Panjang maksimum sebesar 32.

Pola: \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}

Wajib: Tidak

UserName

Nama akun yang akan diuji.

Jenis: String

Batasan Panjang: Panjang minimum 3. Panjang maksimum 100.

Pola: [\w][\w@.-]{2,99}

Wajib: Ya

UserPassword

Kata sandi akun yang akan diuji.

Jenis: String

Batasan Panjang: Panjang minimum 0. Panjang maksimum 1024.

Wajib: Tidak

Sintaksis Respons

{ "Message": "string", "Response": "string", "StatusCode": number, "Url": "string" }

Elemen Respons

Jika tindakan berhasil, layanan mengirimkan kembali respons HTTP 200.

Layanan mengembalikan data berikut dalam format JSON.

Message

Pesan yang menunjukkan apakah tes berhasil atau tidak.

catatan

Jika string kosong dikembalikan, penyebab yang paling mungkin adalah otentikasi gagal karena nama pengguna atau kata sandi yang salah.

Jenis: String

Response

Respons yang dikembalikan dari API Gateway atau fungsi Lambda Anda.

Jenis: String

StatusCode

Kode status HTTP yang merupakan respons dari API Gateway atau fungsi Lambda Anda.

Jenis: Integer

Url

Titik akhir layanan yang digunakan untuk mengautentikasi pengguna.

Jenis: String

Batasan Panjang: Panjang minimum 0. Panjang maksimum sebesar 255.

Kesalahan

Untuk informasi tentang kesalahan yang umum untuk semua tindakan, lihat Kesalahan Umum.

InternalServiceError

Pengecualian ini dilemparkan ketika kesalahan terjadi dalam AWS Transfer Family layanan.

Kode Status HTTP: 500

InvalidRequestException

Pengecualian ini dilontarkan ketika klien mengirimkan permintaan yang salah format.

Kode Status HTTP: 400

ResourceNotFoundException

Pengecualian ini dilemparkan ketika sumber daya tidak ditemukan oleh layanan AWS Transfer Family.

Kode Status HTTP: 400

ServiceUnavailableException

Permintaan gagal karena layanan AWS Transfer Family tidak tersedia.

Kode Status HTTP: 500

Contoh

Contoh

Permintaan berikut mengembalikan pesan dari penyedia identitas bahwa kombinasi nama pengguna dan kata sandi adalah identitas yang valid untuk digunakan AWS Transfer Family.

Permintaan Sampel

{ "ServerID": "s-01234567890abcdef", "UserName": "my_user", "UserPassword": "MyPassword-1" }

Contoh

Respons berikut menunjukkan respons sampel untuk tes yang berhasil.

Contoh Respons

"Response":" {\"homeDirectory\":\"/mybucket001\",\"homeDirectoryDetails\":null,\"homeDirectoryType\":\"PATH\",\"posixProfile\":null, \"publicKeys\":\"[ssh-rsa-key]\",\"role\":\"arn:aws:iam::123456789012:role/my_role\",\"policy\":null,\"username\":\"transferuser002\", \"identityProviderType\":null,\"userConfigMessage\":null)"} "StatusCode": "200", "Message": ""

Contoh

Respons berikut menunjukkan bahwa pengguna yang ditentukan milik lebih dari satu grup yang memiliki akses.

"Response":"", "StatusCode":200, "Message":"More than one associated access found for user's groups."

Contoh

Jika Anda telah membuat dan mengonfigurasi penyedia identitas kustom dengan menggunakan API Gateway, Anda dapat memasukkan perintah berikut untuk menguji pengguna Anda:

aws transfer test-identity-provider --server-id s-0123456789abcdefg --user-name myuser

di mana s-0123456789abcdefg adalah server transfer Anda, dan myuser adalah nama pengguna untuk pengguna kustom Anda.

Jika perintah berhasil, respons Anda mirip dengan yang berikut ini, di mana:

  • Akun AWS ID adalah 012345678901

  • Peran pengguna adalah user-role-api-gateway

  • Direktori home adalah myuser-bucket

  • Kunci publik adalah kunci publik

  • URL pemanggilan adalah URL pemanggilan

{ "Response": "{\"Role\": \"arn:aws:iam::012345678901:role/user-role-api-gateway\",\"HomeDirectory\": \"/myuser-bucket\",\"PublicKeys\": \"[public-key]\"}", "StatusCode": 200, "Message": "", "Url": "https://invocation-URL/servers/s-0123456789abcdefg/users/myuser/config" }

Lihat Juga

Untuk informasi selengkapnya tentang penggunaan API ini di salah satu AWS SDK khusus bahasa, lihat berikut ini: