

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

# Keamanan di AWS Transfer Family
<a name="security"></a>

Keamanan cloud di AWS adalah prioritas tertinggi. Sebagai AWS pelanggan, Anda mendapat manfaat dari pusat data dan arsitektur jaringan yang dibangun untuk memenuhi persyaratan organisasi yang paling sensitif terhadap keamanan.

Keamanan adalah tanggung jawab bersama antara Anda AWS dan Anda. [Model tanggung jawab bersama](https://aws.amazon.com/compliance/shared-responsibility-model/) menggambarkan hal ini sebagai keamanan *dari* cloud dan keamanan *di* cloud:

Untuk mempelajari apakah an Layanan AWS berada dalam lingkup program kepatuhan tertentu, lihat [Layanan AWS di Lingkup oleh Program Kepatuhan Layanan AWS](https://aws.amazon.com/compliance/services-in-scope/) dan pilih program kepatuhan yang Anda minati. Untuk informasi umum, lihat [Program AWS Kepatuhan Program AWS](https://aws.amazon.com/compliance/programs/) .

Anda dapat mengunduh laporan audit pihak ketiga menggunakan AWS Artifact. Untuk informasi selengkapnya, lihat [Mengunduh Laporan di AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html) .

Tanggung jawab kepatuhan Anda saat menggunakan Layanan AWS ditentukan oleh sensitivitas data Anda, tujuan kepatuhan perusahaan Anda, dan hukum dan peraturan yang berlaku. Untuk informasi selengkapnya tentang tanggung jawab kepatuhan Anda saat menggunakan Layanan AWS, lihat [Dokumentasi AWS Keamanan](https://docs.aws.amazon.com/security/).

Dokumentasi ini membantu Anda memahami cara menerapkan model tanggung jawab bersama saat menggunakan AWS Transfer Family. Topik berikut menunjukkan cara mengonfigurasi AWS Transfer Family untuk memenuhi tujuan keamanan dan kepatuhan Anda. Anda juga belajar cara menggunakan AWS layanan lain yang membantu Anda memantau dan mengamankan AWS Transfer Family sumber daya Anda.

Kami menawarkan lokakarya yang menyediakan panduan preskriptif dan lab langsung tentang bagaimana Anda dapat membangun arsitektur transfer file yang terukur dan aman AWS tanpa perlu memodifikasi aplikasi yang ada atau mengelola infrastruktur server. Anda dapat melihat detail untuk lokakarya ini [di sini](https://catalog.workshops.aws/basic-security-workshop-transfer-family/en-US).

**Topics**
+ [Manfaat keamanan konektivitas VPC](#vpc-connectivity-security)
+ [Kebijakan keamanan untuk AWS Transfer Family server](security-policies.md)
+ [Kebijakan keamanan untuk konektor AWS Transfer Family SFTP](security-policies-connectors.md)
+ [Menggunakan pertukaran kunci pasca-kuantum hibrida dengan AWS Transfer Family](post-quantum-security-policies.md)
+ [Perlindungan data dan enkripsi](encryption-at-rest.md)
+ [Mengelola kunci SSH dan PGP di Transfer Family](key-management.md)
+ [Identitas dan manajemen akses untuk AWS Transfer Family](security-iam.md)
+ [Validasi kepatuhan untuk AWS Transfer Family](transfer-compliance.md)
+ [Ketahanan di AWS Transfer Family](disaster-recovery-resiliency.md)
+ [Buat koneksi pribadi antara VPC dan AWS Transfer Family APIs](vpc-api-endpoints.md)
+ [Keamanan infrastruktur di AWS Transfer Family](infrastructure-security.md)
+ [Tambahkan firewall aplikasi web](web-application-firewall.md)
+ [Pencegahan "confused deputy" lintas layanan](confused-deputy.md)
+ [AWS kebijakan terkelola untuk AWS Transfer Family](security-iam-awsmanpol.md)

## Manfaat keamanan konektivitas VPC
<a name="vpc-connectivity-security"></a>

Konektor SFTP dengan tipe jalan keluar VPC memberikan manfaat keamanan yang ditingkatkan melalui Akses Sumber Daya Lintas VPC:
+ **Isolasi jaringan**: Semua lalu lintas tetap berada dalam lingkungan VPC Anda, menyediakan isolasi jaringan lengkap dari internet publik untuk koneksi titik akhir pribadi.
+ **Kontrol IP sumber**: Server SFTP jarak jauh hanya melihat alamat IP dari rentang CIDR VPC Anda, memberi Anda kontrol penuh atas alamat IP sumber yang digunakan untuk koneksi.
+ **Akses endpoint pribadi**: Sambungkan langsung ke server SFTP di VPC Anda menggunakan alamat IP pribadi, menghilangkan paparan ke internet publik.
+ **Konektivitas hibrida**: Akses server SFTP lokal dengan aman melalui koneksi VPN atau Direct Connect yang sudah mapan tanpa eksposur internet tambahan.
+ **Kontrol keamanan VPC: Manfaatkan grup keamanan** VPC yang ada, NACLs, dan kebijakan perutean untuk mengontrol dan memantau lalu lintas konektor SFTP.

### Model keamanan VPC Lattice
<a name="vpc-lattice-security-model"></a>

Konektivitas VPC untuk konektor SFTP menggunakan AWS VPC Lattice dengan jaringan layanan untuk menyediakan akses multi-tenant yang aman:
+ **Pencegahan wakil yang membingungkan**: Pemeriksaan otentikasi dan otorisasi memastikan bahwa konektor hanya dapat mengakses sumber daya spesifik tempat mereka dikonfigurasi, mencegah akses penyewa silang yang tidak sah.
+ **IPv6-Only Service Network**: Menggunakan IPv6 pengalamatan untuk menghindari potensi konflik alamat IP dan meningkatkan isolasi keamanan.
+ **Forward Access Session (FAS)**: Penanganan kredensi sementara menghilangkan kebutuhan akan penyimpanan kredenal jangka panjang atau berbagi sumber daya manual.
+ **Kontrol akses tingkat sumber daya**: Setiap konektor dikaitkan dengan Konfigurasi Sumber Daya tertentu, memastikan kontrol akses granular ke server SFTP individual.

### Praktik terbaik keamanan untuk konektivitas VPC
<a name="vpc-security-best-practices"></a>

Saat menggunakan konektor tipe jalan keluar VPC, ikuti praktik terbaik keamanan berikut:
+ **Grup keamanan**: Konfigurasikan grup keamanan untuk memungkinkan lalu lintas SFTP (port 22) hanya di antara sumber daya yang diperlukan. Batasi rentang IP sumber dan tujuan ke minimum yang diperlukan.
+ **Penempatan Resource Gateway**: Terapkan Resource Gateways di subnet pribadi bila memungkinkan, dan pastikan mereka menjangkau setidaknya dua Availability Zone untuk ketersediaan tinggi.
+ **Pemantauan jaringan**: Gunakan VPC Flow Logs dan Amazon CloudWatch untuk memantau pola lalu lintas jaringan dan mendeteksi aktivitas anomali.
+ **Pencatatan akses**: Aktifkan pencatatan konektor untuk melacak aktivitas transfer file dan memelihara jejak audit untuk persyaratan kepatuhan.
+ **Manajemen Konfigurasi Sumber Daya**: Secara teratur meninjau dan memperbarui Konfigurasi Sumber Daya untuk memastikan mereka menunjuk ke server SFTP yang benar dan menggunakan pengaturan jaringan yang sesuai.

# Kebijakan keamanan untuk AWS Transfer Family server
<a name="security-policies"></a>

Kebijakan keamanan server AWS Transfer Family memungkinkan Anda untuk membatasi set algoritma kriptografi (kode otentikasi pesan (), pertukaran kunci (MACs), cipher suite, cipher enkripsi konten, dan algoritma hashKEXs) yang terkait dengan server Anda.

AWS Transfer Family mendukung kebijakan keamanan pasca-kuantum yang menggunakan algoritma pertukaran kunci hibrida, menggabungkan metode kriptografi tradisional dengan algoritma pasca-kuantum untuk memberikan keamanan yang ditingkatkan terhadap ancaman komputasi kuantum masa depan. Detail disediakan di[Menggunakan pertukaran kunci pasca-kuantum hibrida dengan AWS Transfer Family](post-quantum-security-policies.md).

Untuk daftar algoritma kriptografi yang didukung, lihat. [Algoritma kriptografi](#cryptographic-algorithms) Untuk daftar algoritme kunci yang didukung untuk digunakan dengan kunci host server dan kunci pengguna yang dikelola layanan, lihat. [Mengelola kunci SSH dan PGP di Transfer Family](key-management.md)

**catatan**  
Kami sangat menyarankan untuk memperbarui server Anda ke kebijakan keamanan terbaru kami.  
`TransferSecurityPolicy-2024-01`adalah kebijakan keamanan default yang dilampirkan ke server Anda saat membuat server menggunakan konsol, API, atau CLI.
Jika Anda membuat server Transfer Family menggunakan CloudFormation dan menerima kebijakan keamanan default, server akan ditetapkan`TransferSecurityPolicy-2018-11`.
Jika Anda khawatir tentang kompatibilitas klien, harap sebutkan kebijakan keamanan mana yang ingin Anda gunakan saat membuat atau memperbarui server daripada menggunakan kebijakan default, yang dapat berubah sewaktu-waktu. Untuk mengubah kebijakan keamanan server, lihat[Edit kebijakan keamanan](edit-server-config.md#edit-cryptographic-algorithm).

Untuk informasi selengkapnya tentang keamanan di Transfer Family, lihat postingan blog berikut ini:
+ [Enam tips untuk meningkatkan keamanan AWS Transfer Family server Anda](https://aws.amazon.com/blogs/security/six-tips-to-improve-the-security-of-your-aws-transfer-family-server/)
+ [Bagaimana Transfer Family dapat membantu Anda membangun solusi transfer file terkelola yang aman dan sesuai](https://aws.amazon.com/blogs/security/how-transfer-family-can-help-you-build-a-secure-compliant-managed-file-transfer-solution/)

**Topics**
+ [Algoritma kriptografi](#cryptographic-algorithms)
+ [TransferSecurityPolicy-2024-01](#security-policy-transfer-2024-01)
+ [TransferSecurityPolicy- SshAuditCompliant -2025-02](#security-policy-transferSecurityPolicy-SshAuditCompliant-2025-02)
+ [TransferSecurityPolicy-2023-05](#security-policy-transfer-2023-05)
+ [TransferSecurityPolicy-2022-03](#security-policy-transfer-2022-03)
+ [TransferSecurityPolicy-2020-06 dan -Terbatas-2020-06 TransferSecurityPolicy](#security-policy-transfer-2020-06)
+ [TransferSecurityPolicy-2018-11 dan -Terbatas-2018-11 TransferSecurityPolicy](#security-policy-transfer-2018-11)
+ [TransferSecurityPolicy-FIP-2024-01/-FIP-2024-05 TransferSecurityPolicy](#security-policy-transfer-fips-2024-01)
+ [TransferSecurityPolicy-FIP-2023-05](#security-policy-transfer-fips-2023-05)
+ [TransferSecurityPolicy-FIP-2020-06](#security-policy-transfer-fips-2020-06)
+ [TransferSecurityPolicy- AS2 Terbatas-2025-07](#as2-restricted-policy)
+ [Pasca kebijakan keamanan Quantum](#pq-policies)

## Algoritma kriptografi
<a name="cryptographic-algorithms"></a>

Untuk kunci host, kami mendukung algoritma berikut:
+ `rsa-sha2-256`
+ `rsa-sha2-512`
+ `ecdsa-sha2-nistp256`
+ `ecdsa-sha2-nistp384`
+ `ecdsa-sha2-nistp521`
+ `ssh-ed25519`

Selain itu, kebijakan keamanan berikut memungkinkan`ssh-rsa`:
+ TransferSecurityPolicy-2018-11
+ TransferSecurityPolicy-2020-06
+ TransferSecurityPolicy-FIP-2020-06
+ TransferSecurityPolicy-FIP-2023-05
+ TransferSecurityPolicy-FIP-2024-01
+ TransferSecurityPolicy-PQ-SSH-FIP-Percobaan-2023-04

**catatan**  
Penting untuk memahami perbedaan antara tipe kunci RSA — yang selalu `ssh-rsa` — dan algoritma kunci host RSA, yang dapat berupa salah satu algoritma yang didukung.

Berikut ini adalah daftar algoritma kriptografi yang didukung untuk setiap kebijakan keamanan.

**catatan**  
Dalam tabel dan kebijakan berikut, perhatikan penggunaan jenis algoritma berikut.  
Server SFTP hanya menggunakan algoritma di **SshCiphers**, **SshKexs**, dan bagian. **SshMacs**
Server FTPS hanya menggunakan algoritme di bagian ini. **TlsCiphers**
Server FTP, karena mereka tidak menggunakan enkripsi, tidak menggunakan algoritme ini.
AS2 server hanya menggunakan algoritma di **HashAlgorithms**bagian **ContentEncryptionCiphers**dan. Bagian ini mendefinisikan algoritma yang digunakan untuk mengenkripsi dan menandatangani konten file.
Kebijakan keamanan FIPS-2024-05 dan FIPS-2024-01 identik, kecuali FIPS-2024-05 tidak mendukung algoritme. `ssh-rsa`
Transfer Family telah memperkenalkan kebijakan terbatas baru yang paralel erat dengan kebijakan yang ada:  
Kebijakan keamanan TransferSecurityPolicy -Restricted-2018-11 dan TransferSecurityPolicy -2018-11 identik, kecuali bahwa kebijakan terbatas tidak mendukung sandi. `chacha20-poly1305@openssh.com`
Kebijakan keamanan TransferSecurityPolicy -Restricted-2020-06 dan TransferSecurityPolicy -2020-06 identik, kecuali bahwa kebijakan terbatas tidak mendukung sandi. `chacha20-poly1305@openssh.com`
\$1 Dalam tabel berikut, `chacha20-poly1305@openssh.com` sandi disertakan dalam kebijakan yang tidak dibatasi saja, 


| Kebijakan keamanan | 2024-01 | SshAuditCompliant-2025-02 | 2023-05 | 2022-03 |  **2020-06** **2020-06 dibatasi**  |  **FIP-2024-05** **FIP-2024-01**  | FIP-2023-05 | FIP-2020-06 |  **2018-11** **2018-11 dibatasi**  | TransferSecurityPolicy- AS2 Terbatas-2025-07 | 
| --- |--- |--- |--- |--- |--- |--- |--- |--- |--- |--- |
|  **SshCiphers**  | 
| --- |
|  aes128-ctr  | ♦ |  ♦  |  |     |  ♦  | ♦ |  |  ♦  |  ♦  |  ♦  | 
|  aes128-gcm@openssh.com  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦   |  ♦  |  ♦  |  ♦  | 
|  aes192-ctr  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦   |  ♦  |  ♦  |  ♦  | 
|  aes256-ctr  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦   |  ♦  |  ♦  |  ♦  | 
|  aes256-gcm@openssh.com  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦   |  ♦  |  ♦  |  ♦  | 
|  chacha20-poly1305@openssh.com  |  |  |  |     |  ♦\$1  |  |  |  |  ♦\$1  |  | 
|  **SshKexs**  | 
| --- |
|  mlkem768x25519-sha256  |  |  |  |  |  |  |  |  |  |  ♦  | 
|  mlkem768nistp256-sha256  |  |  |  |  |  |  |  |  |  |  ♦  | 
|  mlkem1024nistp384-sha384  |  |  |  |  |  |  |  |  |  |  ♦  | 
|  kurva25519-sha256  | ♦ |  ♦  |  ♦  |  ♦  |     |  |  |     |  ♦  |  ♦  | 
|  curve25519-sha256@libssh.org  | ♦ |  ♦  |  ♦  |  ♦  |     |  |  |     |  ♦  |  ♦  | 
|  diffie-hellman-group14-sha1  |  |  |  |     |     |  |  |     |  ♦  |  | 
|  diffie-hellman-group14-sha256  |  |  |  |     |  ♦  |  |  |  ♦  |  ♦  |  | 
|  diffie-hellman-group16-sha512  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | 
| diffie-hellman-group18-sha512  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | 
|  diffie-hellman-group-exchange-sha256  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  |  |  ♦  |  ♦  |  ♦  |  ♦  | 
|  ecdh-sha2-nistp256  | ♦ |  |  |     |  ♦  | ♦ |  |  ♦  |  ♦  |  ♦  | 
|  ecdh-sha2-nistp384  | ♦ |  |  |     |  ♦  | ♦ |  |  ♦  |  ♦  |  ♦  | 
|  ecdh-sha2-nistp521  | ♦ |  |  |     |  ♦  | ♦ |  |  ♦  |  ♦  |  ♦  | 
|  **SshMacs**  | 
| --- |
|  hmac-sha1  |  |  |  |     |     |  |  |     |  ♦  |  | 
|  hmac-sha1-etm@openssh.com  |  |  |  |     |     |  |  |     |  ♦  |  | 
|  hmac-sha2-256  |  |  |  |  ♦  |  ♦  |  |  |  ♦  |  ♦  |  | 
|  hmac-sha2-256-etm@openssh.com  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | 
|  hmac-sha2-512  |  |  |  |  ♦  |  ♦  |  |  |  ♦  |  ♦  |  | 
|  hmac-sha2-512-etm@openssh.com  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | 
|  umac-128-etm@openssh.com  |  |  |  |     |  ♦  |  |  |     |  ♦  |  | 
|  umac-128@openssh.com  |  |  |  |     |  ♦  |  |  |     |  ♦  |  | 
|  umac-64-etm@openssh.com  |  |  |  |     |     |  |  |     |  ♦  |  | 
|  umac-64@openssh.com  |  |  |  |     |     |  |  |     |  ♦  |  | 
|  **ContentEncryptionCiphers**  | 
| --- |
|  aes256-cbc  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  ♦   | 
|  aes192-cbc  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  ♦   | 
|  aes128-cbc  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  | ♦ | 
|  3des-cbc  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  | 
|  **HashAlgorithms**  | 
| --- |
|  sha256  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  ♦   | 
|  sha384  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  ♦   | 
|  sha512  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  ♦   | 
|  sha1  | ♦ |  ♦  |  ♦  |  ♦  |  ♦  | ♦ |  ♦  |  ♦  |  ♦  |  | 
|  **TlsCiphers**  | 
| --- |
|  TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1128\$1CBC\$1 SHA256  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  | 
| TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1128\$1GCM\$1 SHA256 |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA384  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1GCM\$1 SHA256  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA384  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | ♦  |  ♦  |  ♦  |  ♦  |  ♦  | 
|  TLS\$1RSA\$1DENGAN\$1AES\$1128\$1CBC\$1 SHA256  |  |  |     |     |     |  |     |     |  ♦  |  | 
|  TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA256  |  |  |     |     |     |  |     |     |  ♦  |  | 

## TransferSecurityPolicy-2024-01
<a name="security-policy-transfer-2024-01"></a>

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy -2024-01.

```
{
    "SecurityPolicy": {
        "Fips": false,
        "SecurityPolicyName": "TransferSecurityPolicy-2024-01",
        "SshCiphers": [
            "aes128-gcm@openssh.com",
            "aes256-gcm@openssh.com",
            "aes128-ctr",
            "aes256-ctr",
            "aes192-ctr"
        ],
        "SshKexs": [
            "ecdh-sha2-nistp256",
            "ecdh-sha2-nistp384",
            "ecdh-sha2-nistp521",
            "curve25519-sha256",
            "curve25519-sha256@libssh.org",
            "diffie-hellman-group18-sha512",
            "diffie-hellman-group16-sha512",
            "diffie-hellman-group-exchange-sha256"
        ],
        "SshMacs": [
            "hmac-sha2-256-etm@openssh.com",
            "hmac-sha2-512-etm@openssh.com"
        ],
        "ContentEncryptionCiphers": [
            "aes256-cbc",
            "aes192-cbc",
            "aes128-cbc",
            "3des-cbc"
        ],
        "HashAlgorithms": [
            "sha256",
            "sha384",
            "sha512",
            "sha1"
        ],
        "TlsCiphers": [
            "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
        ]
    }
}
```

## TransferSecurityPolicy- SshAuditCompliant -2025-02
<a name="security-policy-transferSecurityPolicy-SshAuditCompliant-2025-02"></a>

Berikut ini menunjukkan TransferSecurityPolicy - SshAuditCompliant -2025-02 kebijakan keamanan.

**catatan**  
Kebijakan keamanan ini dirancang berdasarkan rekomendasi yang disediakan oleh `ssh-audit` alat, dan 100% sesuai dengan alat itu.

```
{
  "SecurityPolicy": {
    "Fips": false,
    "Protocols": [
      "SFTP",
      "FTPS"
    ],
    "SecurityPolicyName": "TransferSecurityPolicy-SshAuditCompliant-2025-02",
    "SshCiphers": [
      "aes128-gcm@openssh.com",
      "aes256-gcm@openssh.com",
      "aes128-ctr",
      "aes256-ctr",
      "aes192-ctr"
    ],
    "SshKexs": [
      "curve25519-sha256",
      "curve25519-sha256@libssh.org",
      "diffie-hellman-group18-sha512",
      "diffie-hellman-group16-sha512",
      "diffie-hellman-group-exchange-sha256"
    ],
    "SshMacs": [
      "hmac-sha2-256-etm@openssh.com",
      "hmac-sha2-512-etm@openssh.com"
    ],
    "ContentEncryptionCiphers": [
      "aes256-cbc",
      "aes192-cbc",
      "aes128-cbc",
      "3des-cbc"
    ],
    "HashAlgorithms": [
      "sha256",
      "sha384",
      "sha512",
      "sha1"
    ],
    "TlsCiphers": [
      "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
      "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
      "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
      "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
      "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
      "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
    ],
    "Type": "SERVER"
  }
}
```

## TransferSecurityPolicy-2023-05
<a name="security-policy-transfer-2023-05"></a>

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy -2023-05.

```
{
    "SecurityPolicy": {
        "Fips": false,
        "SecurityPolicyName": "TransferSecurityPolicy-2023-05",
        "SshCiphers": [
            "aes256-gcm@openssh.com",
            "aes128-gcm@openssh.com",
            "aes256-ctr",
            "aes192-ctr"
        ],
        "SshKexs": [
            "curve25519-sha256",
            "curve25519-sha256@libssh.org",
            "diffie-hellman-group16-sha512",
            "diffie-hellman-group18-sha512",
            "diffie-hellman-group-exchange-sha256"
        ],
        "SshMacs": [
            "hmac-sha2-512-etm@openssh.com",
            "hmac-sha2-256-etm@openssh.com"
        ],
        "ContentEncryptionCiphers": [
            "aes256-cbc",
            "aes192-cbc",
            "aes128-cbc",
            "3des-cbc"
        ],
        "HashAlgorithms": [
            "sha256",
            "sha384",
            "sha512",
            "sha1"
        ],
        "TlsCiphers": [
            "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
        ]
    }
}
```

## TransferSecurityPolicy-2022-03
<a name="security-policy-transfer-2022-03"></a>

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy -2022-03.

```
{
  "SecurityPolicy": {
    "Fips": false,
    "SecurityPolicyName": "TransferSecurityPolicy-2022-03",
    "SshCiphers": [
      "aes256-gcm@openssh.com",
      "aes128-gcm@openssh.com",
      "aes256-ctr",
      "aes192-ctr"
    ],
    "SshKexs": [
      "curve25519-sha256",
      "curve25519-sha256@libssh.org",
      "diffie-hellman-group16-sha512",
      "diffie-hellman-group18-sha512",
      "diffie-hellman-group-exchange-sha256"
    ],
    "SshMacs": [
      "hmac-sha2-512-etm@openssh.com",
      "hmac-sha2-256-etm@openssh.com",
      "hmac-sha2-512",
      "hmac-sha2-256"
    ],
    "ContentEncryptionCiphers": [
      "aes256-cbc",
      "aes192-cbc",
      "aes128-cbc"
      "3des-cbc",
    ],
    "HashAlgorithms": [
      "sha256",
      "sha384",
      "sha512"
      "sha1"
    ],
    "TlsCiphers": [
      "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", 
      "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", 
      "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", 
      "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", 
      "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", 
      "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", 
      "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
    ]
  }
}
```

## TransferSecurityPolicy-2020-06 dan -Terbatas-2020-06 TransferSecurityPolicy
<a name="security-policy-transfer-2020-06"></a>

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy -2020-06.

**catatan**  
Kebijakan keamanan TransferSecurityPolicy -Restricted-2020-06 dan TransferSecurityPolicy -2020-06 identik, kecuali bahwa kebijakan terbatas tidak mendukung sandi. `chacha20-poly1305@openssh.com`

```
{
  "SecurityPolicy": {
    "Fips": false,
    "SecurityPolicyName": "TransferSecurityPolicy-2020-06",
    "SshCiphers": [
      "chacha20-poly1305@openssh.com", //Not included in TransferSecurityPolicy-Restricted-2020-06
      "aes128-ctr",
      "aes192-ctr",
      "aes256-ctr",
      "aes128-gcm@openssh.com",
      "aes256-gcm@openssh.com"
    ],
    "SshKexs": [
      "ecdh-sha2-nistp256",
      "ecdh-sha2-nistp384",
      "ecdh-sha2-nistp521",
      "diffie-hellman-group-exchange-sha256",
      "diffie-hellman-group16-sha512",
      "diffie-hellman-group18-sha512",
      "diffie-hellman-group14-sha256"
    ],
    "SshMacs": [
      "umac-128-etm@openssh.com",
      "hmac-sha2-256-etm@openssh.com",
      "hmac-sha2-512-etm@openssh.com",
      "umac-128@openssh.com",
      "hmac-sha2-256",
      "hmac-sha2-512"
    ],
    "ContentEncryptionCiphers": [
      "aes256-cbc",
      "aes192-cbc",
      "aes128-cbc"
            "3des-cbc",
    ],
    "HashAlgorithms": [
      "sha256",
      "sha384",
      "sha512"
      "sha1"
    ],
    "TlsCiphers": [
      "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
      "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
      "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
      "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
      "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
      "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
    ]
  }
}
```

## TransferSecurityPolicy-2018-11 dan -Terbatas-2018-11 TransferSecurityPolicy
<a name="security-policy-transfer-2018-11"></a>

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy -2018-11.

**catatan**  
Kebijakan keamanan TransferSecurityPolicy -Restricted-2018-11 dan TransferSecurityPolicy -2018-11 identik, kecuali bahwa kebijakan terbatas tidak mendukung sandi. `chacha20-poly1305@openssh.com`

```
{
  "SecurityPolicy": {
    "Fips": false,
    "SecurityPolicyName": "TransferSecurityPolicy-2018-11",
    "SshCiphers": [
      "chacha20-poly1305@openssh.com", //Not included in TransferSecurityPolicy-Restricted-2018-11
      "aes128-ctr",
      "aes192-ctr",
      "aes256-ctr",
      "aes128-gcm@openssh.com",
      "aes256-gcm@openssh.com"
    ],
    "SshKexs": [
      "curve25519-sha256",
      "curve25519-sha256@libssh.org",
      "ecdh-sha2-nistp256",
      "ecdh-sha2-nistp384",
      "ecdh-sha2-nistp521",
      "diffie-hellman-group-exchange-sha256",
      "diffie-hellman-group16-sha512",
      "diffie-hellman-group18-sha512",
      "diffie-hellman-group14-sha256",
      "diffie-hellman-group14-sha1"
    ],
    "SshMacs": [
      "umac-64-etm@openssh.com",
      "umac-128-etm@openssh.com",
      "hmac-sha2-256-etm@openssh.com",
      "hmac-sha2-512-etm@openssh.com",
      "hmac-sha1-etm@openssh.com",
      "umac-64@openssh.com",
      "umac-128@openssh.com",
      "hmac-sha2-256",
      "hmac-sha2-512",
      "hmac-sha1"
    ],
    "ContentEncryptionCiphers": [
      "aes256-cbc",
      "aes192-cbc",
      "aes128-cbc"
            "3des-cbc",
    ],
    "HashAlgorithms": [
      "sha256",
      "sha384",
      "sha512",
      "sha1"
    ],
    "TlsCiphers": [
      "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
      "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
      "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
      "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
      "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
      "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384",
      "TLS_RSA_WITH_AES_128_CBC_SHA256",
      "TLS_RSA_WITH_AES_256_CBC_SHA256"
    ]
  }
}
```

## TransferSecurityPolicy-FIP-2024-01/-FIP-2024-05 TransferSecurityPolicy
<a name="security-policy-transfer-fips-2024-01"></a>

Berikut ini menunjukkan kebijakan keamanan -FIPS-2024-01 dan TransferSecurityPolicy -FIPS-2024-05. TransferSecurityPolicy

**catatan**  
Titik akhir layanan FIPS dan kebijakan keamanan TransferSecurityPolicy -FIPS-2024-01 dan TransferSecurityPolicy -FIPS-2024-05 hanya tersedia di beberapa Wilayah. AWS Untuk informasi selengkapnya, lihat [AWS Transfer Family titik akhir dan kuota](https://docs.aws.amazon.com/general/latest/gr/transfer-service.html) di. *Referensi Umum AWS*  
Satu-satunya perbedaan antara kedua kebijakan keamanan ini adalah TransferSecurityPolicy -FIPS-2024-01 mendukung `ssh-rsa` algoritme, dan -FIPS-2024-05 tidak. TransferSecurityPolicy

```
{
    "SecurityPolicy": {
        "Fips": true,
        "SecurityPolicyName": "TransferSecurityPolicy-FIPS-2024-01",
        "SshCiphers": [
            "aes128-gcm@openssh.com",
            "aes256-gcm@openssh.com",
            "aes128-ctr",
            "aes256-ctr",
            "aes192-ctr"
        ],
        "SshKexs": [
            "ecdh-sha2-nistp256",
            "ecdh-sha2-nistp384",
            "ecdh-sha2-nistp521",
            "diffie-hellman-group18-sha512",
            "diffie-hellman-group16-sha512",
            "diffie-hellman-group-exchange-sha256"
        ],
        "SshMacs": [
            "hmac-sha2-256-etm@openssh.com",
            "hmac-sha2-512-etm@openssh.com"
        ],
        "ContentEncryptionCiphers": [
            "aes256-cbc",
            "aes192-cbc",
            "aes128-cbc"
            "3des-cbc"
        ],
        "HashAlgorithms": [
            "sha256",
            "sha384",
            "sha512"
            "sha1"
        ],
        "TlsCiphers": [
            "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
        ]
    }
}
```

## TransferSecurityPolicy-FIP-2023-05
<a name="security-policy-transfer-fips-2023-05"></a>

Detail sertifikasi FIPS untuk AWS Transfer Family dapat ditemukan di [https://csrc.nist.gov/projects/cryptographic-module-validation-program/validated-modules/search/all](https://csrc.nist.gov/projects/cryptographic-module-validation-program/validated-modules/search/all)

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy -FIPS-2023-05.

**catatan**  
Titik akhir layanan FIPS dan kebijakan keamanan TransferSecurityPolicy -FIPS-2023-05 hanya tersedia di beberapa Wilayah. AWS Untuk informasi selengkapnya, lihat [AWS Transfer Family titik akhir dan kuota](https://docs.aws.amazon.com/general/latest/gr/transfer-service.html) di. *Referensi Umum AWS*

```
{
    "SecurityPolicy": {
        "Fips": true,
        "SecurityPolicyName": "TransferSecurityPolicy-FIPS-2023-05",
        "SshCiphers": [
            "aes256-gcm@openssh.com",
            "aes128-gcm@openssh.com",
            "aes256-ctr",
            "aes192-ctr"
        ],
        "SshKexs": [
            "diffie-hellman-group16-sha512",
            "diffie-hellman-group18-sha512",
            "diffie-hellman-group-exchange-sha256"
        ],
        "SshMacs": [
            "hmac-sha2-256-etm@openssh.com",
            "hmac-sha2-512-etm@openssh.com"
        ],
        "ContentEncryptionCiphers": [
            "aes256-cbc",
            "aes192-cbc",
            "aes128-cbc"
            "3des-cbc"
        ],
        "HashAlgorithms": [
            "sha256",
            "sha384",
            "sha512"
            "sha1"
        ],
        "TlsCiphers": [
            "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
        ]
    }
}
```

## TransferSecurityPolicy-FIP-2020-06
<a name="security-policy-transfer-fips-2020-06"></a>

Detail sertifikasi FIPS untuk AWS Transfer Family dapat ditemukan di [https://csrc.nist.gov/projects/cryptographic-module-validation-program/validated-modules/search/all](https://csrc.nist.gov/projects/cryptographic-module-validation-program/validated-modules/search/all)

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy -FIPS-2020-06.

**catatan**  
Titik akhir layanan FIPS dan kebijakan keamanan TransferSecurityPolicy -FIPS-2020-06 hanya tersedia di beberapa Wilayah. AWS Untuk informasi selengkapnya, lihat [AWS Transfer Family titik akhir dan kuota](https://docs.aws.amazon.com/general/latest/gr/transfer-service.html) di. *Referensi Umum AWS*

```
{
  "SecurityPolicy": {
    "Fips": true,
    "SecurityPolicyName": "TransferSecurityPolicy-FIPS-2020-06",
    "SshCiphers": [
      "aes128-ctr",
      "aes192-ctr",
      "aes256-ctr",
      "aes128-gcm@openssh.com",
      "aes256-gcm@openssh.com"
    ],
    "SshKexs": [
      "ecdh-sha2-nistp256",
      "ecdh-sha2-nistp384",
      "ecdh-sha2-nistp521",
      "diffie-hellman-group-exchange-sha256",
      "diffie-hellman-group16-sha512",
      "diffie-hellman-group18-sha512",
      "diffie-hellman-group14-sha256"
    ],
    "SshMacs": [
      "hmac-sha2-256-etm@openssh.com",
      "hmac-sha2-512-etm@openssh.com",
      "hmac-sha2-256",
      "hmac-sha2-512"
    ],
    "ContentEncryptionCiphers": [
      "aes256-cbc",
      "aes192-cbc",
      "aes128-cbc"
            "3des-cbc",
    ],
    "HashAlgorithms": [
      "sha256",
      "sha384",
      "sha512"
            "sha1",
    ],
    "TlsCiphers": [
      "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
      "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
      "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
      "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
      "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
      "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
      "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
    ]
  }
}
```

## TransferSecurityPolicy- AS2 Terbatas-2025-07
<a name="as2-restricted-policy"></a>

Kebijakan keamanan ini dirancang untuk transfer AS2 file yang memerlukan peningkatan keamanan dengan mengecualikan algoritma kriptografi lama. Ini mendukung enkripsi AES modern dan algoritma hash SHA-2 sambil menghapus dukungan untuk algoritma yang lebih lemah seperti 3DES dan SHA-1.

```
{
    "SecurityPolicy": {
        "Fips": false,
        "SecurityPolicyName": "TransferSecurityPolicy-AS2Restricted-2025-07",
        "SshCiphers": [
            "aes256-gcm@openssh.com",
            "aes128-gcm@openssh.com",
            "aes128-ctr",
            "aes256-ctr",
            "aes192-ctr"
        ],
        "SshKexs": [
            "mlkem768x25519-sha256",
            "mlkem768nistp256-sha256",
            "mlkem1024nistp384-sha384",
            "ecdh-sha2-nistp256",
            "ecdh-sha2-nistp384",
            "ecdh-sha2-nistp521",
            "curve25519-sha256",
            "curve25519-sha256@libssh.org",
            "diffie-hellman-group16-sha512",
            "diffie-hellman-group18-sha512",
            "diffie-hellman-group-exchange-sha256"
        ],
        "SshMacs": [
            "hmac-sha2-256-etm@openssh.com",
            "hmac-sha2-512-etm@openssh.com"
        ],
        "ContentEncryptionCiphers": [
            "aes256-cbc",
            "aes192-cbc",
            "aes128-cbc"
        ],
        "HashAlgorithms": [
            "sha256",
            "sha384",
            "sha512"
        ],
        "TlsCiphers": [
            "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
        ],
        "Type": "SERVER",
        "Protocols": [
            "AS2"
        ]
    }
}
```

## Pasca kebijakan keamanan Quantum
<a name="pq-policies"></a>

Tabel ini mencantumkan algoritme untuk kebijakan keamanan kuantum pasca Transfer Family. Kebijakan ini dijelaskan secara rinci dalam[Menggunakan pertukaran kunci pasca-kuantum hibrida dengan AWS Transfer Family](post-quantum-security-policies.md).

Daftar kebijakan mengikuti tabel.

**catatan**  
**Kebijakan pasca kuantum sebelumnya (**TransferSecurityPolicy-PQ-SSH-eksperimental-2023-04 dan -PQ-SSH-FIPS-Experimental-2023-04 tidak digunakan lagi**. TransferSecurityPolicy** Kami menyarankan Anda menggunakan kebijakan baru sebagai gantinya.


| Kebijakan keamanan | TransferSecurityPolicy-2025-03 | TransferSecurityPolicy-FIP-2025-03 | 
| --- |--- |--- |
|  **SSH ciphers**  | 
| --- |
|  aes128-ctr  |  ♦  |  ♦  | 
|  aes128-gcm@openssh.com  |  ♦  |  ♦  | 
|  aes192-ctr  |  ♦  |  ♦  | 
|  aes256-ctr  |  ♦  |  ♦  | 
|  aes256-gcm@openssh.com  |  ♦  |  ♦  | 
|  **KEXs**  | 
| --- |
| mlkem768x25519-sha256 |  ♦  |  ♦  | 
| mlkem768nistp256-sha256 |  ♦  |  ♦  | 
| mlkem1024nistp384-sha384 |  ♦  |  ♦  | 
|  diffie-hellman-group14-sha256  | ♦ | ♦ | 
|  diffie-hellman-group16-sha512  |  ♦  |  ♦  | 
|  diffie-hellman-group18-sha512  |  ♦  |  ♦  | 
|  ecdh-sha2-nistp384  |  ♦  |  ♦  | 
|  ecdh-sha2-nistp521  |  ♦  |  ♦  | 
|  ecdh-sha2-nistp256  |  ♦  |  ♦  | 
|  diffie-hellman-group-exchange-sha256  |  ♦  |  ♦  | 
|  curve25519-sha256@libssh.org  |  ♦  |     | 
|  kurva25519-sha256  |  ♦  |     | 
|  **MACs**  | 
| --- |
|  hmac-sha2-256-etm@openssh.com  |  ♦  |  ♦  | 
|  hmac-sha2-512-etm@openssh.com  |  ♦  |  ♦  | 
|  **ContentEncryptionCiphers**  | 
| --- |
|  aes256-cbc  |  ♦  |  ♦  | 
|  aes192-cbc  |  ♦  |  ♦  | 
|  aes128-cbc |  ♦  |  ♦  | 
|  3des-cbc |  ♦  |  ♦  | 
|  **HashAlgorithms**  | 
| --- |
|  sha256  |  ♦  |  ♦  | 
|  sha384  |  ♦  |  ♦  | 
|  sha512  |  ♦  |  ♦  | 
|  sha1  |  ♦  |  ♦  | 
|  **TLS ciphers**  | 
| --- |
|  TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1128\$1CBC\$1 SHA256  |  ♦  |  ♦  | 
| TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1128\$1GCM\$1 SHA256 |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA384  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1GCM\$1 SHA256  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA384  |  ♦  |  ♦  | 
|  TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384  |  ♦  |  ♦  | 

### TransferSecurityPolicy-2025-03
<a name="security-policy-transfer-2025-03"></a>

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy -2025-03.

```
{
    "SecurityPolicy": {
        "Fips": false,
        "SecurityPolicyName": "TransferSecurityPolicy-2025-03",
        "SshCiphers": [
            "aes256-gcm@openssh.com",
            "aes128-gcm@openssh.com",
            "aes128-ctr",
            "aes256-ctr",
            "aes192-ctr"
        ],
        "SshKexs": [
            "mlkem768x25519-sha256",
            "mlkem768nistp256-sha256",
            "mlkem1024nistp384-sha384",
            "ecdh-sha2-nistp256",
            "ecdh-sha2-nistp384",
            "ecdh-sha2-nistp521",
            "curve25519-sha256",
            "curve25519-sha256@libssh.org",
            "diffie-hellman-group16-sha512",
            "diffie-hellman-group18-sha512",
            "diffie-hellman-group-exchange-sha256"
        ],
        "SshMacs": [
            "hmac-sha2-256-etm@openssh.com",
            "hmac-sha2-512-etm@openssh.com"
        ],
        "ContentEncryptionCiphers": [
            "aes256-cbc",
            "aes192-cbc",
            "aes128-cbc"
            "3des-cbc"
        ],
        "HashAlgorithms": [
            "sha256",
            "sha384",
            "sha512"
            "sha1"
        ],
        "TlsCiphers": [
            "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
        ],
        "Type": "SERVER",
        "Protocols": [
           "SFTP",
           "FTPS"
        ]
    }
}
```

### TransferSecurityPolicy-FIP-2025-03
<a name="security-policy-transfer-2025-03-fips"></a>

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy -FIPS-2025-03.

```
{
    "SecurityPolicy": {
        "Fips": true,
        "SecurityPolicyName": "TransferSecurityPolicy-FIPS-2025-03",
        "SshCiphers": [
            "aes256-gcm@openssh.com",
            "aes128-gcm@openssh.com",
            "aes256-ctr",
            "aes192-ctr",
            "aes128-ctr"
        ],
        "SshKexs": [
            "mlkem768x25519-sha256",
            "mlkem768nistp256-sha256",
            "mlkem1024nistp384-sha384",
            "ecdh-sha2-nistp256",
            "ecdh-sha2-nistp384",
            "ecdh-sha2-nistp521",
            "diffie-hellman-group-exchange-sha256",
            "diffie-hellman-group16-sha512",
            "diffie-hellman-group18-sha512"
        ],
        "SshMacs": [
            "hmac-sha2-512-etm@openssh.com",
            "hmac-sha2-256-etm@openssh.com"            
        ],
        "ContentEncryptionCiphers": [
            "aes256-cbc",
            "aes192-cbc",
            "aes128-cbc"
            "3des-cbc"
        ],
        "HashAlgorithms": [
            "sha256",
            "sha384",
            "sha512"
            "sha1"
        ],
        "TlsCiphers": [
            "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
        ],
        "Type": "SERVER",
        "Protocols": [
           "SFTP",
           "FTPS"
        ]
    }
}
```

### TransferSecurityPolicy- AS2 Terbatas-2025-07
<a name="security-policy-transfer-as2restricted-2025-07"></a>

Berikut ini menunjukkan kebijakan keamanan TransferSecurityPolicy - AS2 Terbatas-2025-07.

**catatan**  
Kebijakan keamanan ini identik dengan TransferSecurityPolicy -2025-03, kecuali tidak mendukung 3DES (in ContentEncryptionCiphers) dan tidak mendukung SHA1 (in). HashAlgorithms Ini mencakup semua algoritma dari 2025-03, termasuk algoritma kriptografi pasca-kuantum (mlkem\$1). KEXs

```
{
    "SecurityPolicy": {
        "Fips": false,
        "SecurityPolicyName": "TransferSecurityPolicy-AS2Restricted-2025-07",
        "SshCiphers": [
            "aes256-gcm@openssh.com",
            "aes128-gcm@openssh.com",
            "aes128-ctr",
            "aes256-ctr",
            "aes192-ctr"
        ],
        "SshKexs": [
            "mlkem768x25519-sha256",
            "mlkem768nistp256-sha256",
            "mlkem1024nistp384-sha384",
            "ecdh-sha2-nistp256",
            "ecdh-sha2-nistp384",
            "ecdh-sha2-nistp521",
            "curve25519-sha256",
            "curve25519-sha256@libssh.org",
            "diffie-hellman-group16-sha512",
            "diffie-hellman-group18-sha512",
            "diffie-hellman-group-exchange-sha256"
        ],
        "SshMacs": [
            "hmac-sha2-256-etm@openssh.com",
            "hmac-sha2-512-etm@openssh.com"
        ],
        "ContentEncryptionCiphers": [
            "aes256-cbc",
            "aes192-cbc",
            "aes128-cbc"
        ],
        "HashAlgorithms": [
            "sha256",
            "sha384",
            "sha512"
        ],
        "TlsCiphers": [
            "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256",
            "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
            "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384",
            "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
        ],
        "Type": "SERVER",
        "Protocols": [
           "SFTP",
           "FTPS"
        ]
    }
}
```

# Kebijakan keamanan untuk konektor AWS Transfer Family SFTP
<a name="security-policies-connectors"></a>

Kebijakan keamanan konektor SFTP AWS Transfer Family memungkinkan Anda membatasi kumpulan algoritme kriptografi (kode otentikasi pesan (), pertukaran kunci (MACs), dan rangkaian sandiKEXs) yang terkait dengan konektor SFTP Anda. Berikut ini adalah daftar algoritma kriptografi yang didukung untuk setiap kebijakan keamanan konektor SFTP.

**catatan**  
`TransferSFTPConnectorSecurityPolicy-2024-03`adalah kebijakan keamanan default yang diterapkan pada konektor SFTP.

Anda dapat mengubah kebijakan keamanan untuk konektor Anda. Pilih **Konektor** dari panel navigasi kiri Transfer Family, dan pilih konektor Anda. Kemudian pilih **Edit** di bagian **konfigurasi Sftp**. Di bagian **Opsi algoritma kriptografi**, pilih kebijakan keamanan yang tersedia dari daftar dropdown di bidang Kebijakan **Keamanan**.

## Algoritma kriptografi
<a name="connector-cryptographic-algorithms"></a>

Untuk kunci host, konektor SFTP mendukung semua algoritma yang didukung untuk server Transfer Family, kecuali untuk ed25519:
+ `rsa-sha2-256`
+ `rsa-sha2-512`
+ `ecdsa-sha2-nistp256`
+ `ecdsa-sha2-nistp384`
+ `ecdsa-sha2-nistp521`

Selain itu, untuk kunci host, kami mendukung`ssh-rsa`, tetapi hanya untuk`TransferSFTPConnectorSecurityPolicy-2023-07`.

Untuk otentikasi, konektor SFTP mendukung jenis kunci berikut:
+ `ssh-rsa`
+ `ecdsa`

## Rincian kebijakan keamanan konektor SFTP
<a name="connector-policy-details"></a>

Tabel berikut menunjukkan algoritma kriptografi spesifik yang didukung oleh setiap kebijakan keamanan konektor SFTP.


| Kebijakan keamanan | Transfer SFTPConnector SecurityPolicy -FIPS-2024-10 | Transfer SFTPConnector SecurityPolicy -2024-03 | Transfer SFTPConnector SecurityPolicy -2023-07  | 
| --- |--- |--- |--- |
|  **Ciphers**  | 
| --- |
|  aes128-ctr  |  |  |  ♦  | 
|  aes128-gcm@openssh.com  |  ♦  | ♦ |  ♦  | 
|  aes192-ctr  |  | ♦ |  ♦  | 
|  aes256-ctr  |  | ♦ |  ♦  | 
|  aes256-gcm@openssh.com  |  ♦  | ♦ |  ♦  | 
|  **Kexs**  | 
| --- |
|  kurva25519-sha256  |  | ♦ |  ♦  | 
|  curve25519-sha256@libssh.org  |  | ♦ |  ♦  | 
|  diffie-hellman-group14-sha1  |  |  |  ♦  | 
|  diffie-hellman-group16-sha512  |  | ♦ |  ♦  | 
|  diffie-hellman-group18-sha512  |  | ♦ |  ♦  | 
|  diffie-hellman-group-exchange-sha256  |  |  ♦  |  ♦  | 
| ecdh-sha2-nistp256 |  ♦   |  |  | 
| ecdh-sha2-nistp384 |  ♦   |  |  | 
| ecdh-sha2-nistp521 |  ♦   |  |  | 
|  **Macs**  | 
| --- |
|  hmac-sha2-512-etm@openssh.com  |  |  ♦  |  ♦  | 
|  hmac-sha2-256-etm@openssh.com  |  |  ♦  |  ♦  | 
| hmac-sha2-512 |  ♦  |  ♦  |  ♦  | 
|  hmac-sha2-256  |  ♦  | ♦ |  ♦  | 
|  hmac-sha1  |  |  |  ♦  | 
|  hmac-sha1-96  |  |  |  ♦  | 
|  **Host Key Algorithms**  | 
| --- |
| rsa-sha2-256 |  ♦  |  ♦  |  ♦  | 
| rsa-sha2-512 |  ♦  |  ♦  |  ♦  | 
| ecdsa-sha2-nistp256 |  ♦  |  ♦  |  ♦  | 
| ecdsa-sha2-nistp384 |  | ♦  |  ♦  | 
| ecdsa-sha2-nistp521 |  | ♦  |  ♦  | 
| ssh-rsa |  |   |  ♦  | 

# Menggunakan pertukaran kunci pasca-kuantum hibrida dengan AWS Transfer Family
<a name="post-quantum-security-policies"></a>

 Transfer Family mendukung opsi pembentukan kunci pasca-kuantum hibrida untuk protokol Secure Shell (SSH). Pembentukan kunci pasca-kuantum diperlukan karena sudah memungkinkan untuk merekam lalu lintas jaringan dan menyimpannya untuk dekripsi di masa depan oleh komputer kuantum, yang disebut serangan. *store-now-harvest-later*

Anda dapat menggunakan opsi ini saat terhubung ke Transfer Family untuk transfer file aman ke dalam dan keluar dari penyimpanan Amazon Simple Storage Service (Amazon S3) atau Amazon Elastic File System (Amazon EFS). Pembentukan kunci hibrida pasca-kuantum di SSH memperkenalkan mekanisme pembentukan kunci pasca-kuantum, yang digunakannya bersama dengan algoritma pertukaran kunci klasik. Kunci SSH yang dibuat dengan cipher suite klasik aman dari serangan brute-force dengan teknologi saat ini. Namun, enkripsi klasik diperkirakan tidak akan tetap aman setelah munculnya komputasi kuantum skala besar di masa depan. 

Jika organisasi Anda bergantung pada kerahasiaan data jangka panjang yang diteruskan melalui koneksi Transfer Family, Anda harus mempertimbangkan rencana untuk bermigrasi ke kriptografi pasca-kuantum sebelum komputer kuantum skala besar tersedia untuk digunakan.

Untuk melindungi data yang dienkripsi hari ini terhadap potensi serangan future, AWS berpartisipasi dengan komunitas kriptografi dalam pengembangan algoritma tahan kuantum atau pasca-kuantum. Kami telah menerapkan rangkaian cipher pertukaran kunci pasca-kuantum hibrida di Transfer Family yang menggabungkan elemen klasik dan pasca-kuantum.

Suite sandi hibrida ini tersedia untuk digunakan pada beban kerja produksi Anda di sebagian besar Wilayah. AWS Namun, karena karakteristik kinerja dan persyaratan bandwidth suite cipher hybrid berbeda dengan mekanisme pertukaran kunci klasik, kami sarankan Anda mengujinya pada koneksi Transfer Family Anda.

Cari tahu lebih lanjut tentang kriptografi pasca-kuantum di posting blog keamanan [Post-Quantum Cryptography](https://aws.amazon.com/security/post-quantum-cryptography/).

**Contents**
+ [Tentang pertukaran kunci hibrida pasca-kuantum di SSH](#pq-about-key-exchange)
+ [Cara kerja pembentukan kunci hibrida pasca-kuantum di Transfer Family](#pqtls-details)
  + [Mengapa ML-KEM?](#why-mlkem)
  + [Pertukaran kunci SSH hibrida pasca-kuantum dan persyaratan kriptografi (FIPS 140)](#pq-alignment)
+ [Menguji pertukaran kunci hibrida pasca-kuantum di Transfer Family](#pq-policy-testing)
  + [Aktifkan pertukaran kunci hybrid pasca-kuantum di titik akhir SFTP Anda](#pq-enable-policy)
  + [Siapkan klien SFTP yang mendukung pertukaran kunci hybrid pasca-kuantum](#pq-client-openssh)
  + [Konfirmasikan pertukaran kunci hibrida pasca-kuantum di SFTP](#pq-verify-exchange)

## Tentang pertukaran kunci hibrida pasca-kuantum di SSH
<a name="pq-about-key-exchange"></a>

Transfer Family mendukung suite cipher pertukaran kunci hibrida pasca-kuantum, yang menggunakan algoritme pertukaran kunci [Elliptic Curve Diffie-Hellman](https://csrc.nist.gov/publications/detail/sp/800-56a/rev-3/final) (ECDH) klasik, dan ML-KEM. ML-KEM adalah enkripsi kunci publik pasca-kuantum dan algoritma pembentukan kunci yang telah ditetapkan oleh [National Institute for Standards and Technology (NIST) sebagai algoritma kesepakatan kunci pasca-kuantum standar](https://csrc.nist.gov/projects/post-quantum-cryptography) pertamanya. 

Klien dan server masih melakukan pertukaran kunci ECDH. Selain itu, server merangkum rahasia bersama pasca-kuantum ke kunci publik KEM pasca-kuantum klien, yang diiklankan dalam pesan pertukaran kunci SSH klien. Strategi ini menggabungkan jaminan tinggi pertukaran kunci klasik dengan keamanan pertukaran kunci pasca-kuantum yang diusulkan, untuk membantu memastikan bahwa jabat tangan dilindungi selama ECDH atau rahasia bersama pasca-kuantum tidak dapat dipatahkan.

## Cara kerja pembentukan kunci hibrida pasca-kuantum di Transfer Family
<a name="pqtls-details"></a>

AWS baru-baru ini mengumumkan dukungan untuk pertukaran kunci pasca-kuantum dalam transfer file SFTP di. AWS Transfer Family Transfer Family dengan aman menskalakan transfer business-to-business file ke layanan AWS Storage menggunakan SFTP dan protokol lainnya. SFTP adalah versi yang lebih aman dari File Transfer Protocol (FTP) yang berjalan melalui SSH. Dukungan pertukaran kunci pasca-kuantum dari Transfer Family meningkatkan bilah keamanan untuk transfer data melalui SFTP. 

Dukungan SFTP pertukaran kunci hybrid pasca-kuantum di Transfer Family termasuk menggabungkan algoritma pasca-kuantum ML-KEM-768, dan ML-KEM-1024, dengan ECDH di atas kurva P256, P384, atau Curve25519. Metode pertukaran kunci SSH yang sesuai berikut ini ditentukan dalam draf pertukaran [kunci SSH hibrida pasca-kuantum](https://datatracker.ietf.org/doc/draft-kampanakis-curdle-ssh-pq-ke/).
+ `mlkem768nistp256-sha256`
+ `mlkem1024nistp384-sha384`
+ `mlkem768x25519-sha256`

### Mengapa ML-KEM?
<a name="why-mlkem"></a>

AWS berkomitmen untuk mendukung standar, algoritma interoperable. [ML-KEM adalah satu-satunya algoritma pertukaran kunci pasca-kuantum yang distandarisasi dan disetujui oleh proyek NIST Post-Quantum Cryptography.](https://csrc.nist.gov/projects/post-quantum-cryptography) Badan standar sudah mengintegrasikan ML-KEM ke dalam protokol. AWS sudah mendukung ML-KEM di TLS di beberapa titik akhir API. AWS 

Sebagai bagian dari komitmen ini, AWS telah mengajukan draf proposal ke IETF untuk kriptografi pasca-kuantum yang menggabungkan ML-KEM dengan kurva yang disetujui NIST seperti P256 untuk SSH. Untuk membantu meningkatkan keamanan bagi pelanggan kami, AWS implementasi pertukaran kunci pasca-kuantum di SFTP dan SSH mengikuti rancangan itu. Kami berencana untuk mendukung pembaruan masa depan sampai proposal kami diadopsi oleh IETF dan menjadi standar. 

Metode pertukaran kunci baru (tercantum di bagian[Cara kerja pembentukan kunci hibrida pasca-kuantum di Transfer Family](#pqtls-details)) mungkin berubah saat draf berkembang menuju standardisasi.

**catatan**  
Dukungan algoritme pasca-kuantum saat ini tersedia untuk pertukaran kunci hibrida pasca-kuantum di TLS untuk AWS KMS (lihat [Menggunakan TLS pasca-kuantum hibrida dengan AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/pqtls.html)),,AWS Certificate Manager dan titik akhir API. AWS Secrets Manager 

### Pertukaran kunci SSH hibrida pasca-kuantum dan persyaratan kriptografi (FIPS 140)
<a name="pq-alignment"></a>

Untuk pelanggan yang memerlukan kepatuhan FIPS, Transfer Family menyediakan kriptografi yang disetujui FIPS di SSH dengan menggunakan perpustakaan kriptografi open-source bersertifikat AWS FIPS 140, -LC. AWS Metode pertukaran kunci hibrida pasca-kuantum yang didukung dalam TransferSecurityPolicy -FIPS-2025-03 di Transfer Family disetujui FIPS [menurut SP 800-56Cr2 NIST (bagian 2](https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-56Cr2.pdf)). Kantor Federal Jerman untuk Keamanan Informasi ([BSI](https://www.bsi.bund.de/EN/Themen/Unternehmen-und-Organisationen/Informationen-und-Empfehlungen/Quantentechnologien-und-Post-Quanten-Kryptografie/quantentechnologien-und-post-quanten-kryptografie_node.html)) dan Agence nationale de la sécurité des systèmes d'information ([ANSSI](https://www.ssi.gouv.fr/en/publication/anssi-views-on-the-post-quantum-cryptography-transition/)) Prancis juga merekomendasikan metode pertukaran kunci hibrida pasca-kuantum tersebut.

## Menguji pertukaran kunci hibrida pasca-kuantum di Transfer Family
<a name="pq-policy-testing"></a>

Bagian ini menjelaskan langkah-langkah yang Anda ambil untuk menguji pertukaran kunci hibrida pasca-kuantum.

1. [Aktifkan pertukaran kunci hybrid pasca-kuantum di titik akhir SFTP Anda](#pq-enable-policy).

1. Gunakan klien SFTP (seperti[Siapkan klien SFTP yang mendukung pertukaran kunci hybrid pasca-kuantum](#pq-client-openssh)) yang mendukung pertukaran kunci hibrida pasca-kuantum dengan mengikuti panduan dalam spesifikasi draf yang disebutkan di atas.

1. Transfer file menggunakan server Transfer Family.

1. [Konfirmasikan pertukaran kunci hibrida pasca-kuantum di SFTP](#pq-verify-exchange).

### Aktifkan pertukaran kunci hybrid pasca-kuantum di titik akhir SFTP Anda
<a name="pq-enable-policy"></a>

Anda dapat memilih kebijakan SSH saat membuat endpoint server SFTP baru di Transfer Family, atau dengan mengedit opsi algoritma Cryptographic di endpoint SFTP yang ada. Snapshot berikut menunjukkan contoh Konsol Manajemen AWS tempat Anda memperbarui kebijakan SSH.

![\[Menampilkan kebijakan pasca-kuantum yang dipilih untuk opsi algoritma Kriptografi.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/post-quantum-policy-choose.png)


**Nama kebijakan SSH yang mendukung pertukaran kunci pasca-kuantum adalah -2025-03 dan **TransferSecurityPolicy-FIPS-2025-03**. TransferSecurityPolicy** Untuk detail selengkapnya tentang kebijakan Transfer Family, lihat[Kebijakan keamanan untuk AWS Transfer Family server](security-policies.md).

### Siapkan klien SFTP yang mendukung pertukaran kunci hybrid pasca-kuantum
<a name="pq-client-openssh"></a>

Setelah memilih kebijakan SSH pasca-kuantum yang benar di titik akhir Transfer Family SFTP, Anda dapat bereksperimen dengan SFTP pasca-kuantum di Transfer Family. Instal klien OpenSSH terbaru (seperti versi 9.9) pada sistem lokal Anda untuk menguji.

**catatan**  
Pastikan klien Anda mendukung satu atau lebih algoritma ML-KEM yang tercantum sebelumnya. Anda dapat melihat algoritme yang didukung untuk versi OpenSSH Anda dengan menjalankan perintah ini:. `ssh -Q kex`

Anda dapat menjalankan contoh klien SFTP untuk terhubung ke titik akhir SFTP Anda (misalnya,`s-1111aaaa2222bbbb3.server.transfer.us-west-2.amazonaws.com`) dengan menggunakan metode pertukaran kunci hybrid pasca-kuantum, seperti yang ditunjukkan pada perintah berikut.

```
sftp -v -o \
   KexAlgorithms=mlkem768x25519-sha256 \
   -i username_private_key_PEM_file \
   username@server-id.server.transfer.region-id.amazonaws.com
```

Pada perintah sebelumnya, ganti item berikut dengan informasi Anda sendiri:
+ Ganti *username\$1private\$1key\$1PEM\$1file* dengan file kunci pribadi pengguna SFTP yang dikodekan PEM
+ Ganti *username* dengan nama pengguna SFTP
+ Ganti *server-id* dengan ID server Transfer Family
+ Ganti *region-id* dengan wilayah sebenarnya tempat server Transfer Family Anda berada

### Konfirmasikan pertukaran kunci hibrida pasca-kuantum di SFTP
<a name="pq-verify-exchange"></a>

Untuk mengonfirmasi bahwa pertukaran kunci hybrid pasca-kuantum digunakan selama koneksi SSH untuk SFTP ke Transfer Family, periksa output klien. Secara opsional, Anda dapat menggunakan program pengambilan paket. Jika Anda menggunakan klien OpenSSH 9.9, outputnya akan terlihat mirip dengan yang berikut (menghilangkan informasi yang tidak relevan untuk singkatnya):

```
% sftp -o KexAlgorithms=mlkem768x25519-sha256 -v -o IdentitiesOnly=yes -i username_private_key_PEM_file username@s-1111aaaa2222bbbb3.server.transfer.us-west-2.amazonaws.com
OpenSSH_9.9p2, OpenSSL 3.4.1 11 Feb 2025
debug1: Reading configuration data /Users/username/.ssh/config
debug1: /Users/username/.ssh/config line 146: Applying options for *
debug1: Reading configuration data /Users/username/.ssh/bastions-config
debug1: Reading configuration data /opt/homebrew/etc/ssh/ssh_config
debug1: Connecting to s-1111aaaa2222bbbb3.server.transfer.us-west-2.amazonaws.com [xxx.yyy.zzz.nnn] port 22.
debug1: Connection established.
[...]
debug1: Local version string SSH-2.0-OpenSSH_9.9
debug1: Remote protocol version 2.0, remote software version AWS_SFTP_1.1
debug1: compat_banner: no match: AWS_SFTP_1.1
debug1: Authenticating to s-1111aaaa2222bbbb3.server.transfer.us-west-2.amazonaws.com:22 as 'username'
debug1: load_hostkeys: fopen /Users/username/.ssh/known_hosts2: No such file or directory
[...]
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: mlkem768x25519-sha256
debug1: kex: host key algorithm: ssh-ed25519
debug1: kex: server->client cipher: aes128-ctr MAC: hmac-sha2-256-etm@openssh.com compression: none
debug1: kex: client->server cipher: aes128-ctr MAC: hmac-sha2-256-etm@openssh.com compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: SSH2_MSG_KEX_ECDH_REPLY received
debug1: Server host key: ssh-ed25519 SHA256:Ic1Ti0cdDmFdStj06rfU0cmmNccwAha/ASH2unr6zX0
[...]
debug1: rekey out after 4294967296 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey in after 4294967296 blocks
[...]
Authenticated to s-1111aaaa2222bbbb3.server.transfer.us-west-2.amazonaws.com ([xxx.yyy.zzz.nnn]:22) using "publickey".
debug1: channel 0: new session [client-session] (inactive timeout: 0)
[...]
Connected to s-1111aaaa2222bbbb3.server.transfer.us-west-2.amazonaws.com.
sftp>
```

Output menunjukkan bahwa negosiasi klien terjadi menggunakan `mlkem768x25519-sha256` metode hibrida pasca-kuantum dan berhasil membuat sesi SFTP. 

# Perlindungan data dan enkripsi
<a name="encryption-at-rest"></a>

[Model tanggung jawab AWS bersama model](https://aws.amazon.com/compliance/shared-responsibility-model/) berlaku untuk perlindungan data di AWS Transfer Family (Transfer Family). Seperti yang dijelaskan dalam model AWS ini, bertanggung jawab untuk melindungi infrastruktur global yang menjalankan semua AWS Cloud. Anda bertanggung jawab untuk mempertahankan kendali atas konten yang di-host pada infrastruktur ini. Konten ini mencakup konfigurasi keamanan dan tugas manajemen untuk AWS layanan yang Anda gunakan. Untuk informasi selengkapnya tentang privasi data, lihat [FAQ privasi data](https://aws.amazon.com/compliance/data-privacy-faq). Untuk informasi tentang perlindungan data di Eropa, lihat [model tanggung jawab AWS bersama dan posting blog GDPR](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/) di *Blog AWS Keamanan*.

Untuk tujuan perlindungan data, kami menyarankan Anda melindungi kredensyal AWS akun dan mengatur akun pengguna individu dengan. AWS IAM Identity Center Dengan cara ini, setiap pengguna hanya diberi izin yang diperlukan untuk memenuhi tanggung jawab tugas mereka. Kami juga merekomendasikan agar Anda mengamankan data Anda dengan cara-cara berikut ini:
+ Gunakan autentikasi multi-faktor (MFA) pada setiap akun.
+ Gunakan SSL/TLS untuk berkomunikasi dengan AWS sumber daya. Kami mendukung TLS 1.2.
+ Siapkan API dan logging aktivitas pengguna dengan AWS CloudTrail.
+ Gunakan solusi AWS enkripsi, bersama dengan semua kontrol keamanan default dalam AWS layanan.
+ Gunakan layanan keamanan terkelola lanjutan seperti Amazon Macie, yang membantu menemukan dan mengamankan data pribadi yang disimpan di Amazon Simple Storage Service (Amazon S3).
+ Jika Anda memerlukan modul kriptografi tervalidasi FIPS 140-2 ketika mengakses AWS melalui antarmuka baris perintah atau API, gunakan titik akhir FIPS. Untuk informasi selengkapnya tentang titik akhir FIPS yang tersedia, lihat [Standar pemrosesan informasi federal (FIPS) 140-2](https://aws.amazon.com/compliance/fips/).

Kami sangat merekomendasikan agar Anda tidak memasukkan informasi identifikasi sensitif apapun, seperti nomor rekening pelanggan Anda, ke dalam kolom isian teks bebas seperti kolom **Nama**. Ini termasuk saat Anda bekerja dengan Transfer Family atau AWS layanan lain menggunakan konsol, API AWS CLI, atau AWS SDKs. Data konfigurasi apa pun yang Anda masukkan ke dalam konfigurasi layanan Transfer Family, atau konfigurasi layanan lain, dapat diambil untuk dimasukkan dalam log diagnostik. Saat Anda memberikan URL ke server eksternal, jangan sertakan informasi kredensial di URL untuk memvalidasi permintaan Anda ke server tersebut.

Sebaliknya, data dari operasi unggah dan pengunduhan masuk dan keluar dari server Transfer Family diperlakukan sebagai sepenuhnya pribadi dan tidak pernah ada di luar saluran terenkripsi — seperti koneksi SFTP atau FTPS. Data ini hanya dapat diakses oleh orang yang berwenang.

## Enkripsi data di Transfer Family
<a name="tf-data-encryption"></a>

AWS Transfer Family menggunakan opsi enkripsi default yang Anda tetapkan untuk bucket Amazon S3 untuk mengenkripsi data Anda. Saat Anda mengaktifkan enkripsi pada bucket, semua objek dienkripsi saat disimpan di bucket. Objek dienkripsi dengan menggunakan enkripsi sisi server dengan kunci terkelola Amazon S3 (SSE-S3) atau () kunci terkelola (SSE-KMS). AWS Key Management Service AWS KMS Untuk informasi tentang enkripsi sisi server, lihat [Melindungi data menggunakan enkripsi sisi server](https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html) di Panduan Pengguna Layanan Penyimpanan Sederhana *Amazon*.

Langkah-langkah berikut menunjukkan cara mengenkripsi data. AWS Transfer Family

**Untuk memungkinkan enkripsi di AWS Transfer Family**

1. Aktifkan enkripsi default untuk bucket Amazon S3 Anda. Untuk petunjuk, lihat [enkripsi default Amazon S3 untuk bucket S3 di Panduan Pengguna](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) Layanan *Penyimpanan Sederhana Amazon*.

1. Perbarui kebijakan peran AWS Identity and Access Management (IAM) yang dilampirkan ke pengguna untuk memberikan izin required AWS Key Management Service (AWS KMS).

1. Jika Anda menggunakan kebijakan sesi untuk pengguna, kebijakan sesi harus memberikan AWS KMS izin yang diperlukan.

Contoh berikut menunjukkan kebijakan IAM yang memberikan izin minimum yang diperlukan saat menggunakan bucket Amazon S3 AWS Transfer Family yang diaktifkan untuk enkripsi. AWS KMS Sertakan kebijakan contoh ini dalam kebijakan peran IAM pengguna dan kebijakan sesi, jika Anda menggunakannya.

```
{
   "Sid": "Stmt1544140969635",
   "Action": [
      "kms:Decrypt",
      "kms:Encrypt",
      "kms:GenerateDataKey",
      "kms:GetPublicKey",
      "kms:ListKeyPolicies"
   ],
   "Effect": "Allow",
   "Resource": "arn:aws:kms:region:account-id:key/kms-key-id"
}
```

**catatan**  
ID kunci KMS yang Anda tentukan dalam kebijakan ini harus sama dengan yang ditentukan untuk enkripsi default pada langkah 1.  
Root, atau peran IAM yang digunakan untuk pengguna, harus diizinkan dalam kebijakan AWS KMS kunci. Untuk informasi tentang kebijakan AWS KMS utama, lihat [Menggunakan kebijakan utama di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) di *Panduan AWS Key Management Service Pengembang*.

## AWS Transfer Family enkripsi saat istirahat
<a name="encrypting-data"></a>

Karena AWS Transfer Family merupakan layanan transfer file, itu tidak mengelola data penyimpanan Anda saat istirahat. Layanan penyimpanan dan sistem yang AWS Transfer Family mendukung bertanggung jawab untuk melindungi data dalam keadaan itu. Namun, ada beberapa data terkait layanan yang AWS Transfer Family mengelola saat istirahat.

### Apa yang dienkripsi?
<a name="what-is-encrypted"></a>

Satu-satunya data yang AWS Transfer Family menangani saat istirahat berkaitan dengan detail yang dibutuhkan untuk mengoperasikan server transfer file Anda dan memproses transfer. AWS Transfer Family menyimpan data berikut dengan enkripsi penuh saat istirahat di Amazon DynamoDB:
+ Konfigurasi server (misalnya, pengaturan server, konfigurasi protokol, dan detail titik akhir).
+ Data otentikasi pengguna, termasuk kunci publik SSH dan metadata pengguna.
+ Rincian eksekusi alur kerja dan konfigurasi langkah.
+ Konfigurasi konektor dan kredensyal otentikasi untuk sistem pihak ketiga. Kredensyal ini dienkripsi menggunakan AWS Transfer Family kunci enkripsi terkelola.

#### Manajemen kunci
<a name="encrypting-data-key-management"></a>

Anda tidak dapat mengelola kunci enkripsi yang AWS Transfer Family digunakan untuk menyimpan informasi di DynamoDB yang terkait dengan menjalankan server Anda dan memproses transfer. Informasi ini mencakup konfigurasi server Anda, data otentikasi pengguna, detail alur kerja, dan kredensi konektor.

### Apa yang tidak dienkripsi?
<a name="what-is-not-encrypted"></a>

Meskipun AWS Transfer Family tidak mengontrol bagaimana data penyimpanan Anda dienkripsi saat istirahat, kami tetap menyarankan untuk mengonfigurasi lokasi penyimpanan Anda dengan tingkat keamanan tertinggi yang mereka dukung. Misalnya, Anda dapat mengenkripsi objek dengan kunci enkripsi terkelola Amazon S3 (SSE-S3) atau kunci (SSE-KMS) AWS KMS .

Pelajari lebih lanjut tentang cara layanan AWS penyimpanan mengenkripsi data saat istirahat:
+ [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html)
+ [Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/encryption-at-rest.html)

# Mengelola kunci SSH dan PGP di Transfer Family
<a name="key-management"></a>

Di bagian ini, Anda dapat menemukan informasi tentang kunci SSH, termasuk cara membuatnya dan cara memutarnya. Untuk detail tentang penggunaan Transfer Family with AWS Lambda to manage keys, lihat posting blog [Mengaktifkan manajemen kunci layanan mandiri pengguna dengan AWS Transfer Family](https://aws.amazon.com/blogs/storage/enabling-user-self-service-key-management-with-aws-transfer-family-and-aws-lambda/) dan. AWS Lambda Untuk penerapan otomatis dan pengelolaan pengguna dengan beberapa kunci SSH, lihat. [Modul Transfer Family Terraform](terraform.md)

**catatan**  
AWS Transfer Family menerima RSA, ECDSA, dan ED25519 kunci untuk otentikasi SSH.

Bagian ini juga mencakup cara membuat dan mengelola kunci Pretty Good Privacy (PGP).

Untuk gambaran menyeluruh tentang semua enkripsi dan algoritme kunci yang didukung, termasuk rekomendasi untuk kasus penggunaan yang berbeda, lihat[Ikhtisar enkripsi dan algoritma kunci](#encryption-algorithms-overview).

## Ikhtisar enkripsi dan algoritma kunci
<a name="encryption-algorithms-overview"></a>

AWS Transfer Family mendukung berbagai jenis algoritma untuk tujuan yang berbeda. Memahami algoritme mana yang akan digunakan untuk kasus penggunaan spesifik Anda membantu memastikan transfer file yang aman dan kompatibel.


**Referensi Cepat Algoritma**  

| Kasus Penggunaan | Algoritma yang Direkomendasikan | Sesuai FIPS | Catatan | 
| --- | --- | --- | --- | 
| Otentikasi SSH/SFTP | RSA (rsa-sha2-256/512), ECDSA, atau ED25519 | RSA: Ya, ECDSA: Ya,: Tidak ED25519 | Kompatibel dengan semua klien SSH dan server | 
| Generasi Kunci PGP | RSA atau ECC (NIST) | Ya | Untuk dekripsi alur kerja | 
| Enkripsi File PGP | AES-256 | Ya | Ditentukan oleh perangkat lunak PGP | 

## Algoritma otentikasi SSH
<a name="ssh-authentication-algorithms"></a>

Algoritma ini digunakan untuk SSH/SFTP otentikasi antara klien dan AWS Transfer Family server. Pilih salah satunya saat membuat pasangan kunci SSH untuk otentikasi pengguna atau kunci host server.

RSA (Direkomendasikan)  
**Kompatibel dengan semua klien dan server SSH, dan sesuai dengan FIPS.** Gunakan dengan hashing SHA-2 untuk keamanan yang ditingkatkan:  
+ `rsa-sha2-256`- Direkomendasikan untuk sebagian besar kasus penggunaan
+ `rsa-sha2-512`- Opsi keamanan yang lebih tinggi

ED25519  
**Modern dan efisien.** Ukuran kunci yang lebih kecil dengan keamanan yang kuat:  
+ `ssh-ed25519`- Cepat dan aman, tetapi tidak sesuai FIPS

ECDSA  
**Opsi kurva elips.** Keseimbangan keamanan dan kinerja yang baik:  
+ `ecdsa-sha2-nistp256`- Kurva standar
+ `ecdsa-sha2-nistp384`- Kurva keamanan yang lebih tinggi
+ `ecdsa-sha2-nistp521`- Kurva keamanan tertinggi

**catatan**  
Kami mendukung `ssh-rsa` SHA1 untuk kebijakan keamanan yang lebih lama. Lihat perinciannya di [Algoritma kriptografi](security-policies.md#cryptographic-algorithms).

**Memilih algoritma SSH yang tepat**
+ **Untuk sebagian besar pengguna:** Gunakan RSA dengan `rsa-sha2-256` atau `rsa-sha2-512`
+ **Untuk kepatuhan FIPS: Gunakan algoritma** RSA atau ECDSA
+ **Untuk lingkungan modern:** ED25519 menawarkan keamanan dan kinerja yang sangat baik

## Enkripsi PGP dan algoritma dekripsi
<a name="pgp-encryption-algorithms"></a>

PGP (Pretty Good Privacy) menggunakan dua jenis algoritma yang bekerja sama untuk mengenkripsi dan mendekripsi file dalam alur kerja:

1. **Algoritma pasangan kunci** - Digunakan untuk menghasilkan pasangan public/private kunci untuk enkripsi dan tanda tangan digital

1. **Algoritma simetris** - Digunakan untuk mengenkripsi data file aktual (algoritma key pair mengenkripsi kunci simetris)

### Algoritma key pair PGP
<a name="pgp-key-algorithms"></a>

Pilih salah satu algoritme ini saat membuat pasangan kunci PGP untuk dekripsi alur kerja:

RSA (Direkomendasikan)  
**Direkomendasikan untuk sebagian besar pengguna.** Didukung secara luas, mapan, dan sesuai FIPS. Memberikan keseimbangan keamanan dan kompatibilitas yang baik.

ECC (Kriptografi Kurva Elips)  
**Lebih efisien daripada RSA** dengan ukuran kunci yang lebih kecil sambil mempertahankan keamanan yang kuat:  
+ Kurva **NIST - Kurva** standar didukung secara luas dan sesuai dengan FIPS
+ **BrainPool kurva** - Kurva alternatif untuk persyaratan kepatuhan tertentu
+ **Curve25519** - Kurva kinerja tinggi modern yang menawarkan keamanan yang kuat dengan komputasi yang efisien

ElGamal  
**Algoritma warisan.** Didukung untuk kompatibilitas dengan sistem yang lebih lama. Gunakan RSA atau ECC untuk implementasi baru.

Untuk petunjuk rinci tentang menghasilkan kunci PGP, lihat. [Hasilkan kunci PGP](generate-pgp-keys.md)

### Algoritma enkripsi simetris PGP
<a name="pgp-symmetric-algorithms"></a>

Algoritma ini mengenkripsi data file Anda yang sebenarnya. Algoritma yang digunakan tergantung pada bagaimana file PGP dibuat oleh perangkat lunak PGP Anda:

**Algoritme yang sesuai dengan FIPS (direkomendasikan untuk lingkungan yang diatur)**
+ **AES-128, AES-192, AES-256 -** Standar Enkripsi Lanjutan (disarankan)
+ **3DES** - Triple Data Encryption Standard (lama, gunakan AES bila memungkinkan)

**Algoritma lain yang didukung**
+ IDE,, Blowfish CAST5, DES,, CAMELLIA-128, CAMELLIA-192 TwoFish, CAMELLIA-256

**catatan**  
Anda tidak memilih algoritma simetris secara langsung saat menggunakan AWS Transfer Family alur kerja - itu ditentukan oleh perangkat lunak PGP yang digunakan untuk membuat file terenkripsi. Namun, Anda dapat mengonfigurasi perangkat lunak PGP Anda untuk memilih algoritma yang sesuai dengan FIPS seperti AES-256.

Untuk informasi selengkapnya tentang algoritme simetris yang didukung, lihat. [Algoritma enkripsi simetris yang didukung](nominal-steps-workflow.md#symmetric-algorithms)

# Hasilkan kunci SSH untuk pengguna yang dikelola layanan
<a name="sshkeygen"></a>

Anda dapat mengatur server Anda untuk mengautentikasi pengguna menggunakan metode otentikasi terkelola layanan, tempat nama pengguna dan kunci SSH disimpan dalam layanan. Kunci SSH publik pengguna diunggah ke server sebagai properti pengguna. Kunci ini digunakan oleh server sebagai bagian dari proses otentikasi berbasis kunci standar. Setiap pengguna dapat memiliki beberapa kunci SSH publik pada file dengan server individual. Untuk batasan jumlah kunci yang dapat disimpan per pengguna, lihat [AWS Transfer Family titik akhir dan kuota](https://docs.aws.amazon.com//general/latest/gr/transfer-service.html) di. *Referensi Umum Amazon Web*

Sebagai alternatif metode otentikasi terkelola layanan, Anda dapat mengautentikasi pengguna menggunakan penyedia identitas kustom, atau. AWS Directory Service for Microsoft Active Directory Untuk informasi selengkapnya, lihat [Bekerja dengan penyedia identitas khusus](custom-idp-intro.md) atau [Menggunakan AWS Directory Service untuk Microsoft Active Directory](directory-services-users.md).

Server hanya dapat mengautentikasi pengguna menggunakan satu metode (layanan dikelola, layanan direktori, atau penyedia identitas kustom), dan metode itu tidak dapat diubah setelah server dibuat.

**Topics**
+ [Membuat kunci SSH di macOS, Linux, atau Unix](macOS-linux-unix-ssh.md)
+ [Membuat kunci SSH di Microsoft Windows](windows-ssh.md)
+ [Mengonversi SSH2 kunci ke format kunci publik SSH](convert-ssh2-public-key.md)

# Membuat kunci SSH di macOS, Linux, atau Unix
<a name="macOS-linux-unix-ssh"></a>

Pada sistem operasi macOS, Linux, atau Unix, Anda menggunakan `ssh-keygen` perintah untuk membuat kunci publik SSH dan kunci pribadi SSH yang juga dikenal sebagai key pair.

**catatan**  
Dalam contoh berikut, kami tidak menentukan frasa sandi: dalam hal ini, alat meminta Anda untuk memasukkan frasa sandi Anda dan kemudian mengulanginya untuk memverifikasi. Membuat frasa sandi menawarkan perlindungan yang lebih baik untuk kunci pribadi Anda, dan mungkin juga meningkatkan keamanan sistem secara keseluruhan. Anda tidak dapat memulihkan frasa sandi Anda: jika Anda lupa, Anda harus membuat kunci baru.  
Namun, jika Anda membuat kunci host server, Anda *harus* menentukan frasa sandi kosong, dengan menentukan `-N ""` opsi dalam perintah (atau dengan menekan **Enter** dua kali saat diminta), karena server Transfer Family tidak dapat meminta kata sandi saat start-up.

**Untuk membuat kunci SSH pada sistem operasi macOS, Linux, atau Unix**

1. Pada sistem operasi macOS, Linux, atau Unix, buka terminal perintah.

1. AWS Transfer Family menerima kunci RSA-, ECDSA-, dan -diformat. ED25519 Pilih perintah yang sesuai berdasarkan jenis pasangan kunci yang Anda hasilkan.

   **Tip**: Ganti `key_name` dengan nama sebenarnya dari file key pair SSH Anda.
   + Untuk menghasilkan key pair RSA 4096-bit:

     ```
     ssh-keygen -t rsa -b 4096 -f key_name
     ```
   + Untuk menghasilkan pasangan kunci ECDSA 521-bit (ECDSA memiliki ukuran bit 256, 384, dan 521):

     ```
     ssh-keygen -t ecdsa -b 521 -f key_name
     ```
   + Untuk menghasilkan ED25519 key pair:

     ```
     ssh-keygen -t ed25519 -f key_name
     ```

   Berikut ini menunjukkan contoh `ssh-keygen` output.

   ```
   ssh-keygen -t rsa -b 4096 -f key_name
   Generating public/private rsa key pair.
   
   Enter passphrase (empty for no passphrase): 
   Enter same passphrase again:
   Your identification has been saved in key_name.
   Your public key has been saved in key_name.pub.
   The key fingerprint is:
   SHA256:8tDDwPmanTFcEzjTwPGETVWOGW1nVz+gtCCE8hL7PrQ bob.amazon.com
   The key's randomart image is:
   +---[RSA 4096]----+
   |    . ....E      |
   | .   = ...       |
   |. . . = ..o      |
   | . o +  oo =     |
   |  + =  .S.= *    |
   | . o o ..B + o   |
   |     .o.+.* .    |
   |     =o*+*.      |
   |    ..*o*+.      |
   +----[SHA256]-----+
   ```

   **Tip**: Ketika Anda menjalankan `ssh-keygen` perintah seperti yang ditunjukkan sebelumnya, itu membuat kunci publik dan pribadi sebagai file dalam direktori saat ini.

   Key pair SSH Anda sekarang siap digunakan. Ikuti langkah 3 dan 4 untuk menyimpan kunci publik SSH untuk pengguna yang dikelola layanan Anda. Pengguna ini menggunakan kunci ketika mereka mentransfer file pada endpoint server Transfer Family.

1. Arahkan ke `key_name.pub` file dan buka.

1. Salin teks dan tempel di **kunci publik SSH untuk pengguna** yang dikelola layanan.

   1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/), lalu pilih **Server** dari panel navigasi.

   1. Pada halaman **Server**, pilih **ID Server** untuk server yang berisi pengguna yang ingin Anda perbarui.

   1. Pilih pengguna yang Anda tambahkan kunci publiknya.

   1. Di panel **kunci publik SSH**, pilih **Tambahkan kunci publik SSH**.  
![\[AWS Transfer Family Konsol, menampilkan detail pengguna untuk pengguna yang dipilih.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/edit-user-add-key-01.png)

   1. Tempelkan teks kunci publik yang Anda hasilkan ke dalam kotak teks kunci publik SSH, lalu pilih **Tambah kunci**.  
![\[AWS Transfer Family Konsol, menampilkan halaman Add key untuk menambahkan kunci publik.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/edit-user-add-key-02.png)

      Kunci baru tercantum di panel kunci publik SSH.  
![\[AWS Transfer Family Konsol, menampilkan kunci publik yang baru ditambahkan di bagian kunci publik SSH.\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/edit-user-add-key-03.png)

# Membuat kunci SSH di Microsoft Windows
<a name="windows-ssh"></a>

Windows menyertakan OpenSSH sebagai fitur bawaan, yang dapat Anda gunakan untuk menghasilkan kunci SSH dalam format yang sama seperti di Linux atau macOS. Atau, Anda dapat menggunakan alat pihak ketiga seperti generator kunci PuTTY (PuTTYgen).

## Menggunakan OpenSSH bawaan Windows
<a name="windows-openssh"></a>

Versi terbaru Windows menyertakan OpenSSH secara default. Anda dapat menggunakan `ssh-keygen` perintah yang sama seperti yang dijelaskan di bagian macOS/Linux:

1. Buka Windows PowerShell atau Command Prompt.

1. Jalankan salah satu perintah berikut berdasarkan jenis kunci yang ingin Anda hasilkan:
   + Untuk menghasilkan key pair RSA 4096-bit:

     ```
     ssh-keygen -t rsa -b 4096 -f key_name
     ```
   + Untuk menghasilkan pasangan kunci ECDSA 521-bit:

     ```
     ssh-keygen -t ecdsa -b 521 -f key_name
     ```
   + Untuk menghasilkan ED25519 key pair:

     ```
     ssh-keygen -t ed25519 -f key_name
     ```

1. Ikuti langkah-langkah yang sama seperti di macOS/Linux bagian untuk mengunggah kunci publik Anda AWS Transfer Family.

## Menggunakan Pu TTYgen (alat pihak ketiga)
<a name="windows-puttygen"></a>

Beberapa klien SSH pihak ketiga untuk Windows, seperti PuTTY, menggunakan format kunci yang berbeda. PuTTY menggunakan `PPK` format untuk kunci pribadi. Jika Anda menggunakan Putty atau alat terkait seperti WinSCP, Anda dapat menggunakan Pu TTYgen untuk membuat kunci dalam format ini.

**catatan**  
Jika Anda menyajikan WinSCP dengan file kunci pribadi yang tidak `.ppk` dalam format, klien itu menawarkan untuk mengubah kunci `.ppk` menjadi format untuk Anda.

Untuk tutorial tentang membuat kunci SSH dengan menggunakan PuTTYgen, lihat situs web [SSH.com](https://www.ssh.com/ssh/putty/windows/puttygen).

# Mengonversi SSH2 kunci ke format kunci publik SSH
<a name="convert-ssh2-public-key"></a>

 AWS Transfer Family hanya menerima kunci publik berformat SSH. Jika Anda memiliki kunci SSH2 publik, Anda perlu mengubahnya. Kunci SSH2 publik memiliki format berikut:

```
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key-20160402"
AAAAB3NzaC1yc2EAAAABJQAAAgEAiL0jjDdFqK/kYThqKt7THrjABTPWvXmB3URI
:
:
---- END SSH2 PUBLIC KEY ----
```

Kunci publik SSH memiliki format berikut:

```
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAA...
```

Jalankan perintah berikut untuk mengonversi kunci publik SSH2 yang diformat menjadi kunci publik berformat SSH. Ganti *ssh2-key* dengan nama SSH2 kunci Anda, dan *ssh-key* dengan nama kunci SSH Anda.

```
ssh-keygen -i -f ssh2-key.pub > ssh-key.pub
```

# Putar tombol SSH
<a name="keyrotation"></a>

Untuk keamanan, kami merekomendasikan praktik terbaik untuk memutar kunci SSH Anda. Biasanya, rotasi ini ditentukan sebagai bagian dari kebijakan keamanan dan diimplementasikan dalam beberapa cara otomatis. Tergantung pada tingkat keamanan, untuk komunikasi yang sangat sensitif, key pair SSH mungkin hanya digunakan sekali. Melakukan hal ini menghilangkan risiko apa pun karena kunci yang disimpan. Namun, jauh lebih umum untuk menyimpan kredensyal SSH untuk jangka waktu tertentu dan menetapkan interval yang tidak menempatkan beban yang tidak semestinya pada pengguna. Interval waktu tiga bulan adalah hal biasa.

**catatan**  
Untuk rotasi kunci SSH otomatis menggunakan infrastruktur sebagai kode, lihat[Modul Transfer Family Terraform](terraform.md).

Ada dua metode yang digunakan untuk melakukan rotasi kunci SSH:
+ Di konsol, Anda dapat mengunggah kunci publik SSH baru dan menghapus kunci publik SSH yang ada.
+ Dengan menggunakan API, Anda dapat memperbarui pengguna yang ada dengan menggunakan [DeleteSshPublicKey](https://docs.aws.amazon.com//transfer/latest/APIReference/API_DeleteSshPublicKey.html)API untuk menghapus kunci publik Secure Shell (SSH) pengguna dan [ImportSshPublicKey](https://docs.aws.amazon.com/transfer/latest/APIReference/API_ImportSshPublicKey.html)API untuk menambahkan kunci publik Secure Shell (SSH) baru ke akun pengguna.

------
#### [ Console ]

**Untuk melakukan rotasi kunci di konsol**

1. Buka AWS Transfer Family konsol di [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. Arahkan ke halaman **Server**.

1. Pilih pengenal di kolom **ID Server** untuk melihat halaman **Detail Server**.

1. Di bawah **Pengguna**, pilih kotak centang pengguna yang kunci publik SSH yang ingin Anda putar, lalu pilih **Tindakan**, lalu pilih **Tambah kunci** untuk melihat halaman **Tambah kunci**.

   atau

   Pilih nama pengguna untuk melihat halaman **Detail pengguna**, lalu pilih **Tambahkan kunci publik SSH** untuk melihat halaman **Tambah kunci**.

1. Masukkan kunci publik SSH baru dan pilih **Tambah kunci**.
**penting**  
Format kunci publik SSH tergantung pada jenis kunci yang Anda hasilkan.  
Untuk kunci RSA, formatnya adalah`ssh-rsa string`.
Untuk ED25519 kunci, formatnya adalah`ssh-ed25519 string`.
Untuk kunci ECDSA, kunci dimulai dengan`ecdsa-sha2-nistp256`,`ecdsa-sha2-nistp384`, atau`ecdsa-sha2-nistp521`, tergantung pada ukuran kunci yang Anda hasilkan. String awal kemudian diikuti oleh`string`, mirip dengan jenis kunci lainnya.

   Anda dikembalikan ke halaman **detail Pengguna**, dan kunci publik SSH baru yang baru saja Anda masukkan muncul di bagian **kunci publik SSH**.

1. Pilih kotak centang kunci lama yang ingin Anda hapus dan kemudian pilih **Hapus**.

1. **Konfirmasikan operasi penghapusan dengan memasukkan kata`delete`, lalu pilih Hapus.**

------
#### [ API ]

**Untuk melakukan rotasi kunci menggunakan API**

1. Pada sistem operasi macOS, Linux, atau Unix, buka terminal perintah.

1.  Ambil kunci SSH yang ingin Anda hapus dengan memasukkan perintah berikut. Untuk menggunakan perintah ini, ganti `serverID` dengan ID server untuk server Transfer Family Anda, dan ganti `username` dengan nama pengguna Anda.

   ```
   aws transfer describe-user --server-id='serverID' --user-name='username'
   ```

   Perintah mengembalikan rincian tentang pengguna. Salin isi `"SshPublicKeyId":` bidang. Anda harus memasukkan nilai ini nanti dalam prosedur ini. 

   ```
   "SshPublicKeys": [ { "SshPublicKeyBody": "public-key", "SshPublicKeyId": "keyID",
      "DateImported": 1621969331.072 } ],
   ```

1.  Selanjutnya, impor kunci SSH baru untuk pengguna Anda. Di perintah , masukkan perintah berikut. Untuk menggunakan perintah ini, ganti `serverID` dengan ID server untuk server Transfer Family Anda, ganti `username` dengan nama pengguna Anda, dan ganti `public-key` dengan sidik jari kunci publik baru Anda. 

   ```
   aws transfer import-ssh-public-key --server-id='serverID' --user-name='username'
      --ssh-public-key-body='public-key'
   ```

   ``Jika perintah berhasil, tidak ada output yang dikembalikan.

1.  Terakhir, hapus kunci lama dengan menjalankan perintah berikut. Untuk menggunakan perintah ini, ganti `serverID` dengan ID server untuk server Transfer Family Anda, ganti `username` dengan nama pengguna Anda, dan ganti `keyID-from-step-2` dengan nilai ID kunci yang Anda salin di langkah 2 prosedur ini 

   ```
   aws transfer delete-ssh-public-key --server-id='serverID' --user-name='username'
      --ssh-public-key-id='keyID-from-step-2'
   ```

1. (Opsional) Untuk mengonfirmasi bahwa kunci lama tidak ada lagi, ulangi langkah 2.

------

# Hasilkan kunci PGP
<a name="generate-pgp-keys"></a>

Anda dapat menggunakan dekripsi Pretty Good Privacy (PGP) dengan file yang diproses Transfer Family dengan alur kerja. Untuk menggunakan dekripsi dalam langkah alur kerja, berikan kunci PGP. Untuk informasi rinci tentang algoritma kunci PGP, termasuk rekomendasi dan kepatuhan FIPS, lihat. [Algoritma key pair PGP](key-management.md#pgp-key-algorithms)

Blog AWS penyimpanan memiliki posting yang menjelaskan cara mendekripsi file tanpa menulis kode apa pun menggunakan alur kerja Transfer Family Managed, [Enkripsi dan dekripsi file dengan PGP dan](https://aws.amazon.com/blogs/storage/encrypt-and-decrypt-files-with-pgp-and-aws-transfer-family/). AWS Transfer Family

Operator yang Anda gunakan untuk menghasilkan kunci PGP Anda bergantung pada sistem operasi Anda dan versi perangkat lunak generasi kunci yang Anda gunakan.

Jika Anda menggunakan Linux atau Unix, gunakan penginstal paket Anda untuk menginstal. `gpg` Tergantung pada distribusi Linux Anda, salah satu perintah berikut akan bekerja untuk Anda.

```
sudo yum install gnupg
```

```
sudo apt-get install gnupg
```

[Untuk Windows atau macOS, Anda dapat mengunduh apa yang Anda butuhkan dari https://gnupg.org/download/.](https://gnupg.org/download/)

Setelah Anda menginstal perangkat lunak generator kunci PGP Anda, Anda menjalankan `gpg --gen-key` perintah `gpg --full-gen-key` or untuk menghasilkan key pair.

**catatan**  
Jika Anda menggunakan `GnuPG` versi 2.3.0 atau yang lebih baru, Anda harus menjalankannya. `gpg --full-gen-key` Ketika diminta untuk jenis kunci yang akan dibuat, pilih RSA atau ECC. Jika Anda memilih **ECC**, Anda dapat memilih dariNIST, BrainPool dan Curve25519 untuk kurva elips. 

**`gpg`Subperintah yang berguna**

Berikut ini adalah beberapa subperintah yang berguna untuk`gpg`:
+ `gpg --help`— Perintah ini mencantumkan opsi yang tersedia dan mungkin menyertakan beberapa contoh.
+ `gpg --list-keys`— Perintah ini mencantumkan detail untuk semua pasangan kunci yang telah Anda buat.
+ `gpg --fingerprint`— Perintah ini mencantumkan detail untuk semua pasangan kunci Anda, termasuk sidik jari masing-masing tombol.
+ `gpg --export -a user-name`— Perintah ini mengekspor bagian kunci publik dari kunci untuk `user-name` yang digunakan saat kunci dihasilkan.

# Kelola kunci PGP
<a name="manage-pgp-keys"></a>

Untuk mengelola kunci PGP Anda, gunakan. AWS Secrets Manager

**catatan**  
Nama rahasia Anda termasuk ID server Transfer Family Anda. Ini berarti Anda seharusnya sudah mengidentifikasi atau membuat server *sebelum* Anda dapat menyimpan informasi kunci PGP Anda. AWS Secrets Manager

Jika Anda ingin menggunakan satu kunci dan frasa sandi untuk semua pengguna Anda, Anda dapat menyimpan informasi blok kunci PGP di bawah nama rahasia`aws/transfer/server-id/@pgp-default`, di mana ID untuk server Transfer `server-id` Family Anda. Transfer Family menggunakan kunci default ini jika tidak ada kunci yang `user-name` cocok dengan pengguna yang menjalankan alur kerja. 

Anda dapat membuat kunci untuk pengguna tertentu. Dalam hal ini, format untuk nama rahasia adalah`aws/transfer/server-id/user-name`, di mana `user-name` cocok dengan pengguna yang menjalankan alur kerja untuk server Transfer Family.

**catatan**  
Anda dapat menyimpan maksimal 3 kunci pribadi PGP, per server Transfer Family, per pengguna.

**Untuk mengkonfigurasi kunci PGP untuk digunakan dengan dekripsi**

1. Bergantung pada versi GPG yang Anda gunakan, jalankan salah satu perintah berikut untuk menghasilkan key pair PGP.
   + Jika Anda menggunakan **GnuPG** versi 2.3.0 atau yang lebih baru, jalankan perintah berikut:

     ```
     gpg --full-gen-key
     ```

     Anda dapat memilih**RSA**, atau, jika Anda memilih**ECC**, Anda dapat memilih salah satu**NIST**, **BrainPool** atau **Curve25519** untuk kurva elips. Jika Anda `gpg --gen-key` menjalankannya, Anda membuat key pair yang menggunakan algoritma enkripsi ECC Curve 25519. 
   + Untuk versi **GnuPG** sebelum 2.3.0, Anda dapat menggunakan perintah berikut, karena RSA adalah jenis enkripsi default.

     ```
     gpg --gen-key
     ```
**penting**  
Selama proses pembuatan kunci, Anda harus memberikan frasa sandi dan alamat email. Pastikan untuk mencatat nilai-nilai ini. Anda harus memberikan frasa sandi ketika Anda memasukkan detail kunci ke dalam prosedur ini AWS Secrets Manager nanti. Dan Anda harus memberikan alamat email yang sama untuk mengekspor kunci pribadi di langkah berikutnya.

1. Jalankan perintah berikut untuk mengekspor kunci pribadi. Untuk menggunakan perintah ini, ganti `private.pgp` dengan nama file untuk menyimpan blok kunci pribadi, dan `marymajor@example.com` dengan alamat email yang Anda gunakan saat Anda membuat key pair.

   ```
   gpg --output private.pgp --armor --export-secret-key marymajor@example.com
   ```

1. <a name="store-pgp-key-details"></a>Gunakan AWS Secrets Manager untuk menyimpan kunci PGP Anda.

   1. Masuk ke Konsol Manajemen AWS dan buka AWS Secrets Manager konsol di [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

   1. Pada panel navigasi kiri, pilih **Rahasia**. 

   1. Pada halaman **Rahasia**, pilih **Simpan rahasia baru**.

   1. Pada halaman **Pilih jenis rahasia**, untuk **jenis Rahasia**, pilih **Jenis rahasia lainnya**.

   1. Di bagian **pasangan kunci/Nilai**, pilih tab **kunci/Nilai**.
      + **Kunci** — Masukkan**PGPPrivateKey**.
**catatan**  
Anda harus memasukkan **PGPPrivateKey** string dengan tepat: jangan menambahkan spasi sebelum atau di antara karakter.
      + **nilai** — Tempelkan teks kunci pribadi Anda ke bidang nilai. Anda dapat menemukan teks kunci pribadi Anda dalam file (misalnya,`private.pgp`) yang Anda tentukan saat Anda mengekspor kunci Anda sebelumnya dalam prosedur ini. Kuncinya dimulai dengan `-----BEGIN PGP PRIVATE KEY BLOCK-----` dan diakhiri dengan`-----END PGP PRIVATE KEY BLOCK-----`.
**catatan**  
Pastikan bahwa blok teks hanya berisi kunci pribadi dan tidak mengandung kunci publik juga.

   1. Pilih **Tambahkan baris** dan di bagian **pasangan kunci/Nilai**, pilih tab **kunci/Nilai**.
      + **Kunci** — Masukkan**PGPPassphrase**.
**catatan**  
Anda harus memasukkan **PGPPassphrase** string dengan tepat: jangan menambahkan spasi sebelum atau di antara karakter.
      + **value** — Masukkan kata sandi yang Anda gunakan saat membuat key pair PGP Anda.  
![\[\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/pgp-secrets-01.png)
**catatan**  
Anda dapat menambahkan hingga 3 set kunci dan frasa sandi. Untuk menambahkan set kedua, tambahkan dua baris baru, dan masukkan **PGPPrivateKey2** dan **PGPPassphrase2** untuk kunci, dan tempel di kunci pribadi dan frasa sandi lainnya. Untuk menambahkan set ketiga, nilai kunci harus **PGPPrivateKey3** dan**PGPPassphrase3**.

   1. Pilih **Berikutnya**.

   1. Pada halaman **Konfigurasi rahasia**, masukkan nama dan deskripsi untuk rahasia Anda.
      + Jika Anda membuat kunci default, yaitu kunci yang dapat digunakan oleh pengguna Transfer Family, masukkan**aws/transfer/*server-id*/@pgp-default**. Ganti `server-id` dengan ID server yang berisi alur kerja yang memiliki langkah dekripsi.
      + Jika Anda membuat kunci untuk digunakan oleh pengguna Transfer Family tertentu, masukkan**aws/transfer/*server-id*/*user-name***. Ganti `server-id` dengan ID server yang berisi alur kerja yang memiliki langkah dekripsi, dan ganti `user-name` dengan nama pengguna yang menjalankan alur kerja. `user-name`Ini disimpan di penyedia identitas yang digunakan server Transfer Family.

   1. Pilih **Berikutnya** dan terima default pada halaman **Konfigurasi** rotasi. Lalu pilih **Selanjutnya**.

   1. Pada halaman **Review**, pilih **Store** untuk membuat dan menyimpan rahasia.

Tangkapan layar berikut menunjukkan detail untuk pengguna **marymajor** untuk server Transfer Family tertentu. Contoh ini menunjukkan tiga kunci dan frasa sandi yang sesuai.

![\[\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/pgp-secrets-02.png)


# Klien PGP yang didukung
<a name="pgp-key-clients"></a>

Klien berikut telah diuji dengan Transfer Family dan dapat digunakan untuk menghasilkan kunci PGP, dan untuk mengenkripsi file yang ingin Anda dekripsi dengan alur kerja.
+ **GPG4win** \$1 Kleopatra. 
**catatan**  
Saat Anda memilih **Sign/Encrypt Files**, pastikan untuk menghapus pilihan untuk **Sign as**: saat ini kami tidak mendukung penandatanganan untuk file terenkripsi.  

![\[\]](http://docs.aws.amazon.com/id_id/transfer/latest/userguide/images/workflows-step-decrypt-kleopatra.png)

Jika Anda menandatangani file terenkripsi dan mencoba mengunggahnya ke server Transfer Family dengan alur kerja dekripsi, Anda menerima kesalahan berikut:  

  ```
  Encrypted file with signed message unsupported
  ```
+ Versi **GnuPG** utama: 2.4, 2.3, 2.2, 2.0, dan 1.4.

Perhatikan bahwa klien PGP lain mungkin bekerja juga, tetapi hanya klien yang disebutkan di sini yang telah diuji dengan Transfer Family.

# Identitas dan manajemen akses untuk AWS Transfer Family
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) adalah Layanan AWS yang membantu administrator mengontrol akses ke AWS sumber daya dengan aman. Administrator IAM mengontrol siapa yang dapat *diautentikasi* (masuk) dan *diberi wewenang* (memiliki izin) untuk menggunakan sumber daya. AWS Transfer Family IAM adalah Layanan AWS yang dapat Anda gunakan tanpa biaya tambahan.

**Topics**
+ [Audiens](#security_iam_audience)
+ [Mengautentikasi dengan identitas](#security_iam_authentication)
+ [Mengelola akses menggunakan kebijakan](#security_iam_access-manage)
+ [Bagaimana AWS Transfer Family bekerja dengan IAM](security_iam_service-with-iam.md)
+ [AWS Transfer Family contoh kebijakan berbasis identitas](security_iam_id-based-policy-examples.md)
+ [AWS Transfer Family contoh kebijakan berbasis tag](security_iam_tag-based-policy-examples.md)
+ [Memecahkan masalah AWS Transfer Family identitas dan akses](security_iam_troubleshoot.md)
+ [Kunci kondisi IAM untuk tata kelola organisasi](transfer-condition-keys.md)

## Audiens
<a name="security_iam_audience"></a>

Cara Anda menggunakan AWS Identity and Access Management (IAM) berbeda berdasarkan peran Anda:
+ **Pengguna layanan** - minta izin dari administrator Anda jika Anda tidak dapat mengakses fitur (lihat [Memecahkan masalah AWS Transfer Family identitas dan akses](security_iam_troubleshoot.md))
+ **Administrator layanan** - tentukan akses pengguna dan mengirimkan permintaan izin (lihat [Bagaimana AWS Transfer Family bekerja dengan IAM](security_iam_service-with-iam.md))
+ **Administrator IAM** - tulis kebijakan untuk mengelola akses (lihat [AWS Transfer Family contoh kebijakan berbasis identitas](security_iam_id-based-policy-examples.md))

## Mengautentikasi dengan identitas
<a name="security_iam_authentication"></a>

Otentikasi adalah cara Anda masuk AWS menggunakan kredensyal identitas Anda. Anda harus diautentikasi sebagai Pengguna root akun AWS, pengguna IAM, atau dengan mengasumsikan peran IAM.

Anda dapat masuk sebagai identitas federasi menggunakan kredensyal dari sumber identitas seperti AWS IAM Identity Center (Pusat Identitas IAM), autentikasi masuk tunggal, atau kredensyal. Google/Facebook Untuk informasi selengkapnya tentang cara masuk, lihat [Cara masuk ke Akun AWS Anda](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) dalam *Panduan Pengguna AWS Sign-In *.

Untuk akses terprogram, AWS sediakan SDK dan CLI untuk menandatangani permintaan secara kriptografis. Untuk informasi selengkapnya, lihat [AWS Signature Version 4 untuk permintaan API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) dalam *Panduan Pengguna IAM*.

### Pengguna root akun AWS
<a name="security_iam_authentication-rootuser"></a>

 Saat Anda membuat Akun AWS, Anda mulai dengan satu identitas masuk yang disebut *pengguna Akun AWS root* yang memiliki akses lengkap ke semua Layanan AWS dan sumber daya. Kami sangat menyarankan agar Anda tidak menggunakan pengguna root untuk tugas sehari-hari. Untuk tugas yang memerlukan kredensial pengguna root, lihat [Tugas yang memerlukan kredensial pengguna root](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) dalam *Panduan Pengguna IAM*. 

### Identitas terfederasi
<a name="security_iam_authentication-federateduser"></a>

Sebagai praktik terbaik, mewajibkan pengguna manusia untuk menggunakan federasi dengan penyedia identitas untuk mengakses Layanan AWS menggunakan kredensyal sementara.

*Identitas federasi* adalah pengguna dari direktori perusahaan Anda, penyedia identitas web, atau Directory Service yang mengakses Layanan AWS menggunakan kredensyal dari sumber identitas. Identitas terfederasi mengambil peran yang memberikan kredensial sementara.

Untuk manajemen akses terpusat, kami menyarankan AWS IAM Identity Center. Untuk informasi selengkapnya, lihat [Apa itu Pusat Identitas IAM?](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) dalam *Panduan Pengguna AWS IAM Identity Center *.

### Pengguna dan grup IAM
<a name="security_iam_authentication-iamuser"></a>

*[Pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* adalah identitas dengan izin khusus untuk satu orang atau aplikasi. Sebaiknya gunakan kredensial sementara alih-alih pengguna IAM dengan kredensial jangka panjang. Untuk informasi selengkapnya, lihat [Mewajibkan pengguna manusia untuk menggunakan federasi dengan penyedia identitas untuk mengakses AWS menggunakan kredensyal sementara](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) di Panduan Pengguna *IAM*.

[https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) menentukan kumpulan pengguna IAM dan mempermudah pengelolaan izin untuk pengguna dalam jumlah besar. Untuk mempelajari selengkapnya, lihat [Kasus penggunaan untuk pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) dalam *Panduan Pengguna IAM*.

### Peran IAM
<a name="security_iam_authentication-iamrole"></a>

*[Peran IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* adalah identitas dengan izin khusus yang menyediakan kredensial sementara. Anda dapat mengambil peran dengan [beralih dari pengguna ke peran IAM (konsol)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) atau dengan memanggil operasi AWS CLI atau AWS API. Untuk informasi selengkapnya, lihat [Metode untuk mengambil peran](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) dalam *Panduan Pengguna IAM*.

Peran IAM berguna untuk akses pengguna terfederasi, izin pengguna IAM sementara, akses lintas akun, akses lintas layanan, dan aplikasi yang berjalan di Amazon EC2. Untuk informasi selengkapnya, lihat [Akses sumber daya lintas akun di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) dalam *Panduan Pengguna IAM*.

## Mengelola akses menggunakan kebijakan
<a name="security_iam_access-manage"></a>

Anda mengontrol akses AWS dengan membuat kebijakan dan melampirkannya ke AWS identitas atau sumber daya. Kebijakan menentukan izin saat dikaitkan dengan identitas atau sumber daya. AWS mengevaluasi kebijakan ini ketika kepala sekolah membuat permintaan. Sebagian besar kebijakan disimpan AWS sebagai dokumen JSON. Untuk informasi selengkapnya tentang dokumen kebijakan JSON, lihat [Gambaran umum kebijakan JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json) dalam *Panduan Pengguna IAM*.

Menggunakan kebijakan, administrator menentukan siapa yang memiliki akses ke apa dengan mendefinisikan **principal** mana yang dapat melakukan **tindakan** pada **sumber daya** apa, dan dalam **kondisi** apa.

Secara default, pengguna dan peran tidak memiliki izin. Administrator IAM membuat kebijakan IAM dan menambahkannya ke peran, yang kemudian dapat diambil oleh pengguna. Kebijakan IAM mendefinisikan izin terlepas dari metode yang Anda gunakan untuk melakukan operasinya.

### Kebijakan berbasis identitas
<a name="security_iam_access-manage-id-based-policies"></a>

Kebijakan berbasis identitas adalah dokumen kebijakan izin JSON yang Anda lampirkan ke identitas (pengguna, grup, atau peran). Kebijakan ini mengontrol tindakan apa yang bisa dilakukan oleh identitas tersebut, terhadap sumber daya yang mana, dan dalam kondisi apa. Untuk mempelajari cara membuat kebijakan berbasis identitas, lihat [Tentukan izin IAM kustom dengan kebijakan yang dikelola pelanggan](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) dalam *Panduan Pengguna IAM*.

Kebijakan berbasis identitas dapat berupa *kebijakan inline* (disematkan langsung ke dalam satu identitas) atau *kebijakan terkelola* (kebijakan mandiri yang dilampirkan pada banyak identitas). Untuk mempelajari cara memilih antara kebijakan terkelola dan kebijakan inline, lihat [Pilih antara kebijakan terkelola dan kebijakan inline](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html) dalam *Panduan Pengguna IAM*.

### Kebijakan berbasis sumber daya
<a name="security_iam_access-manage-resource-based-policies"></a>

Kebijakan berbasis sumber daya adalah dokumen kebijakan JSON yang Anda lampirkan ke sumber daya. Contohnya termasuk *kebijakan kepercayaan peran IAM* dan *kebijakan bucket* Amazon S3. Dalam layanan yang mendukung kebijakan berbasis sumber daya, administrator layanan dapat menggunakannya untuk mengontrol akses ke sumber daya tertentu. Anda harus [menentukan principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) dalam kebijakan berbasis sumber daya.

Kebijakan berbasis sumber daya merupakan kebijakan inline yang terletak di layanan tersebut. Anda tidak dapat menggunakan kebijakan AWS terkelola dari IAM dalam kebijakan berbasis sumber daya.

### Daftar kontrol akses (ACLs)
<a name="security_iam_access-manage-acl"></a>

Access control lists (ACLs) mengontrol prinsipal mana (anggota akun, pengguna, atau peran) yang memiliki izin untuk mengakses sumber daya. ACLs mirip dengan kebijakan berbasis sumber daya, meskipun mereka tidak menggunakan format dokumen kebijakan JSON.

Amazon S3, AWS WAF, dan Amazon VPC adalah contoh layanan yang mendukung. ACLs Untuk mempelajari selengkapnya ACLs, lihat [Ringkasan daftar kontrol akses (ACL)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) di *Panduan Pengembang Layanan Penyimpanan Sederhana Amazon*.

### Jenis-jenis kebijakan lain
<a name="security_iam_access-manage-other-policies"></a>

AWS mendukung jenis kebijakan tambahan yang dapat menetapkan izin maksimum yang diberikan oleh jenis kebijakan yang lebih umum:
+ **Batasan izin** – Menetapkan izin maksimum yang dapat diberikan oleh kebijakan berbasis identitas kepada entitas IAM. Untuk informasi selengkapnya, lihat [Batasan izin untuk entitas IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) dalam *Panduan Pengguna IAM*.
+ **Kebijakan kontrol layanan (SCPs)** — Tentukan izin maksimum untuk organisasi atau unit organisasi di AWS Organizations. Untuk informasi selengkapnya, lihat [Kebijakan kontrol layanan](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) dalam *Panduan Pengguna AWS Organizations *.
+ **Kebijakan kontrol sumber daya (RCPs)** — Tetapkan izin maksimum yang tersedia untuk sumber daya di akun Anda. Untuk informasi selengkapnya, lihat [Kebijakan kontrol sumber daya (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) di *Panduan AWS Organizations Pengguna*.
+ **Kebijakan sesi** – Kebijakan lanjutan yang diteruskan sebagai parameter saat membuat sesi sementara untuk peran atau pengguna terfederasi. Untuk informasi selengkapnya, lihat [Kebijakan sesi](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) dalam *Panduan Pengguna IAM*.

### Berbagai jenis kebijakan
<a name="security_iam_access-manage-multiple-policies"></a>

Ketika beberapa jenis kebijakan berlaku pada suatu permintaan, izin yang dihasilkan lebih rumit untuk dipahami. Untuk mempelajari cara AWS menentukan apakah akan mengizinkan permintaan saat beberapa jenis kebijakan terlibat, lihat [Logika evaluasi kebijakan](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html) di *Panduan Pengguna IAM*.

# Bagaimana AWS Transfer Family bekerja dengan IAM
<a name="security_iam_service-with-iam"></a>

Sebelum Anda menggunakan AWS Identity and Access Management (IAM) untuk mengelola akses AWS Transfer Family, Anda harus memahami fitur IAM apa yang tersedia untuk digunakan. AWS Transfer Family Untuk mendapatkan pandangan tingkat tinggi tentang bagaimana AWS Transfer Family dan AWS layanan lain bekerja dengan IAM, lihat [AWS layanan yang bekerja dengan IAM di Panduan Pengguna *IAM*](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html).

**Topics**
+ [AWS Transfer Family kebijakan berbasis identitas](#security_iam_service-with-iam-id-based-policies)
+ [AWS Transfer Family kebijakan berbasis sumber daya](#security_iam_service-with-iam-resource-based-policies)
+ [Otorisasi berdasarkan tag AWS Transfer Family](#security_iam_service-with-iam-tags)
+ [AWS Transfer Family Peran IAM](#security_iam_service-with-iam-roles)

## AWS Transfer Family kebijakan berbasis identitas
<a name="security_iam_service-with-iam-id-based-policies"></a>

Dengan kebijakan berbasis identitas IAM, Anda dapat menentukan tindakan dan sumber daya yang diizinkan atau ditolak, serta kondisi di mana tindakan tersebut diperbolehkan atau ditolak. AWS Transfer Family mendukung tindakan tertentu, sumber daya, dan kunci syarat. *Untuk mempelajari semua elemen yang Anda gunakan dalam kebijakan JSON, lihat [referensi elemen kebijakan IAM JSON di Panduan](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) Pengguna.AWS Identity and Access Management *

### Tindakan
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, di mana **utama** dapat melakukan **tindakan** pada **sumber daya**, dan dalam **kondisi apa**.

Elemen `Action` dari kebijakan JSON menjelaskan tindakan yang dapat Anda gunakan untuk mengizinkan atau menolak akses dalam sebuah kebijakan. Sertakan tindakan dalam kebijakan untuk memberikan izin untuk melakukan operasi terkait.

Tindakan kebijakan AWS Transfer Family menggunakan awalan berikut sebelum tindakan:`transfer:`. Misalnya, untuk memberikan izin kepada seseorang untuk membuat server, dengan operasi Transfer Family `CreateServer` API, Anda menyertakan `transfer:CreateServer` tindakan tersebut dalam kebijakan mereka. Pernyataan kebijakan harus menyertakan elemen `Action` atau `NotAction`. AWS Transfer Family menentukan serangkaian tindakan sendiri yang menjelaskan tugas yang dapat Anda lakukan dengan layanan ini.

Untuk menetapkan beberapa tindakan dalam satu pernyataan, pisahkan dengan koma seperti berikut.

```
"Action": [
      "transfer:action1",
      "transfer:action2"
```

Anda juga dapat menentukan beberapa tindakan menggunakan wildcard (\$1). Misalnya, untuk menentukan semua tindakan yang dimulai dengan kata `Describe`, sertakan tindakan berikut.

```
"Action": "transfer:Describe*"
```

Untuk melihat daftar AWS Transfer Family tindakan, lihat [Tindakan yang ditentukan oleh AWS Transfer Family](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awstransferfamily.html#awstransferfamily-actions-as-permissions) dalam *Referensi Otorisasi Layanan*.

### Sumber daya
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, di mana **utama** dapat melakukan **tindakan** pada **sumber daya**, dan dalam **kondisi apa**.

Elemen kebijakan JSON `Resource` menentukan objek yang menjadi target penerapan tindakan. Praktik terbaiknya, tentukan sumber daya menggunakan [Amazon Resource Name (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Untuk tindakan yang tidak mendukung izin di tingkat sumber daya, gunakan wildcard (\$1) untuk menunjukkan bahwa pernyataan tersebut berlaku untuk semua sumber daya.

```
"Resource": "*"
```

Sumber daya server Transfer Family memiliki ARN berikut.

```
arn:aws:transfer:${Region}:${Account}:server/${ServerId}
```

Misalnya, untuk menentukan server `s-01234567890abcdef` Transfer Family dalam pernyataan Anda, gunakan ARN berikut.

```
"Resource": "arn:aws:transfer:us-east-1:123456789012:server/s-01234567890abcdef"
```

Untuk informasi selengkapnya tentang format ARNs, lihat [Amazon Resource Names (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) di *Referensi Otorisasi Layanan*, atau [IAM ARNs](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns) di Panduan Pengguna *IAM*.

Untuk menentukan semua instance milik akun tertentu, gunakan wildcard (\$1).

```
"Resource": "arn:aws:transfer:us-east-1:123456789012:server/*"
```

Beberapa AWS Transfer Family tindakan dilakukan pada beberapa sumber daya, seperti yang digunakan dalam kebijakan IAM. Dalam kasus tersebut, Anda harus menggunakan wildcard (\$1).

```
"Resource": "arn:aws:transfer:*:123456789012:server/*"
```

Dalam beberapa kasus, Anda perlu menentukan lebih dari satu jenis sumber daya, misalnya, jika Anda membuat kebijakan yang memungkinkan akses ke server dan pengguna Transfer Family. Untuk menentukan beberapa sumber daya dalam satu pernyataan, pisahkan ARNs dengan koma.

```
"Resource": [
      "resource1",
      "resource2"
            ]
```

Untuk melihat daftar AWS Transfer Family sumber daya, lihat [Jenis sumber daya yang ditentukan oleh AWS Transfer Family](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awstransferfamily.html#awstransferfamily-resources-for-iam-policies) dalam *Referensi Otorisasi Layanan*.

### Kunci syarat
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

Administrator dapat menggunakan kebijakan AWS JSON untuk menentukan siapa yang memiliki akses ke apa. Yaitu, **principal** dapat melakukan **tindakan** pada suatu **sumber daya**, dan dalam suatu **syarat**.

Elemen `Condition` menentukan ketika pernyataan dieksekusi berdasarkan kriteria yang ditetapkan. Anda dapat membuat ekspresi bersyarat yang menggunakan [operator kondisi](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), misalnya sama dengan atau kurang dari, untuk mencocokkan kondisi dalam kebijakan dengan nilai-nilai yang diminta. Untuk melihat semua kunci kondisi AWS global, lihat [kunci konteks kondisi AWS global](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) di *Panduan Pengguna IAM*.

AWS Transfer Family mendefinisikan kumpulan kunci kondisinya sendiri dan juga mendukung penggunaan beberapa kunci kondisi global. Untuk melihat daftar kunci AWS Transfer Family kondisi, lihat [Kunci kondisi untuk AWS Transfer Family](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awstransferfamily.html#awstransferfamily-policy-keys) dalam *Referensi Otorisasi Layanan*.

### Contoh
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>

Untuk melihat contoh kebijakan AWS Transfer Family berbasis identitas, lihat. [AWS Transfer Family contoh kebijakan berbasis identitas](security_iam_id-based-policy-examples.md) Untuk kebijakan IAM khusus titik akhir VPC, lihat. [Membatasi akses endpoint VPC untuk server Transfer Family](create-server-in-vpc.md#limit-vpc-endpoint-access)

## AWS Transfer Family kebijakan berbasis sumber daya
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Kebijakan berbasis sumber daya adalah dokumen kebijakan JSON yang menentukan tindakan apa yang dapat dilakukan oleh prinsipal tertentu pada AWS Transfer Family sumber daya dan dalam kondisi apa. Amazon S3 mendukung kebijakan izin berbasis sumber daya untuk Amazon S3. *buckets* Kebijakan berbasis sumber daya mengizinkan Anda memberikan izin penggunaan ke akun lain berdasarkan penggunaan sumber daya. Anda juga dapat menggunakan kebijakan berbasis sumber daya untuk mengizinkan AWS layanan mengakses Amazon S3 Anda. *buckets*

Untuk mengaktifkan akses lintas akun, Anda dapat menentukan seluruh akun atau entitas IAM di akun lain sebagai [prinsipal di kebijakan berbasis sumber daya](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html). Menambahkan principal akun silang ke kebijakan berbasis sumber daya hanya setengah dari membangun hubungan kepercayaan. Ketika prinsipal dan sumber daya berada di AWS akun yang berbeda, Anda juga harus memberikan izin entitas utama untuk mengakses sumber daya. Berikan izin dengan melampirkan kebijakan berbasis identitas ke entitas tersebut. Namun, jika kebijakan berbasis sumber daya memberikan akses ke principal dalam akun yang sama, tidak diperlukan kebijakan berbasis identitas tambahan. *Untuk informasi selengkapnya, [lihat Perbedaan peran IAM dari kebijakan berbasis sumber daya](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html) di Panduan Pengguna.AWS Identity and Access Management *

Layanan Amazon S3 hanya mendukung satu jenis kebijakan berbasis sumber daya yang disebut **bucket*kebijakan*, yang dilampirkan ke file. *bucket* Kebijakan ini menentukan entitas utama (akun, pengguna, peran, dan pengguna gabungan) yang dapat melakukan tindakan pada objek.

### Contoh
<a name="security_iam_service-with-iam-resource-based-policies-examples"></a>



Untuk melihat contoh kebijakan AWS Transfer Family berbasis sumber daya, lihat. [AWS Transfer Family contoh kebijakan berbasis tag](security_iam_tag-based-policy-examples.md)

## Otorisasi berdasarkan tag AWS Transfer Family
<a name="security_iam_service-with-iam-tags"></a>

Anda dapat melampirkan tag ke AWS Transfer Family sumber daya atau meneruskan tag dalam permintaan AWS Transfer Family. Untuk mengendalikan akses berdasarkan tanda, berikan informasi tentang tanda di [elemen kondisi](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) dari kebijakan menggunakan kunci kondisi `transfer:ResourceTag/key-name`, `aws:RequestTag/key-name`, atau `aws:TagKeys`. Untuk informasi tentang cara menggunakan tag untuk mengontrol akses ke AWS Transfer Family sumber daya, lihat[AWS Transfer Family contoh kebijakan berbasis tag](security_iam_tag-based-policy-examples.md).

## AWS Transfer Family Peran IAM
<a name="security_iam_service-with-iam-roles"></a>

[Peran IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) adalah entitas dalam AWS akun Anda yang memiliki izin tertentu.

### Menggunakan kredensi sementara dengan AWS Transfer Family
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

Anda dapat menggunakan kredensial sementara untuk masuk dengan gabungan, menjalankan IAM role, atau menjalankan peran lintas akun. Anda memperoleh kredensyal keamanan sementara dengan memanggil operasi AWS STS API seperti [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)atau. [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html)

AWS Transfer Family mendukung menggunakan kredensial sementara.

# AWS Transfer Family contoh kebijakan berbasis identitas
<a name="security_iam_id-based-policy-examples"></a>

Secara default, pengguna dan peran IAM tidak memiliki izin untuk membuat atau memodifikasi sumber daya AWS Transfer Family . Mereka juga tidak dapat melakukan tugas menggunakan Konsol Manajemen AWS, AWS CLI, atau AWS API. Administrator IAM harus membuat kebijakan IAM yang memberikan izin kepada pengguna dan peran untuk melakukan operasi API tertentu pada sumber daya yang diperlukan. Administrator kemudian harus melampirkan kebijakan tersebut ke pengguna IAM atau grup yang memerlukan izin tersebut.

*Untuk mempelajari cara membuat kebijakan berbasis identitas IAM menggunakan contoh dokumen kebijakan JSON ini, lihat [Membuat kebijakan pada tab JSON di Panduan Pengguna](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor).AWS Identity and Access Management *

**Topics**
+ [Praktik terbaik kebijakan](#security_iam_service-with-iam-policy-best-practices)
+ [Menggunakan AWS Transfer Family konsol](#security_iam_id-based-policy-examples-console)
+ [Izinkan para pengguna untuk melihat izin mereka sendiri](#security_iam_id-based-policy-examples-view-own-permissions)

## Praktik terbaik kebijakan
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Kebijakan berbasis identitas menentukan apakah seseorang dapat membuat, mengakses, atau menghapus AWS Transfer Family sumber daya di akun Anda. Tindakan ini membuat Akun AWS Anda dikenai biaya. Ketika Anda membuat atau mengedit kebijakan berbasis identitas, ikuti panduan dan rekomendasi ini:
+ **Mulailah dengan kebijakan AWS terkelola dan beralih ke izin hak istimewa paling sedikit — Untuk mulai memberikan izin** kepada pengguna dan beban kerja Anda, gunakan *kebijakan AWS terkelola* yang memberikan izin untuk banyak kasus penggunaan umum. Mereka tersedia di Anda Akun AWS. Kami menyarankan Anda mengurangi izin lebih lanjut dengan menentukan kebijakan yang dikelola AWS pelanggan yang khusus untuk kasus penggunaan Anda. Untuk informasi selengkapnya, lihat [Kebijakan yang dikelola AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) atau [Kebijakan yang dikelola AWS untuk fungsi tugas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) dalam *Panduan Pengguna IAM*.
+ **Menerapkan izin dengan hak akses paling rendah** – Ketika Anda menetapkan izin dengan kebijakan IAM, hanya berikan izin yang diperlukan untuk melakukan tugas. Anda melakukannya dengan mendefinisikan tindakan yang dapat diambil pada sumber daya tertentu dalam kondisi tertentu, yang juga dikenal sebagai *izin dengan hak akses paling rendah*. Untuk informasi selengkapnya tentang cara menggunakan IAM untuk mengajukan izin, lihat [Kebijakan dan izin dalam IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) dalam *Panduan Pengguna IAM*.
+ **Gunakan kondisi dalam kebijakan IAM untuk membatasi akses lebih lanjut** – Anda dapat menambahkan suatu kondisi ke kebijakan Anda untuk membatasi akses ke tindakan dan sumber daya. Sebagai contoh, Anda dapat menulis kondisi kebijakan untuk menentukan bahwa semua permintaan harus dikirim menggunakan SSL. Anda juga dapat menggunakan ketentuan untuk memberikan akses ke tindakan layanan jika digunakan melalui yang spesifik Layanan AWS, seperti CloudFormation. Untuk informasi selengkapnya, lihat [Elemen kebijakan JSON IAM: Kondisi](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) dalam *Panduan Pengguna IAM*.
+ **Gunakan IAM Access Analyzer untuk memvalidasi kebijakan IAM Anda untuk memastikan izin yang aman dan fungsional** – IAM Access Analyzer memvalidasi kebijakan baru dan yang sudah ada sehingga kebijakan tersebut mematuhi bahasa kebijakan IAM (JSON) dan praktik terbaik IAM. IAM Access Analyzer menyediakan lebih dari 100 pemeriksaan kebijakan dan rekomendasi yang dapat ditindaklanjuti untuk membantu Anda membuat kebijakan yang aman dan fungsional. Untuk informasi selengkapnya, lihat [Validasi kebijakan dengan IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) dalam *Panduan Pengguna IAM*.
+ **Memerlukan otentikasi multi-faktor (MFA)** - Jika Anda memiliki skenario yang mengharuskan pengguna IAM atau pengguna root di Anda, Akun AWS aktifkan MFA untuk keamanan tambahan. Untuk meminta MFA ketika operasi API dipanggil, tambahkan kondisi MFA pada kebijakan Anda. Untuk informasi selengkapnya, lihat [Amankan akses API dengan MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) dalam *Panduan Pengguna IAM*.

Untuk informasi selengkapnya tentang praktik terbaik dalam IAM, lihat [Praktik terbaik keamanan di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) dalam *Panduan Pengguna IAM*.

## Menggunakan AWS Transfer Family konsol
<a name="security_iam_id-based-policy-examples-console"></a>

Untuk mengakses AWS Transfer Family konsol, Anda harus memiliki set izin minimum. Izin ini harus memungkinkan Anda untuk membuat daftar dan melihat detail tentang AWS Transfer Family sumber daya di AWS akun Anda. Jika Anda membuat kebijakan berbasis identitas yang lebih ketat daripada izin minimum yang diperlukan, konsol tersebut tidak akan berfungsi sebagaimana mestinya untuk entitas (pengguna IAM atau peran) dengan kebijakan tersebut. Untuk informasi selengkapnya, lihat [Menambahkan izin ke pengguna](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) di *Panduan AWS Identity and Access Management Pengguna*.

Anda tidak perlu mengizinkan izin konsol minimum untuk pengguna yang melakukan panggilan hanya ke AWS CLI atau AWS API. Sebagai alternatif, hanya izinkan akses ke tindakan yang cocok dengan operasi API yang sedang Anda coba lakukan.

## Izinkan para pengguna untuk melihat izin mereka sendiri
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

Contoh ini menunjukkan cara membuat kebijakan yang mengizinkan pengguna IAM melihat kebijakan inline dan terkelola yang dilampirkan ke identitas pengguna mereka. Kebijakan ini mencakup izin untuk menyelesaikan tindakan ini di konsol atau menggunakan API atau secara terprogram. AWS CLI AWS 

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

# AWS Transfer Family contoh kebijakan berbasis tag
<a name="security_iam_tag-based-policy-examples"></a>

Berikut ini adalah contoh cara mengontrol akses ke AWS Transfer Family sumber daya berdasarkan tag.

## Menggunakan tag untuk mengontrol akses ke AWS Transfer Family sumber daya
<a name="tag-access-control"></a>

Ketentuan dalam kebijakan IAM adalah bagian dari sintaks yang Anda gunakan untuk menentukan izin ke sumber daya. AWS Transfer Family Anda dapat mengontrol akses ke AWS Transfer Family sumber daya (seperti pengguna, server, peran, dan entitas lain) berdasarkan tag pada sumber daya tersebut. Tag adalah pasangan kunci-nilai. Untuk informasi selengkapnya tentang menandai sumber daya, lihat [Menandai AWS sumber daya](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) di. *Referensi Umum AWS* 

Di AWS Transfer Family, sumber daya dapat memiliki tag, dan beberapa tindakan dapat menyertakan tag. Saat membuat kebijakan IAM, Anda dapat menggunakan kunci syarat tanda berikut:
+ Pengguna mana yang dapat melakukan tindakan pada AWS Transfer Family sumber daya, berdasarkan tag yang dimiliki sumber daya.
+ Tag apa yang dapat diteruskan dalam permintaan tindakan.
+ Apakah kunci tag tertentu dapat digunakan dalam permintaan.

Dengan menggunakan kontrol akses berbasis tag, Anda dapat menerapkan kontrol yang lebih baik daripada di API level. Anda juga dapat menerapkan kontrol yang lebih dinamis daripada dengan menggunakan kontrol akses berbasis sumber daya. Anda dapat membuat kebijakan IAM yang mengizinkan atau menolak operasi berdasarkan tag yang disediakan dalam permintaan (tag permintaan). Anda juga dapat membuat kebijakan IAM berdasarkan tag pada sumber daya yang sedang dioperasikan (tag sumber daya). Secara umum, tag sumber daya adalah untuk tag yang sudah ada di sumber daya, tag permintaan digunakan saat Anda menambahkan tag atau menghapus tag dari sumber daya.

Untuk sintaks dan semantik lengkap kunci kondisi tag, lihat [Mengontrol akses ke AWS sumber daya menggunakan tag sumber daya di Panduan Pengguna](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html) *IAM*. Untuk detail tentang menentukan kebijakan IAM dengan API Gateway, lihat [Mengontrol akses ke API dengan izin IAM](https://docs.aws.amazon.com/apigateway/latest/developerguide/permissions.html) di Panduan Pengembang *API* Gateway.

### Contoh 1: Tolak tindakan berdasarkan tag sumber daya
<a name="transfer-deny-actions-resource-tag"></a>

Anda dapat menolak tindakan yang akan dilakukan pada sumber daya berdasarkan tag. Contoh kebijakan berikut menyangkal`TagResource`,`UntagResource`,`StartServer`,`StopServer`,`DescribeServer`, dan `DescribeUser` operasi jika sumber daya pengguna atau server ditandai dengan kunci `stage` dan nilainya. `prod`

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "transfer:TagResource",
                "transfer:UntagResource",
                "transfer:StartServer",
                "transfer:StopServer",
                "transfer:DescribeServer",
                "transfer:DescribeUser"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/stage": "prod"
                }
            }
        }
    ]
}
```

### Contoh 2: Izinkan tindakan berdasarkan tag sumber daya
<a name="transfer-allow-actions-resource-tag"></a>

Anda dapat mengizinkan tindakan dilakukan pada sumber daya berdasarkan tag. Contoh kebijakan berikut memungkinkan`TagResource`,`UntagResource`,`StartServer`,`StopServer`,`DescribeServer`, dan `DescribeUser` operasi jika sumber daya pengguna atau server ditandai dengan kunci `stage` dan nilainya`prod`.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "transfer:TagResource",
                "transfer:UntagResource",
                "transfer:StartServer",
                "transfer:StopServer",
                "transfer:DescribeServer",
                "transfer:DescribeUser"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:ResourceTag/stage": "prod"
                }
            }
        }
    ]
}
```

### Contoh 3: Tolak pembuatan pengguna atau server berdasarkan tag permintaan
<a name="transfer-deny-server-creation-tag"></a>

Contoh kebijakan berikut berisi dua pernyataan. Pernyataan pertama menyangkal `CreateServer` operasi pada semua sumber daya jika kunci pusat biaya untuk tag tidak memiliki nilai.

Pernyataan kedua menyangkal `CreateServer` operasi jika kunci pusat biaya untuk tag berisi nilai lain selain 1, 2 atau 3.

**catatan**  
Kebijakan ini memungkinkan pembuatan atau penghapusan sumber daya yang berisi kunci yang dipanggil `costcenter` dan nilai`1`,`2`, atau`3`.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        { 
            "Effect": "Deny",
            "Action": [
                "transfer:CreateServer"
            ],
            "Resource": [
                "*"
            ],
            "Condition": {
                "Null":  {
                    "aws:RequestTag/costcenter": "true"
                }
            }
        },
        {
            "Effect": "Deny",
            "Action": "transfer:CreateServer",
            "Resource": [
                "*"
            ],
            "Condition": {
                "ForAnyValue:StringNotEquals": {
                    "aws:RequestTag/costcenter": [
                        "1",
                        "2",
                        "3"
                    ]
                }
            }
        }           
    ]
}
```

# Memecahkan masalah AWS Transfer Family identitas dan akses
<a name="security_iam_troubleshoot"></a>

Gunakan informasi berikut untuk membantu Anda mendiagnosis dan memperbaiki masalah umum yang mungkin Anda temui saat bekerja dengan AWS Transfer Family dan IAM.

**Topics**
+ [Saya tidak berwenang untuk melakukan tindakan di AWS Transfer Family](#security_iam_troubleshoot-no-permissions)
+ [Saya tidak berwenang untuk melakukan iam: PassRole](#security_iam_troubleshoot-passrole)
+ [Saya ingin mengizinkan orang di luar AWS akun saya untuk mengakses AWS Transfer Family sumber daya saya](#security_iam_troubleshoot-cross-account-access)

## Saya tidak berwenang untuk melakukan tindakan di AWS Transfer Family
<a name="security_iam_troubleshoot-no-permissions"></a>

Jika Konsol Manajemen AWS memberitahu Anda bahwa Anda tidak berwenang untuk melakukan tindakan, maka Anda harus menghubungi administrator Anda untuk bantuan. Administrator Anda adalah orang yang memberi Anda kredensial masuk.

Contoh kesalahan berikut terjadi ketika pengguna `mateojackson` IAM mencoba menggunakan konsol untuk melihat detail tentang *widget* tetapi tidak memiliki `transfer:GetWidget` izin.

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: transfer:GetWidget on resource: my-example-widget
```

Dalam hal ini, Mateo meminta administratornya untuk memperbarui kebijakannya untuk mengizinkan dia mengakses sumber daya `my-example-widget` menggunakan tindakan `transfer;:GetWidget`.

## Saya tidak berwenang untuk melakukan iam: PassRole
<a name="security_iam_troubleshoot-passrole"></a>

Jika Anda menerima kesalahan yang tidak diizinkan untuk melakukan `iam:PassRole` tindakan, kebijakan Anda harus diperbarui agar Anda dapat meneruskan peran AWS Transfer Family.

Beberapa Layanan AWS memungkinkan Anda untuk meneruskan peran yang ada ke layanan tersebut alih-alih membuat peran layanan baru atau peran terkait layanan. Untuk melakukannya, Anda harus memiliki izin untuk meneruskan peran ke layanan.

Contoh kesalahan berikut terjadi ketika pengguna IAM bernama `marymajor` mencoba menggunakan konsol tersebut untuk melakukan tindakan di AWS Transfer Family. Namun, tindakan tersebut memerlukan layanan untuk mendapatkan izin yang diberikan oleh peran layanan. Mary tidak memiliki izin untuk meneruskan peran tersebut pada layanan.

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

Dalam kasus ini, kebijakan Mary harus diperbarui agar dia mendapatkan izin untuk melakukan tindakan `iam:PassRole` tersebut.

Jika Anda memerlukan bantuan, hubungi AWS administrator Anda. Administrator Anda adalah orang yang memberi Anda kredensial masuk.

Kebijakan contoh berikut berisi izin untuk meneruskan peran AWS Transfer Family. Ganti **123456789012** dengan ID akun AWS Anda dan **MyTransferRole** dengan nama peran IAM Anda yang sebenarnya.

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      { "Action": "iam:PassRole",
        "Resource": "arn:aws:iam::123456789012:role/MyTransferRole",
        "Effect": "Allow"
      } 
   ]
}
```

## Saya ingin mengizinkan orang di luar AWS akun saya untuk mengakses AWS Transfer Family sumber daya saya
<a name="security_iam_troubleshoot-cross-account-access"></a>

Anda dapat membuat peran yang dapat digunakan pengguna di akun lain atau orang-orang di luar organisasi Anda untuk mengakses sumber daya Anda. Anda dapat menentukan siapa saja yang dipercaya untuk mengambil peran tersebut. Untuk layanan yang mendukung kebijakan berbasis sumber daya atau daftar kontrol akses (ACLs), Anda dapat menggunakan kebijakan tersebut untuk memberi orang akses ke sumber daya Anda.

Untuk mempelajari selengkapnya, periksa referensi berikut:
+ Untuk mempelajari apakah AWS Transfer Family mendukung fitur ini, lihat[Bagaimana AWS Transfer Family bekerja dengan IAM](security_iam_service-with-iam.md).
+ Untuk mempelajari cara menyediakan akses ke sumber daya Anda di seluruh sumber daya Akun AWS yang Anda miliki, lihat [Menyediakan akses ke pengguna IAM di pengguna lain Akun AWS yang Anda miliki](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html) di *Panduan Pengguna IAM*.
+ Untuk mempelajari cara menyediakan akses ke sumber daya Anda kepada pihak ketiga Akun AWS, lihat [Menyediakan akses yang Akun AWS dimiliki oleh pihak ketiga](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html) dalam *Panduan Pengguna IAM*.
+ Untuk mempelajari cara memberikan akses melalui federasi identitas, lihat [Menyediakan akses ke pengguna terautentikasi eksternal (federasi identitas)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) dalam *Panduan Pengguna IAM*.
+ *Untuk mempelajari perbedaan antara menggunakan peran dan kebijakan berbasis sumber daya untuk akses lintas akun, lihat [Akses sumber daya lintas akun di IAM di Panduan Pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html).*

# Kunci kondisi IAM untuk tata kelola organisasi
<a name="transfer-condition-keys"></a>

AWS Transfer Family menyediakan kunci kondisi IAM yang memungkinkan Anda membatasi konfigurasi sumber daya dalam kebijakan IAM apa pun. Kunci kondisi ini dapat digunakan dalam kebijakan berbasis identitas yang dilampirkan pada pengguna atau peran, atau Kebijakan Kontrol Layanan (SCPs) untuk tata kelola organisasi.

Kebijakan Kontrol Layanan adalah kebijakan IAM yang berlaku untuk seluruh AWS organisasi, menyediakan pagar pembatas pencegahan di beberapa akun. Saat digunakan SCPs, kunci kondisi ini membantu menegakkan persyaratan keamanan dan kepatuhan di seluruh organisasi.

**Lihat juga**
+ [Tindakan, sumber daya, dan kunci kondisi untuk Transfer Family](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awstransferfamily.html)
+ [Kebijakan kontrol layanan (SCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)
+ Video yang menjelaskan cara menegakkan pagar pembatas preventif menggunakan kebijakan kontrol layanan  
[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/mEO05mmbSms/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/mEO05mmbSms)

## Kunci kondisi yang tersedia
<a name="scp-condition-keys"></a>

AWS Transfer Family mendukung kunci kondisi berikut untuk digunakan dalam kebijakan IAM:

`transfer:RequestServerEndpointType`  
Membatasi pembuatan dan pembaruan server berdasarkan jenis endpoint (PUBLIC, VPC, VPC\$1ENDPOINT). Umumnya digunakan untuk mencegah titik akhir yang menghadap publik.

`transfer:RequestServerProtocols`  
Membatasi pembuatan dan pembaruan server berdasarkan protokol yang didukung (SFTP, FTPS, FTP,). AS2

`transfer:RequestServerDomain`  
Membatasi pembuatan server berdasarkan jenis domain (S3, EFS).

`transfer:RequestConnectorProtocol`  
Membatasi pembuatan konektor berdasarkan protokol (AS2, SFTP).

## Tindakan yang didukung
<a name="scp-supported-actions"></a>

Kunci kondisi dapat diterapkan pada AWS Transfer Family tindakan berikut:
+ `CreateServer`: Mendukung`RequestServerEndpointType`,`RequestServerProtocols`, dan tombol `RequestServerDomain` kondisi
+ `UpdateServer`: Mendukung `RequestServerEndpointType` dan tombol `RequestServerProtocols` kondisi
+ `CreateConnector`: Mendukung kunci `RequestConnectorProtocol` kondisi

## Contoh kebijakan SCP
<a name="scp-example-policy"></a>

Contoh SCP berikut mencegah pembuatan AWS Transfer Family server publik di seluruh organisasi Anda:

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
        "Sid": "DenyPublicTransferServers",
        "Effect": "Deny",
        "Action": ["transfer:CreateServer", "transfer:UpdateServer"],
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "transfer:RequestServerEndpointType": "PUBLIC"
            }
        }
    }]
}
```

# Validasi kepatuhan untuk AWS Transfer Family
<a name="transfer-compliance"></a>

Auditor pihak ketiga menilai keamanan dan kepatuhan AWS Transfer Family sebagai bagian dari beberapa program AWS kepatuhan. Hal ini mencakup SOC, PCI, HIPAA, dan lainnya. Untuk daftar lengkapnya, lihat [AWS Layanan dalam Lingkup menurut Program Kepatuhan](https://aws.amazon.com/compliance/services-in-scope).

Untuk daftar AWS layanan dalam lingkup program kepatuhan tertentu, lihat [AWS layanan dalam lingkup oleh program kepatuhan](https://aws.amazon.com/compliance/services-in-scope/). Untuk informasi umum, lihat [Program kepatuhan AWS](https://aws.amazon.com/compliance/programs/).

Anda dapat mengunduh laporan audit pihak ketiga menggunakan AWS Artifact. Untuk informasi selengkapnya, lihat [Mengunduh laporan di AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html).

Tanggung jawab kepatuhan Anda saat menggunakan AWS Transfer Family ditentukan oleh sensitivitas data Anda, tujuan kepatuhan perusahaan Anda, dan hukum dan peraturan yang berlaku. AWS menyediakan sumber daya berikut untuk membantu kepatuhan:
+ [Panduan memulai cepat keamanan dan kepatuhan — Panduan](https://aws.amazon.com/quickstart/?awsf.quickstart-homepage-filter=categories%23security-identity-compliance) penerapan ini membahas pertimbangan arsitektur dan memberikan langkah-langkah untuk menerapkan lingkungan dasar yang berfokus pada keamanan dan kepatuhan. AWS
+ [Arsitektur untuk whitepaper keamanan dan kepatuhan HIPAA - Whitepaper](https://docs.aws.amazon.com/whitepapers/latest/architecting-hipaa-security-and-compliance-on-aws/introduction.html) ini menjelaskan bagaimana perusahaan dapat menggunakan untuk membuat aplikasi yang sesuai dengan HIPAA. AWS 
+ [Sumber daya kepatuhan AWS](https://aws.amazon.com/compliance/resources/) – Kumpulan buku kerja dan panduan ini mungkin berlaku untuk industri dan lokasi Anda.
+ [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) AWS Layanan ini menilai seberapa baik konfigurasi sumber daya Anda mematuhi praktik internal, pedoman industri, dan peraturan.
+ [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html)— AWS Layanan ini memberikan pandangan komprehensif tentang keadaan keamanan Anda di dalamnya AWS yang membantu Anda memeriksa kepatuhan Anda terhadap standar industri keamanan dan praktik terbaik.

# Ketahanan di AWS Transfer Family
<a name="disaster-recovery-resiliency"></a>

Infrastruktur AWS global dibangun di sekitar AWS Wilayah dan Zona Ketersediaan. AWS Wilayah menyediakan beberapa Availability Zone yang terpisah secara fisik dan terisolasi, yang terhubung dengan latensi rendah, throughput tinggi, dan jaringan yang sangat redundan. Dengan Zona Ketersediaan, Anda dapat merancang serta mengoperasikan aplikasi dan basis data yang secara otomatis melakukan failover di antara Zona Ketersediaan tanpa gangguan. Zona Ketersediaan memiliki ketersediaan dan toleransi kesalahan yang lebih baik, dan dapat diskalakan dibandingkan infrastruktur biasa yang terdiri dari satu atau beberapa pusat data.

AWS Transfer Family mendukung hingga 3 Availability Zones dan didukung oleh auto scaling, armada redundan untuk koneksi Anda dan permintaan transfer. 

Untuk semua titik akhir Transfer Family:
+  Ketersediaan Redundansi tingkat zona dibangun ke dalam layanan.
+ Ada armada redundan untuk setiap AZ. 
+ Redundansi ini disediakan secara otomatis.

**catatan**  
Untuk titik akhir di Virtual Private Cloud (VPC), dimungkinkan untuk menyediakan satu subnet. Namun, kami menyarankan Anda membuat titik akhir di beberapa zona ketersediaan dalam VPC Anda, untuk mengurangi risiko gangguan layanan selama pemadaman Zona Ketersediaan.

**Lihat juga**
+ Untuk detail tentang cara membuat server Transfer Family di VPC, lihat. [Buat server di cloud pribadi virtual](create-server-in-vpc.md)
+ Untuk informasi selengkapnya tentang Wilayah AWS dan Availability Zone, lihat [infrastruktur AWS global](https://aws.amazon.com/about-aws/global-infrastructure/).
+ [Untuk contoh tentang cara membangun redundansi yang lebih tinggi dan meminimalkan latensi jaringan dengan menggunakan perutean berbasis Latensi, lihat posting blog Minimalkan latensi jaringan dengan server Anda. AWS Transfer Family](https://aws.amazon.com/blogs/storage/minimize-network-latency-with-your-aws-transfer-for-sftp-servers/)

# Buat koneksi pribadi antara VPC dan AWS Transfer Family APIs
<a name="vpc-api-endpoints"></a>

Anda dapat membuat koneksi pribadi antara VPC Anda dan AWS Transfer Family APIs dengan membuat antarmuka *VPC endpoint*, didukung oleh. [AWS PrivateLink](https://aws.amazon.com/privatelink/) Anda dapat mengakses AWS Transfer Family APIs seolah-olah itu ada di VPC Anda, tanpa menggunakan gateway internet, perangkat NAT, koneksi VPN, atau koneksi Direct AWS Connect. Instans di VPC Anda tidak memerlukan alamat IP publik untuk berkomunikasi. AWS Transfer Family APIs

Kami membuat antarmuka jaringan endpoint di setiap subnet yang Anda aktifkan untuk titik akhir antarmuka. Untuk informasi selengkapnya, lihat [Akses AWS layanan melalui AWS PrivateLink AWS](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-access-aws-services.html) *PrivateLink Panduan*. *Sebelum Anda menyiapkan titik akhir VPC antarmuka untuk AWS Transfer Family APIs, tinjau [Pertimbangan dalam Panduan.](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#considerations-interface-endpoints)AWS PrivateLink *

## Mengontrol akses menggunakan kebijakan titik akhir VPC
<a name="vpc-endpoint-considerations"></a>

Secara default, akses penuh ke AWS Transfer Family APIs diizinkan melalui titik akhir. Anda dapat mengontrol akses ke titik akhir antarmuka menggunakan kebijakan titik akhir VPC. Anda dapat melampirkan kebijakan titik akhir ke VPC endpoint yang mengendalikan akses ke AWS Transfer Family APIs. Kebijakan titik akhir menentukan informasi berikut:
+ Kepala **sekolah** yang dapat melakukan tindakan.
+ **Tindakan** yang bisa dilakukan.
+ Sumber **daya** di mana tindakan dapat dilakukan.

Untuk informasi selengkapnya, lihat [Mengontrol Akses ke Layanan dengan titik akhir VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html) dalam *Panduan Pengguna Amazon VPC*.

Berikut ini adalah contoh kebijakan endpoint untuk AWS Transfer Family APIs. Saat dilampirkan ke titik akhir, kebijakan ini memberikan akses ke semua AWS Transfer Family APIs tindakan pada semua sumber daya, kecuali yang ditandai dengan kunci `Environment` dan nilai. `Test`

```
{
    "Statement": [{
        "Effect": "Deny",
        "Action": "transfer:StartFileTransfer",
        "Principal": "*",
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "aws:ResourceTag/Environment": "Test"
            }
        }
    }, {
        "Effect": "Allow",
        "Action": "transfer:*",
        "Principal": "*",
        "Resource": "*"
    }]
}
```

## Buat titik akhir VPC antarmuka untuk AWS Transfer Family APIs
<a name="create-vpc-endpoint"></a>

Anda dapat membuat titik akhir VPC untuk AWS Transfer Family APIs menggunakan konsol VPC Amazon atau Antarmuka Baris AWS Perintah ().AWS CLI Untuk informasi selengkapnya, lihat [Membuat titik akhir VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html#create-interface-endpoint-aws) di *Panduan Pengguna AWS PrivateLink*.

Buat titik akhir VPC untuk AWS Transfer Family APIs menggunakan salah satu nama layanan berikut:
+ `com.amazonaws.region.transfer`
+ `com.amazonaws.region.transfer-fips`— Untuk membuat antarmuka VPC endpoint yang sesuai dengan Standar Pemrosesan Informasi Federal (FIPS) Publikasi 140-3 standar pemerintah AS.

Jika Anda mengaktifkan DNS pribadi untuk titik akhir, Anda dapat membuat permintaan API untuk AWS Transfer Family APIs menggunakan nama DNS default untuk Wilayah, misalnya,. `transfer.us-east-1.amazonaws.com`

# Keamanan infrastruktur di AWS Transfer Family
<a name="infrastructure-security"></a>

Sebagai layanan terkelola, AWS Transfer Family dilindungi oleh keamanan jaringan AWS global. Untuk informasi tentang layanan AWS keamanan dan cara AWS melindungi infrastruktur, lihat [Keamanan AWS Cloud](https://aws.amazon.com/security/). Untuk mendesain AWS lingkungan Anda menggunakan praktik terbaik untuk keamanan infrastruktur, lihat [Perlindungan Infrastruktur dalam Kerangka Kerja](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html) yang * AWS Diarsiteksikan dengan Baik Pilar Keamanan*.

Anda menggunakan panggilan API yang AWS dipublikasikan untuk mengakses AWS Transfer Family melalui jaringan. Klien harus mendukung hal-hal berikut:
+ Keamanan Lapisan Pengangkutan (TLS). Kami mensyaratkan TLS 1.2 dan menganjurkan TLS 1.3.
+ Sandi cocok dengan sistem kerahasiaan maju sempurna (perfect forward secrecy, PFS) seperti DHE (Ephemeral Diffie-Hellman) atau ECDHE (Elliptic Curve Ephemeral Diffie-Hellman). Sebagian besar sistem modern seperti Java 7 dan versi lebih baru mendukung mode-mode ini.

## Hindari menempatkan NLBs dan NATs di depan AWS Transfer Family server
<a name="nlb-considerations"></a>

**catatan**  
Server yang dikonfigurasi dengan protokol FTP dan FTPS hanya mengizinkan konfigurasi dengan VPC: tidak ada titik akhir publik yang tersedia untuk FTP/FTPS.

Banyak pelanggan mengkonfigurasi Network Load Balancer (NLB) untuk mengarahkan lalu lintas ke server mereka. AWS Transfer Family Mereka biasanya melakukan ini baik karena mereka membuat server mereka sebelum AWS menawarkan cara untuk mengaksesnya dari dalam VPC mereka dan dari internet, atau untuk mendukung FTP di internet. Konfigurasi ini tidak hanya meningkatkan biaya bagi pelanggan, tetapi juga dapat menyebabkan masalah lain, yang kami jelaskan di bagian ini.

Gateway NAT adalah komponen wajib ketika klien terhubung dari jaringan pribadi pelanggan di belakang firewall perusahaan. Namun, Anda harus menyadari bahwa ketika banyak klien berada di belakang gateway NAT yang sama, ini dapat memengaruhi batas kinerja dan koneksi. Jika ada NLB atau NAT di jalur komunikasi dari klien ke server FTP atau FTPS, server tidak dapat secara akurat mengenali alamat IP klien, karena hanya AWS Transfer Family melihat alamat IP NLB atau NAT.

Jika Anda menggunakan konfigurasi server Transfer Family di belakang NLB, sebaiknya Anda pindah ke titik akhir VPC dan menggunakan alamat IP Elastis alih-alih menggunakan NLB. Saat menggunakan gateway NAT, perhatikan batasan koneksi yang dijelaskan di bawah ini.

Jika Anda menggunakan protokol FTPS, konfigurasi ini tidak hanya mengurangi kemampuan Anda untuk mengaudit siapa yang mengakses server Anda, tetapi juga dapat memengaruhi kinerja. AWS Transfer Family menggunakan alamat IP sumber untuk menghancurkan koneksi Anda di seluruh bidang data kami. Untuk FTPS, ini berarti bahwa alih-alih memiliki 10.000 koneksi simultan, server Transfer Family dengan gateway NLB atau NAT pada rute komunikasi dibatasi hanya 300 koneksi simultan.

Meskipun kami menyarankan untuk menghindari Network Load Balancer di depan AWS Transfer Family server, jika implementasi FTP atau FTPS Anda memerlukan NLB atau NAT dalam rute komunikasi dari klien, ikuti rekomendasi ini:
+ Untuk NLB, gunakan port 21 untuk pemeriksaan kesehatan, bukan port 8192-8200.
+ Untuk AWS Transfer Family server, aktifkan dimulainya kembali sesi TLS dengan pengaturan. `TlsSessionResumptionMode = ENFORCED`
**catatan**  
Ini adalah mode yang disarankan, karena memberikan keamanan yang ditingkatkan:  
Membutuhkan klien untuk menggunakan dimulainya kembali sesi TLS untuk koneksi berikutnya.
Memberikan jaminan keamanan yang lebih kuat dengan memastikan parameter enkripsi yang konsisten.
Membantu mencegah potensi serangan downgrade.
Menjaga kepatuhan terhadap standar keamanan sambil mengoptimalkan kinerja.
+ Jika memungkinkan, bermigrasi dari menggunakan NLB untuk memanfaatkan batas AWS Transfer Family kinerja dan koneksi sepenuhnya.

Untuk panduan tambahan tentang alternatif NLB, hubungi tim Manajemen AWS Transfer Family Produk melalui Support AWS . Untuk informasi lebih lanjut tentang meningkatkan postur keamanan Anda, lihat posting blog [Enam tips untuk meningkatkan keamanan AWS Transfer Family server Anda](https://aws.amazon.com/blogs/security/six-tips-to-improve-the-security-of-your-aws-transfer-family-server/).

## Keamanan infrastruktur konektivitas VPC
<a name="vpc-connectivity-infrastructure-security"></a>

Konektor SFTP dengan tipe jalan keluar VPC memberikan keamanan infrastruktur yang ditingkatkan melalui isolasi jaringan dan konektivitas pribadi:

### Manfaat isolasi jaringan
<a name="network-isolation-benefits"></a>
+ **Lalu lintas jaringan pribadi**: Semua lalu lintas konektor ke server SFTP pribadi tetap berada dalam VPC Anda, tidak pernah melintasi internet publik.
+ Jalan **keluar terkontrol**: Untuk titik akhir publik yang diakses melalui VPC, rute lalu lintas melalui gateway NAT Anda, memberi Anda kontrol atas alamat IP jalan keluar dan kebijakan jaringan.
+ **Kontrol keamanan VPC**: Manfaatkan grup keamanan VPC, jaringan ACLs, dan tabel rute yang ada untuk mengontrol akses jaringan konektor.
+ **Konektivitas hibrida**: Akses server SFTP lokal melalui koneksi VPN atau Direct Connect yang sudah ada tanpa eksposur internet tambahan.

### Pertimbangan keamanan Resource Gateway
<a name="resource-gateway-security"></a>

Resource Gateways menyediakan titik masuk yang aman untuk Akses Sumber Daya lintas VPC:
+ **Penerapan multi-AZ**: Resource Gateways memerlukan subnet di setidaknya dua Availability Zone untuk ketersediaan tinggi dan toleransi kesalahan.
+ **Kontrol grup keamanan**: Konfigurasikan grup keamanan untuk membatasi akses ke port SFTP (biasanya port 22) dari sumber resmi saja.
+ **Penempatan subnet pribadi**: Menyebarkan Resource Gateways di subnet pribadi saat menghubungkan ke server SFTP pribadi untuk mempertahankan isolasi jaringan.
+ **Batas koneksi**: Setiap Resource Gateway mendukung hingga 350 koneksi bersamaan dengan batas waktu idle 350 detik untuk koneksi TCP.

# Tambahkan firewall aplikasi web
<a name="web-application-firewall"></a>

AWS WAF adalah firewall aplikasi web yang membantu melindungi aplikasi web dan APIs dari serangan. Anda dapat menggunakannya untuk mengonfigurasi seperangkat aturan yang dikenal sebagai *daftar kontrol akses web* (web ACL) yang mengizinkan, memblokir, atau menghitung permintaan web berdasarkan aturan dan kondisi keamanan web yang dapat disesuaikan yang Anda tentukan. Untuk informasi selengkapnya, lihat [Menggunakan AWS WAF untuk melindungi Anda APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-control-access-aws-waf.html).

**Untuk menambahkan AWS WAF**

1. Buka konsol API Gateway di [https://console.aws.amazon.com/apigateway/](https://console.aws.amazon.com/apigateway/).

1. Di panel **APIs**navigasi, lalu pilih templat penyedia identitas kustom Anda.

1. Memilih **Tahapan**.

1. Di panel **Tahapan**, pilih nama panggung.

1. Di panel **Editor Panggung**, pilih **Pengaturan** tab.

1. Lakukan salah satu tindakan berikut:
   + Di bawah **Web Application Firewall (WAF)**, untuk **Web ACL**, pilih ACL web yang ingin Anda kaitkan dengan tahap ini.
   + Jika ACL web yang Anda butuhkan tidak ada, Anda harus membuatnya dengan melakukan hal berikut:

     1. Pilih **Buat Web ACL**.

     1. Di beranda layanan AWS WAF, pilih **Buat web ACL**.

     1. Dalam **detail Web ACL**, untuk **Nama**, ketikkan nama ACL web.

     1. Di **Aturan**, pilih **Tambahkan aturan**, lalu pilih **Tambahkan aturan dan grup aturan saya sendiri**.

     1. Untuk **tipe Rule**, pilih IP set untuk mengidentifikasi daftar alamat IP tertentu.

     1. Untuk **Aturan**, masukkan nama aturan.

     1. Untuk **set IP**, pilih set IP yang ada. Untuk membuat kumpulan IP, lihat [Membuat set IP](https://docs.aws.amazon.com/waf/latest/developerguide/waf-ip-set-creating.html).

     1. **Untuk alamat IP yang akan digunakan sebagai alamat asal**, pilih **alamat IP di header**.

     1. Untuk **nama bidang Header**, masukkan`SourceIP`.

     1. Untuk **Posisi di dalam header**, pilih **Alamat IP Pertama**.

     1. Untuk **Fallback untuk alamat IP yang hilang**, pilih **Cocokkan** atau **Tidak Cocokkan** tergantung pada bagaimana Anda ingin menangani alamat IP yang tidak valid (atau hilang) di header.

     1. Untuk **Tindakan**, pilih tindakan set IP.

     1. Untuk **tindakan ACL web default untuk permintaan yang tidak cocok dengan aturan apa pun**, pilih **Izinkan** atau **Blokir**, lalu klik **Berikutnya**.

     1. Untuk langkah 4 dan 5, pilih **Berikutnya**.

     1. Di **Tinjau dan buat**, tinjau pilihan Anda, lalu pilih **Buat ACL web**.

1. Pilih **Simpan Perubahan**.

1. Pilih **Sumber daya**.

1. Untuk **Tindakan**, pilih **Deploy API**.

 Untuk informasi tentang cara aman Transfer Family dengan firewall aplikasi AWS web, lihat [Mengamankan Transfer Family dengan firewall AWS aplikasi dan Amazon API Gateway](https://aws.amazon.com/blogs/storage/securing-aws-transfer-family-with-aws-web-application-firewall-and-amazon-api-gateway/) di blog AWS penyimpanan.

# Pencegahan "confused deputy" lintas layanan
<a name="confused-deputy"></a>

Masalah "confused deputy" adalah masalah keamanan di mana entitas yang tidak memiliki izin untuk melakukan tindakan dapat memengaruhi entitas yang memiliki hak akses lebih tinggi untuk melakukan tindakan. Pada tahun AWS, peniruan lintas layanan dapat mengakibatkan masalah wakil yang membingungkan. Peniruan identitas lintas layanan dapat terjadi ketika satu layanan (*layanan yang dipanggil*) memanggil layanan lain (*layanan yang dipanggil*). Layanan panggilan dapat dimanipulasi untuk menggunakan izinnya untuk bertindak atas sumber daya pelanggan lain dengan cara yang seharusnya tidak memiliki izin untuk mengakses. Untuk mencegah hal ini, AWS menyediakan alat yang membantu Anda melindungi data untuk semua layanan dengan principal layanan yang telah diberi akses ke sumber daya di akun Anda. Untuk penjelasan rinci tentang masalah ini, lihat [masalah wakil yang membingungkan](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) di *Panduan Pengguna IAM*.

Sebaiknya gunakan kunci konteks kondisi [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount)global [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn)dan global dalam kebijakan sumber daya untuk membatasi izin yang dimiliki AWS Transfer Family untuk sumber daya. Jika Anda menggunakan kedua kunci konteks kondisi global, `aws:SourceAccount` nilai dan akun dalam `aws:SourceArn` nilai harus menggunakan ID akun yang sama saat digunakan dalam pernyataan kebijakan yang sama. 

Cara paling efektif untuk melindungi dari masalah wakil yang membingungkan adalah dengan menggunakan Nama Sumber Daya Amazon (ARN) yang tepat dari sumber daya yang ingin Anda izinkan. Jika Anda menentukan beberapa sumber daya, gunakan kunci kondisi konteks `aws:SourceArn` global dengan karakter wildcard (`*`) untuk bagian ARN yang tidak diketahui. Misalnya, `arn:aws:transfer::region::account-id:server/*`.

AWS Transfer Family menggunakan jenis peran berikut:
+ **Peran pengguna** — Memungkinkan pengguna yang dikelola layanan mengakses sumber daya Transfer Family yang diperlukan. AWS Transfer Family mengambil peran ini dalam konteks ARN pengguna Transfer Family.
+ **Peran akses** - Menyediakan akses hanya ke file Amazon S3 yang sedang ditransfer. Untuk AS2 transfer masuk, peran akses menggunakan Nama Sumber Daya Amazon (ARN) untuk perjanjian. Untuk AS2 transfer keluar, peran akses menggunakan ARN untuk konektor.
+ **Peran pemanggilan** — Untuk digunakan dengan Amazon API Gateway sebagai penyedia identitas kustom server. Transfer Family mengasumsikan peran ini dalam konteks ARN server Transfer Family.
+ **Peran logging** - Digunakan untuk log entri ke Amazon CloudWatch. Transfer Family menggunakan peran ini untuk mencatat detail keberhasilan dan kegagalan bersama dengan informasi tentang transfer file. Transfer Family mengasumsikan peran ini dalam konteks ARN server Transfer Family. Untuk AS2 transfer keluar, peran logging menggunakan konektor ARN.
+ **Peran eksekusi** — Memungkinkan pengguna Transfer Family memanggil dan meluncurkan alur kerja. Transfer Family mengasumsikan peran ini dalam konteks alur kerja Transfer Family ARN.

Untuk informasi selengkapnya, lihat [Kebijakan dan izin di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) dalam *Panduan Pengguna IAM*.

**catatan**  
Dalam contoh berikut, ganti masing-masing *user input placeholder* dengan informasi Anda sendiri. 

**catatan**  
Dalam contoh kami, kami menggunakan keduanya `ArnLike` dan`ArnEquals`. Mereka identik secara fungsional, dan oleh karena itu Anda dapat menggunakan keduanya ketika Anda membuat kebijakan Anda. Dokumentasi Transfer Family digunakan `ArnLike` ketika kondisi berisi karakter wildcard, dan `ArnEquals` untuk menunjukkan kondisi kecocokan yang tepat.

## AWS Transfer Family peran pengguna lintas layanan pencegahan wakil yang membingungkan
<a name="user-role-cross-service"></a>

Contoh kebijakan berikut memungkinkan setiap pengguna dari server mana pun di akun untuk mengambil peran.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "transfer.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:transfer:us-east-1:123456789012:user/*"
                }
            }
        }
    ]
}
```

Contoh kebijakan berikut memungkinkan setiap pengguna dari server tertentu untuk mengambil peran.

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": "transfer.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "123456789012"
        },
        "ArnEquals": {
          "aws:SourceArn": "arn:aws:transfer:us-east-1:123456789012:user/server-id/*"
        }
      }
    }
  ]
}
```

Contoh kebijakan berikut memungkinkan pengguna tertentu dari server tertentu untuk mengambil peran.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "transfer.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:transfer:us-east-1:123456789012:user/server-id/user-name"
                }
            }
        }
    ]
}
```

## AWS Alur kerja Transfer Family peran lintas layanan membingungkan pencegahan wakil
<a name="workflow-role-cross-service"></a>

Contoh kebijakan berikut memungkinkan alur kerja apa pun di akun untuk mengambil peran.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "transfer.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "111122223333"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:transfer:us-west-2:111122223333:workflow/*"
                }
            }
        }
    ]
}
```

Contoh kebijakan berikut memungkinkan alur kerja tertentu untuk mengambil peran.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "transfer.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:transfer:us-west-2:111122223333:workflow/workflow-id"
                }
            }
        }
    ]
}
```

## AWS Peran konektor Transfer Family lintas layanan pencegahan wakil yang membingungkan
<a name="connector-role-cross-service"></a>

Contoh kebijakan berikut memungkinkan konektor apa pun di akun untuk mengambil peran.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "transfer.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:transfer:us-east-1:123456789012:connector/*"
                }
            }
        }
    ]
}
```

Contoh kebijakan berikut memungkinkan konektor tertentu untuk mengambil peran.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "transfer.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:transfer:us-east-1:123456789012:connector/connector-id"
                }
            }
        }
    ]
}
```

## AWS Transfer Family logging dan peran doa lintas layanan membingungkan deputi pencegahan
<a name="logging-role-cross-service"></a>

**catatan**  
Contoh berikut dapat digunakan dalam peran logging dan pemanggilan.  
Dalam contoh ini, Anda dapat menghapus detail ARN untuk alur kerja jika server Anda tidak memiliki alur kerja yang melekat padanya.

Contoh logging/invocation kebijakan berikut memungkinkan setiap server (dan alur kerja) dalam akun untuk mengambil peran.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowAllServersWithWorkflowAttached",
            "Effect": "Allow",
            "Principal": {
                "Service": "transfer.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "111122223333"
                },
                "ArnLike": {
                   "aws:SourceArn": [
                     "arn:aws:transfer:us-west-2:111122223333:server/*",
                     "arn:aws:transfer:us-west-2:111122223333:workflow/*"
                   ]
                }
            }
        }
    ]
}
```

Contoh logging/invocation kebijakan berikut memungkinkan server tertentu (dan alur kerja) untuk mengambil peran.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowSpecificServerWithWorkflowAttached",
            "Effect": "Allow",
            "Principal": {
                "Service": "transfer.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "111122223333"
                },
                "ArnEquals": {
                   "aws:SourceArn": [
                       "arn:aws:transfer:us-west-2:111122223333:server/server-id",
                       "arn:aws:transfer:us-west-2:111122223333:workflow/workflow-id"
                   ]
                }
            }
        }
    ]
}
```

# AWS kebijakan terkelola untuk AWS Transfer Family
<a name="security-iam-awsmanpol"></a>

Untuk menambahkan izin ke pengguna, grup, dan peran, lebih mudah menggunakan kebijakan AWS terkelola daripada menulis kebijakan sendiri. Dibutuhkan waktu dan keahlian untuk [membuat kebijakan terkelola pelanggan AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) yang hanya memberi tim Anda izin yang mereka butuhkan. Untuk memulai dengan cepat, Anda dapat menggunakan kebijakan AWS terkelola kami. Kebijakan ini mencakup kasus penggunaan umum dan tersedia di Akun AWS Anda. Untuk informasi lebih lanjut tentang kebijakan yang dikelola AWS , lihat [kebijakan yang dikelola AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) di *Panduan Pengguna IAM*. Untuk daftar detail semua kebijakan AWS terkelola, lihat [panduan referensi kebijakan AWS terkelola](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/about-managed-policy-reference.html).

AWS layanan memelihara dan memperbarui kebijakan AWS terkelola. Anda tidak dapat mengubah izin dalam kebijakan AWS terkelola. Layanan terkadang menambahkan izin tambahan ke kebijakan yang dikelola AWS untuk mendukung fitur-fitur baru. Jenis pembaruan ini akan memengaruhi semua identitas (pengguna, grup, dan peran) di mana kebijakan tersebut dilampirkan. Layanan kemungkinan besar akan memperbarui kebijakan yang dikelola AWS saat ada fitur baru yang diluncurkan atau saat ada operasi baru yang tersedia. Layanan tidak menghapus izin dari kebijakan AWS terkelola, sehingga pembaruan kebijakan tidak akan merusak izin yang ada.

Selain itu, AWS mendukung kebijakan terkelola untuk fungsi pekerjaan yang mencakup beberapa layanan. Misalnya, kebijakan `ReadOnlyAccess` AWS terkelola menyediakan akses hanya-baca ke semua AWS layanan dan sumber daya. Saat layanan meluncurkan fitur baru, AWS tambahkan izin hanya-baca untuk operasi dan sumber daya baru. Untuk melihat daftar dan deskripsi dari kebijakan fungsi tugas, lihat [kebijakan yang dikelola AWS untuk fungsi tugas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) di *Panduan Pengguna IAM*.

## AWS kebijakan terkelola: AWSTransfer ConsoleFullAccess
<a name="security-iam-awsmanpol-transferconsolefullaccess"></a>

`AWSTransferConsoleFullAccess`Kebijakan ini menyediakan akses penuh ke Transfer Family melalui Konsol AWS Manajemen. Untuk informasi selengkapnya, lihat [Peran terkait layanan untuk AWS Transfer Family](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSTransferConsoleFullAccess.html).

## AWS kebijakan terkelola: AWSTransfer FullAccess
<a name="security-iam-awsmanpol-transferfullaccess"></a>

 `AWSTransferFullAccess`Kebijakan ini menyediakan akses penuh ke layanan Transfer Family. Untuk informasi selengkapnya, lihat [Peran terkait layanan untuk AWS Transfer Family](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSTransferFullAccess.html).

## AWS kebijakan terkelola: AWSTransfer LoggingAccess
<a name="security-iam-awsmanpol-transferloggingaccess"></a>

 `AWSTransferLoggingAccess`Kebijakan ini memberikan akses penuh kepada AWS Transfer Family untuk membuat aliran log dan grup serta memasukkan peristiwa log ke akun Anda. Untuk informasi selengkapnya, lihat [Peran terkait layanan untuk AWS Transfer Family](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSTransferLoggingAccess.html).

## AWS kebijakan terkelola: AWSTransfer ReadOnlyAccess
<a name="security-iam-awsmanpol-transferreadonlyaccess"></a>

 `AWSTransferReadOnlyAccess`Kebijakan ini menyediakan akses hanya-baca ke layanan Transfer Family. Untuk informasi selengkapnya, lihat [Peran terkait layanan untuk AWS Transfer Family](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSTransferReadOnlyAccess.html).

## AWS Transfer Family memperbarui kebijakan AWS terkelola
<a name="security-iam-awsmanpol-updates"></a>

Lihat detail tentang pembaruan kebijakan AWS terkelola untuk AWS Transfer Family sejak layanan ini mulai melacak perubahan ini. Untuk peringatan otomatis tentang perubahan pada halaman ini, berlangganan ke umpan RSS pada halaman [Riwayat dokumen untuk AWS Transfer Family](doc-history.md).




| Perubahan | Deskripsi | Date | 
| --- | --- | --- | 
|   Pembaruan dokumentasi   |  Menambahkan bagian untuk setiap kebijakan yang dikelola Transfer Family.  |  27 Januari 2022  | 
|   [AWSTransferReadOnlyAccess](#security-iam-awsmanpol-transferreadonlyaccess) – Pembaruan ke kebijakan yang ada   |  AWS Transfer Family menambahkan izin baru agar kebijakan dapat dibaca AWS Managed Microsoft AD.  |  30 September 2021  | 
|  AWS Transfer Family mulai melacak perubahan  |  AWS Transfer Family mulai melacak perubahan kebijakan yang AWS dikelola.  | 15 Juni 2021 | 