Perlindungan data di AWS AppFabric - AWS AppFabric

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

Perlindungan data di AWS AppFabric

Model tanggung jawab AWS bersama model berlaku untuk perlindungan data di AWS AppFabric. 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. Anda juga bertanggung jawab atas tugas-tugas konfigurasi dan manajemen keamanan untuk Layanan AWS yang Anda gunakan. Lihat informasi yang lebih lengkap tentang privasi data dalam Pertanyaan Umum Privasi Data. Lihat informasi tentang perlindungan data di Eropa di pos blog Model Tanggung Jawab Bersama dan GDPR AWS di Blog Keamanan AWS .

Untuk tujuan perlindungan data, kami menyarankan Anda melindungi Akun AWS kredensyal dan mengatur pengguna individu dengan AWS IAM Identity Center atau AWS Identity and Access Management (IAM). Dengan cara itu, setiap pengguna hanya diberi izin yang diperlukan untuk memenuhi tanggung jawab tugasnya. Kami juga menyarankan supaya Anda mengamankan data dengan cara-cara berikut:

  • Gunakan autentikasi multi-faktor (MFA) pada setiap akun.

  • Gunakan SSL/TLS untuk berkomunikasi dengan sumber daya. AWS Kami mensyaratkan TLS 1.2 dan menganjurkan TLS 1.3.

  • Siapkan API dan pencatatan aktivitas pengguna dengan AWS CloudTrail.

  • Gunakan solusi AWS enkripsi, bersama dengan semua kontrol keamanan default di dalamnya Layanan AWS.

  • Gunakan layanan keamanan terkelola lanjut seperti Amazon Macie, yang membantu menemukan dan mengamankan data sensitif yang disimpan di Amazon S3.

  • Jika Anda memerlukan modul kriptografi tervalidasi FIPS 140-2 saat mengakses AWS melalui antarmuka baris perintah atau API, gunakan titik akhir FIPS. Lihat informasi yang lebih lengkap tentang titik akhir FIPS yang tersedia di Standar Pemrosesan Informasi Federal (FIPS) 140-2.

Kami sangat merekomendasikan agar Anda tidak pernah memasukkan informasi identifikasi yang sensitif, seperti nomor rekening pelanggan Anda, ke dalam tanda atau bidang isian bebas seperti bidang Nama. Ini termasuk saat Anda bekerja dengan AppFabric atau lainnya Layanan AWS menggunakan konsol, API AWS CLI, atau AWS SDK. Data apa pun yang Anda masukkan ke dalam tanda atau bidang isian bebas yang digunakan untuk nama dapat digunakan untuk log penagihan atau log diagnostik. Saat Anda memberikan URL ke server eksternal, kami sangat menganjurkan supaya Anda tidak menyertakan informasi kredensial di dalam URL untuk memvalidasi permintaan Anda ke server itu.

catatan

Untuk informasi selengkapnya tentang perlindungan data yang berlaku AppFabric untuk keamanan, lihatPemrosesan data.

Enkripsi diam

AWS AppFabric mendukung enkripsi saat istirahat, fitur enkripsi sisi server yang AppFabric secara transparan mengenkripsi semua data yang terkait dengan bundel aplikasi Anda saat disimpan ke disk, dan mendekripsi mereka saat Anda mengakses data. Secara default, AppFabric mengenkripsi data Anda menggunakan Kunci milik AWS from AWS Key Management Service ()AWS KMS. Anda juga dapat memilih untuk mengenkripsi data Anda menggunakan kunci yang dikelola pelanggan Anda sendiri. AWS KMS

Saat Anda menghapus bundel aplikasi, semua metadatanya akan dihapus secara permanen.

Enkripsi bergerak

Saat mengonfigurasi bundel aplikasi, Anda dapat memilih kunci yang dikelola pelanggan Kunci milik AWS atau kunci yang dikelola. Saat mengumpulkan dan menormalkan data untuk konsumsi log audit, AppFabric menyimpan data sementara di bucket Amazon Simple Storage Service (Amazon S3) perantara dan mengenkripsinya menggunakan kunci ini. Bucket perantara ini dihapus setelah 30 hari, menggunakan kebijakan siklus hidup bucket.

