CreateUser - AWS Transfer Family

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

CreateUser

Membuat pengguna dan mengaitkannya dengan server berkemampuan protokol transfer file yang ada. Anda hanya dapat membuat dan mengaitkan pengguna dengan server yang memiliki IdentityProviderType atur ke SERVICE_MANAGED. Dengan menggunakan parameter forCreateUser, Anda dapat menentukan nama pengguna, mengatur direktori home, menyimpan kunci publik pengguna, dan menetapkan peran AWS Identity and Access Management (IAM) pengguna. Anda juga dapat menambahkan kebijakan sesi secara opsional, dan menetapkan metadata dengan tag yang dapat digunakan untuk mengelompokkan dan mencari pengguna.

Sintaksis Permintaan

{ "HomeDirectory": "string", "HomeDirectoryMappings": [ { "Entry": "string", "Target": "string", "Type": "string" } ], "HomeDirectoryType": "string", "Policy": "string", "PosixProfile": { "Gid": number, "SecondaryGids": [ number ], "Uid": number }, "Role": "string", "ServerId": "string", "SshPublicKeyBody": "string", "Tags": [ { "Key": "string", "Value": "string" } ], "UserName": "string" }

Parameter Permintaan

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

Permintaan menerima data berikut dalam JSON format.

HomeDirectory

Direktori arahan (folder) untuk pengguna ketika mereka masuk ke server menggunakan klien.

Contoh HomeDirectory adalah /bucket_name/home/mydirectory.

catatan

Parameter HomeDirectory hanya digunakan jika HomeDirectoryType diatur ke PATH.

Tipe: String

Batasan Panjang: Panjang minimum 0. Panjang maksimum 1024.

Pola: (|/.*)

Wajib: Tidak

HomeDirectoryMappings

Pemetaan direktori logis yang menentukan jalur dan kunci Amazon S3 atau EFS Amazon apa yang harus terlihat oleh pengguna Anda dan bagaimana Anda ingin membuatnya terlihat. Anda harus menentukan Entry dan Target memasangkan, di mana Entry menunjukkan bagaimana jalur dibuat terlihat dan Target merupakan jalur Amazon S3 atau Amazon yang sebenarnya. EFS Jika Anda hanya menentukan target, itu ditampilkan apa adanya. Anda juga harus memastikan bahwa peran AWS Identity and Access Management (IAM) Anda menyediakan akses ke jalur diTarget. Nilai ini dapat diatur hanya ketika HomeDirectoryType diatur ke LOGICAL.

Berikut ini adalah contoh Entry dan Target pair.

[ { "Entry": "/directory1", "Target": "/bucket_name/home/mydirectory" } ]

Dalam kebanyakan kasus, Anda dapat menggunakan nilai ini alih-alih kebijakan sesi untuk mengunci pengguna Anda ke direktori home yang ditunjuk (chroot“”). Untuk melakukan ini, Anda dapat mengatur Entry ke / dan mengatur Target ke nilai yang harus dilihat pengguna untuk direktori home mereka ketika mereka masuk.

Berikut ini adalah contoh Entry dan Target pair untukchroot.

[ { "Entry": "/", "Target": "/bucket_name/home/mydirectory" } ]

Tipe: Array objek HomeDirectoryMapEntry

Anggota Array: Jumlah minimum 1 item. Jumlah maksimum 50000 item.

Wajib: Tidak

HomeDirectoryType

Jenis direktori pendaratan (folder) yang Anda inginkan direktori home pengguna Anda ketika mereka masuk ke server. Jika Anda mengaturnyaPATH, pengguna akan melihat bucket Amazon S3 absolut atau EFS jalur Amazon seperti pada klien protokol transfer file mereka. Jika Anda menyetelnyaLOGICAL, Anda harus menyediakan pemetaan HomeDirectoryMappings untuk bagaimana Anda ingin membuat jalur Amazon S3 atau EFS Amazon terlihat oleh pengguna Anda.

catatan

Jika HomeDirectoryType yaLOGICAL, Anda harus memberikan pemetaan, menggunakan parameter. HomeDirectoryMappings Jika, di sisi lain, HomeDirectoryType adalahPATH, Anda memberikan jalur absolut menggunakan HomeDirectory parameter. Anda tidak dapat memiliki keduanya HomeDirectory dan HomeDirectoryMappings di template Anda.

Tipe: String

Nilai yang Valid: PATH | LOGICAL

Wajib: Tidak

Policy

Kebijakan sesi untuk pengguna Anda sehingga Anda dapat menggunakan peran AWS Identity and Access Management (IAM) yang sama di beberapa pengguna. Kebijakan ini mencakup akses pengguna ke sebagian bucket Amazon S3 mereka. Variabel yang dapat Anda gunakan dalam kebijakan ini meliputi ${Transfer:UserName}, ${Transfer:HomeDirectory}, dan ${Transfer:HomeBucket}.

catatan

Kebijakan ini hanya berlaku jika domainnya ServerId adalah Amazon S3. Amazon EFS tidak menggunakan kebijakan sesi.

Untuk kebijakan sesi, AWS Transfer Family menyimpan kebijakan sebagai JSON gumpalan, bukan Amazon Resource Name (ARN) kebijakan. Anda menyimpan kebijakan sebagai JSON gumpalan dan meneruskannya dalam Policy argumen.

Untuk contoh kebijakan sesi, lihat Contoh kebijakan sesi.

