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. Untuk informasi selengkapnya tentang privasi data, lihat Privasi Data FAQ. Untuk informasi tentang perlindungan data di Eropa, lihat Model Tanggung Jawab AWS Bersama dan posting GDPR blog di Blog AWS Keamanan.

Untuk tujuan perlindungan data, kami menyarankan Anda melindungi Akun AWS kredensi 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 otentikasi multi-faktor (MFA) dengan setiap akun.

  • GunakanSSL/TLSuntuk berkomunikasi dengan AWS sumber daya. Kami membutuhkan TLS 1.2 dan merekomendasikan 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 FIPS 140-3 modul kriptografi yang divalidasi saat mengakses AWS melalui antarmuka baris perintah atau, gunakan titik akhir. API FIPS Untuk informasi selengkapnya tentang FIPS titik akhir yang tersedia, lihat Federal Information Processing Standard (FIPS) 140-3.

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 ketika Anda bekerja dengan AppFabric atau lainnya layanan AWS menggunakan konsol,API, AWS CLI, atau AWS SDKs. 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. Jika Anda memberikan URL ke server eksternal, kami sangat menyarankan agar Anda tidak menyertakan informasi kredensil dalam URL untuk memvalidasi permintaan Anda ke server tersebut.

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 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 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 API permintaan 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 KMS kunci 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, AWS Identity and Access Management (IAM) pengguna atau peran yang membuat AppFabric sumber daya Anda harus memiliki izin untuk menggunakan kunci terkelola 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 yang dikelola 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" } }