AppFabric mengamankan semua data dalam perjalanan menggunakan TLS 1.2 dan menandatangani permintaan API Layanan AWS dengan AWS Signature V4.

Manajemen kunci

AppFabric mendukung enkripsi data dengan Kunci milik AWS atau kunci yang dikelola pelanggan. Kami menyarankan Anda menggunakan kunci yang dikelola pelanggan karena menempatkan Anda dalam kendali penuh atas data terenkripsi Anda. Saat Anda memilih kunci yang dikelola pelanggan, AppFabric lampirkan kebijakan sumber daya ke kunci yang dikelola pelanggan yang memberinya akses ke kunci yang dikelola pelanggan.

Kunci yang dikelola pelanggan

Untuk membuat kunci terkelola pelanggan, ikuti langkah-langkah untuk Membuat kunci KMS enkripsi simetris di Panduan AWS KMS Pengembang.

Kebijakan kunci

Kebijakan utama mengontrol akses ke kunci yang dikelola pelanggan Anda. Setiap kunci yang dikelola pelanggan harus memiliki persis satu kebijakan utama, yang berisi pernyataan yang menentukan siapa yang dapat menggunakan kunci dan bagaimana mereka dapat menggunakannya. Saat membuat kunci terkelola pelanggan, Anda dapat menentukan kebijakan kunci. Untuk informasi tentang membuat kebijakan kunci, lihat Membuat kebijakan kunci di Panduan AWS KMS Pengembang.

Untuk menggunakan kunci yang dikelola pelanggan AppFabric, pengguna AWS Identity and Access Management (IAM) atau peran yang membuat AppFabric sumber daya Anda harus memiliki izin untuk menggunakan kunci yang dikelola pelanggan Anda. Kami menyarankan Anda membuat kunci yang Anda gunakan hanya dengan AppFabric dan menambahkan AppFabric pengguna Anda sebagai pengguna kunci. Pendekatan ini membatasi ruang lingkup akses ke data Anda. Izin yang dibutuhkan pengguna Anda adalah sebagai berikut:

  • kms:DescribeKey

  • kms:CreateGrant

  • kms:GenerateDataKey

  • kms:Decrypt

AWS KMS Konsol memandu Anda membuat kunci dengan kebijakan kunci yang sesuai. Untuk informasi selengkapnya tentang kebijakan utama, lihat Kebijakan utama AWS KMS di Panduan AWS KMS Pengembang.

Berikut ini adalah contoh kebijakan kunci yang mengizinkan:

  • Kontrol Pengguna root akun AWS penuh dari kunci.

  • Pengguna diizinkan AppFabric untuk menggunakan kunci yang dikelola pelanggan Anda dengan AppFabric.

  • Kebijakan utama untuk penyiapan bundel aplikasi dius-east-1.