Untuk informasi selengkapnya, lihat AssumeRoledi APIReferensi Layanan Token AWS Keamanan.

Tipe: String

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

Wajib: Tidak

PosixProfile

Menentukan POSIX identitas lengkap, termasuk ID pengguna (Uid), ID grup (Gid), dan grup sekunder apa pun IDs (SecondaryGids), yang mengontrol akses pengguna ke sistem EFS file Amazon Anda. POSIXIzin yang ditetapkan pada file dan direktori di Amazon EFS menentukan tingkat akses yang didapat pengguna Anda saat mentransfer file masuk dan keluar dari sistem file Amazon EFS Anda.

Tipe: Objek PosixProfile

Wajib: Tidak

Role

Nama Sumber Daya Amazon (ARN) dari peran AWS Identity and Access Management (IAM) yang mengontrol akses pengguna ke bucket Amazon S3 atau sistem file EFS Amazon. Kebijakan yang dilampirkan pada peran ini menentukan tingkat akses yang ingin Anda berikan kepada pengguna saat mentransfer file masuk dan keluar dari bucket Amazon S3 atau sistem file EFS Amazon Anda. IAMPeran tersebut juga harus berisi hubungan kepercayaan yang memungkinkan server mengakses sumber daya Anda saat melayani permintaan transfer pengguna Anda.

Tipe: String

Batasan Panjang: Panjang minimum 20. Panjang maksimum 2048.

Pola: arn:.*role/\S+

Wajib: Ya

ServerId

Pengidentifikasi unik yang ditetapkan sistem untuk instans server. Ini adalah server tertentu tempat Anda menambahkan pengguna.

Tipe: String

Kendala Panjang: Panjang tetap 19.

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

Wajib: Ya

SshPublicKeyBody

Bagian publik dari kunci Secure Shell (SSH) yang digunakan untuk mengautentikasi pengguna ke server.

Tiga elemen format kunci SSH publik standar adalah<key type>,<body base64>, dan opsional<comment>, dengan spasi di antara setiap elemen.

AWS Transfer Family menerimaRSA,ECDSA, dan ED25519 kunci.

  • Untuk RSA kunci, tipe kuncinya adalahssh-rsa.

  • Untuk ED25519 kunci, tipe kuncinya adalahssh-ed25519.

  • Untuk ECDSA kunci, jenis kuncinya adalahecdsa-sha2-nistp256,ecdsa-sha2-nistp384, atauecdsa-sha2-nistp521, tergantung pada ukuran kunci yang Anda hasilkan.

Tipe: String

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

Wajib: Tidak

Tags

Pasangan nilai-kunci yang dapat digunakan untuk grup dan mencari pengguna. Tanda adalah metadata yang dilampirkan ke pengguna untuk tujuan apa pun.

Tipe: Array objek Tag

Anggota Array: Jumlah minimum 1 item. Jumlah maksimum 50 item.

Wajib: Tidak

UserName

String unik yang mengidentifikasi pengguna dan dikaitkan dengan file. ServerId Nama pengguna ini harus sepanjang minimal 3 dan maksimal 100 karakter. Berikut adalah karakter yang valid: a-z, A-Z, 0-9, garis bawah '_', tanda hubung '-', titik '.', dan tanda at '@'. Nama pengguna tidak dapat dimulai dengan tanda hubung, titik, atau tanda at.

Tipe: String

Batasan Panjang: Panjang minimum 3. Panjang maksimum 100.

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

Diperlukan: Ya

Sintaksis Respons

{ "ServerId": "string", "UserName": "string" }

Elemen Respons

Jika tindakan berhasil, layanan mengirimkan kembali respons HTTP 200.

Data berikut dikembalikan dalam JSON format oleh layanan.

ServerId

Pengidentifikasi server tempat pengguna dilampirkan.

Tipe: String

Kendala Panjang: Panjang tetap 19.

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

UserName

String unik yang mengidentifikasi pengguna Transfer Family.

Tipe: String

Batasan Panjang: Panjang minimum 3. Panjang maksimum 100.

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

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.

HTTPKode Status: 500

InvalidRequestException

Pengecualian ini dilontarkan ketika klien mengirimkan permintaan yang salah format.

HTTPKode Status: 400

ResourceExistsException

Sumber daya yang diminta tidak ada, atau ada di wilayah selain yang ditentukan untuk perintah.

HTTPKode Status: 400

ResourceNotFoundException

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

HTTPKode Status: 400

ServiceUnavailableException

Permintaan gagal karena layanan AWS Transfer Family tidak tersedia.

HTTPKode Status: 500

Contoh

Contoh

Untuk membuat pengguna, pertama-tama Anda dapat menyimpan parameter ke dalam JSON file, misalnyacreateUserParameters, lalu jalankan perintah API create-user.

{ "HomeDirectory": "/DOC-EXAMPLE-BUCKET", "HomeDirectoryType": "PATH", "Role": "arn:aws:iam::111122223333:role/bob-role", "ServerId": "s-1111aaaa2222bbbb3", "SshPublicKeyBody": "ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA... bobusa@mycomputer.us-east-1.amazon.com", "UserName": "bobusa-API" }

Permintaan Sampel

aws transfer create-user --cli-input-json file://createUserParameters

Contoh Respons

{ "ServerId": ""s-1111aaaa2222bbbb3", "UserName": "bobusa-API" }

Lihat Juga

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