{ "Id": "key-consolepolicy-3", "Version": "2012-10-17", "Statement": [ { "Sid": "Allow access for key administrators", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:root"}, "Action": ["kms:*"], "Resource": "arn:aws:kms:us-east-1:111122223333:key/key_ID" }, { "Sid": "Allow read-only access to key metadata to the account", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:root"}, "Action": [ "kms:Describe*", "kms:Get*", "kms:List*", "kms:RevokeGrant" ], "Resource": "*" }, { "Sid": "Allow access to principals authorized to use AWS AppFabric", "Effect": "Allow", "Principal": {"AWS": "IAM-role/user-creating-appfabric-resources"}, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant", "kms:ListAliases" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "appfabric.us-east-1.amazonaws.com", "kms:CallerAccount": "111122223333" } } } ] }

Bagaimana AppFabric menggunakan hibah di AWS KMS

AppFabric membutuhkan hibah untuk menggunakan kunci yang dikelola pelanggan Anda. Untuk informasi selengkapnya, lihat Hibah AWS KMS di Panduan AWS KMS Pengembang.

Saat Anda membuat app bundle, AppFabric buat hibah atas nama Anda dengan mengirimkan CreateGrant permintaan ke AWS KMS. Hibah AWS KMS digunakan untuk memberikan AppFabric akses ke AWS KMS kunci di akun pelanggan. AppFabric mengharuskan hibah untuk menggunakan kunci yang dikelola pelanggan Anda untuk operasi internal berikut:

  • Kirim GenerateDataKey permintaan AWS KMS untuk menghasilkan kunci data yang dienkripsi oleh kunci terkelola pelanggan Anda.

  • Kirim Decrypt permintaan AWS KMS ke untuk mendekripsi kunci data terenkripsi sehingga mereka dapat digunakan untuk mengenkripsi data Anda dan untuk mendekripsi token akses aplikasi dalam perjalanan.

  • Kirim Encrypt permintaan AWS KMS untuk mengenkripsi token akses aplikasi dalam perjalanan.

Berikut ini adalah contoh hibah.

{ "KeyId": "arn:aws:kms:us-east-1:111122223333:key/ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "GrantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE", "Name": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "CreationDate": "2022-10-11T20:35:39+00:00", "GranteePrincipal": "appfabric.us-east-1.amazonaws.com", "RetiringPrincipal": "appfabric.us-east-1.amazonaws.com", "IssuingAccount": "arn:aws:iam::111122223333:root", "Operations": [ "Decrypt", "Encrypt", "GenerateDataKey" ], "Constraints": { "EncryptionContextSubset": { "appBundleArn": "arn:aws:fabric:us-east-1:111122223333:appbundle/ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE" } } },

Saat Anda menghapus paket aplikasi, AppFabric menghentikan hibah yang dikeluarkan pada kunci terkelola pelanggan Anda.

Memantau kunci enkripsi Anda untuk AppFabric

Saat menggunakan kunci terkelola AWS KMS pelanggan AppFabric, Anda dapat menggunakan AWS CloudTrail log untuk melacak permintaan yang AppFabric dikirim AWS KMS.

Berikut ini adalah contoh CloudTrail peristiwa yang dicatat saat AppFabric digunakan CreateGrant untuk kunci yang dikelola pelanggan Anda.

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AROAIGDTESTANDEXAMPLE:SampleUser", "arn": "arn:aws:sts::111122223333:assumed-role/AssumedRole/SampleUser", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAIGDTESTANDEXAMPLE", "arn": "arn:aws:iam::111122223333:role/AssumedRole", "accountId": "111122223333", "userName": "SampleUser" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-04-28T14:01:33Z", "mfaAuthenticated": "false" } } }, "eventTime": "2023-04-28T14:05:48Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-east-1", "sourceIPAddress": "appfabric.amazonaws.com", "userAgent": "appfabric.amazonaws.com", "requestParameters": { "granteePrincipal": "appfabric.us-east-1.amazonaws.com", "constraints": { "encryptionContextSubset": { "appBundleArn": "arn:aws:appfabric:us-east-1:111122223333:appbundle/ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE" } }, "keyId": "arn:aws:kms:us-east-1:111122223333:key/EXAMPLEID", "retiringPrincipal": "appfabric.us-east-1.amazonaws.com", "operations": [ "Encrypt", "Decrypt", "GenerateDataKey" ] }, "responseElements": { "grantId": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "keyId": "arn:aws:kms:us-east-1:111122223333:key/KEY_ID" }, "additionalEventData": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE" }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "readOnly": false, "resources": [ { "accountId": "AWS Internal", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:111122223333:key/key_ID" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "sharedEventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventCategory": "Management", "tlsDetails": { "tlsVersion": "TLSv1.3", "cipherSuite": "TLS_AES_256_GCM_SHA384", "clientProvidedHostHeader": "kms.us-east-1.amazonaws.com" } }