Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menyiapkan alur kerja terkelola untuk mendekripsi file
Tutorial ini menggambarkan cara mengatur alur kerja terkelola yang berisi langkah dekripsi. Tutorial ini juga menunjukkan cara mengunggah file terenkripsi ke bucket Amazon S3 dan kemudian melihat file yang didekripsi di bucket yang sama.
catatan
Blog AWS penyimpanan memiliki posting yang menjelaskan cara mengenkripsi dan mendekripsi file, mengenkripsi dan mendekripsi file dengan dan
Topik
Langkah 1: Konfigurasikan peran eksekusi
Buat peran eksekusi AWS Identity and Access Management (IAM) yang dapat digunakan Transfer Family untuk meluncurkan alur kerja. Proses pembuatan peran eksekusi dijelaskan dalamIAMkebijakan untuk alur kerja.
catatan
Sebagai bagian dari menciptakan peran eksekusi, pastikan untuk membangun hubungan kepercayaan antara peran eksekusi dan Transfer Family, seperti yang dijelaskan dalamUntuk membangun hubungan kepercayaan.
Kebijakan peran eksekusi berikut berisi semua izin yang diperlukan untuk berhasil menjalankan alur kerja yang akan Anda buat dalam tutorial ini. Untuk menggunakan kebijakan contoh ini, ganti
dengan informasi Anda sendiri. Ganti user input
placeholders
dengan nama bucket Amazon S3 tempat Anda akan mengunggah file terenkripsi Anda.DOC-EXAMPLE-BUCKET
catatan
Tidak setiap alur kerja memerlukan setiap izin yang tercantum dalam contoh ini. Anda dapat membatasi izin berdasarkan jenis langkah dalam alur kerja spesifik Anda. Izin yang diperlukan untuk setiap jenis langkah yang telah ditentukan dijelaskan dalam. Gunakan langkah-langkah yang telah ditentukan Izin yang diperlukan untuk langkah kustom dijelaskan diIAMizin untuk langkah khusus.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "WorkflowsS3Permissions", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectTagging", "s3:GetObjectVersion", "s3:PutObject", "s3:PutObjectTagging", "s3:ListBucket", "s3:PutObjectTagging", "s3:PutObjectVersionTagging", "s3:DeleteObjectVersion", "s3:DeleteObject" ], "Resource": ["arn:aws:s3:::
DOC-EXAMPLE-BUCKET
/*", "arn:aws:s3:::DOC-EXAMPLE-BUCKET
"] "Condition": { "StringEquals": { "s3:RequestObjectTag/Archive": "yes" } } }, { "Sid": "DecryptSecret", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": "arn:aws:secretsmanager:region
:account-id
:secret:aws/transfer/*" } ] }
Langkah 2: Buat alur kerja terkelola
Sekarang Anda perlu membuat alur kerja yang berisi langkah dekripsi.
Untuk membuat alur kerja yang berisi langkah dekripsi
-
Buka AWS Transfer Family konsol di https://console.aws.amazon.com/transfer/
. -
Di panel navigasi kiri, pilih Alur kerja, lalu pilih Buat alur kerja.
-
Masukkan detail berikut:
-
Masukkan deskripsi, misalnya
Decrypt workflow example
. -
Di bagian Langkah nominal, pilih Tambah langkah.
-
-
Untuk Pilih jenis langkah, pilih Dekripsi file, lalu pilih Berikutnya.
-
Dalam kotak dialog Konfigurasi parameter, tentukan yang berikut ini:
-
Masukkan nama langkah deskriptif, misalnya,
decrypt-step
. Spasi tidak diperbolehkan dalam nama langkah. -
Untuk Tujuan untuk file yang didekripsi, pilih Amazon S3.
-
Untuk nama bucket Tujuan, pilih bucket Amazon S3 yang sama dengan yang Anda tentukan seperti
dalam IAM kebijakan yang Anda buat di Langkah 1.DOC-EXAMPLE-BUCKET
-
Untuk awalan kunci Destination, masukkan nama awalan (folder) tempat Anda ingin menyimpan file yang didekripsi di bucket tujuan, misalnya,.
decrypted-files/
catatan
Pastikan untuk menambahkan trailing slash (
/
) ke awalan Anda. -
Untuk tutorial ini, biarkan Overwrite sudah dihapus. Saat pengaturan ini dihapus, jika Anda mencoba mendekripsi file dengan nama identik dari file yang ada, pemrosesan alur kerja berhenti, dan file baru tidak diproses.
Pilih Berikutnya untuk pindah ke layar ulasan.
-
-
Tinjau detail untuk langkahnya. Jika semuanya benar, pilih Buat langkah.
-
Alur kerja Anda hanya membutuhkan satu langkah dekripsi, jadi tidak ada langkah tambahan untuk mengonfigurasi. Pilih Buat alur kerja untuk membuat alur kerja baru.
Perhatikan ID alur kerja untuk alur kerja baru Anda. Anda akan memerlukan ID ini untuk langkah selanjutnya. Tutorial ini menggunakan
sebagai contoh ID alur kerja. w-1234abcd5678efghi
Langkah 3: Tambahkan alur kerja ke server dan buat pengguna
Sekarang Anda memiliki alur kerja dengan langkah dekripsi, Anda harus mengaitkannya dengan server Transfer Family. Tutorial ini menunjukkan cara melampirkan alur kerja ke server Transfer Family yang ada. Atau, Anda dapat membuat server baru untuk digunakan dengan alur kerja Anda.
Setelah Anda melampirkan alur kerja ke server, Anda harus membuat pengguna yang dapat SFTP masuk ke server dan memicu alur kerja untuk dijalankan.
Untuk mengonfigurasi server Transfer Family untuk menjalankan alur kerja
-
Buka AWS Transfer Family konsol di https://console.aws.amazon.com/transfer/
. -
Di panel navigasi kiri, pilih Server, lalu pilih server dari daftar. Pastikan server ini mendukung SFTP protokol.
-
Pada halaman detail untuk server, gulir ke bawah ke bagian Detail tambahan, lalu pilih Edit.
-
Pada halaman Edit detail tambahan, di bagian Alur kerja terkelola, pilih alur kerja Anda, dan pilih peran eksekusi yang sesuai.
-
Untuk Alur Kerja untuk upload file lengkap, pilih alur kerja yang Anda buatLangkah 2: Buat alur kerja terkelola, misalnya,.
w-1234abcd5678efghi
-
Untuk peran eksekusi alur kerja terkelola, pilih IAM peran yang Anda buat. Langkah 1: Konfigurasikan peran eksekusi
-
-
Gulir ke bagian bawah halaman, dan pilih Simpan untuk menyimpan perubahan Anda.
Catat ID untuk server yang Anda gunakan. Nama AWS Secrets Manager rahasia yang Anda gunakan untuk menyimpan PGP kunci Anda sebagian didasarkan pada ID server.
Untuk menambahkan pengguna yang dapat memicu alur kerja
-
Buka AWS Transfer Family konsol di https://console.aws.amazon.com/transfer/
. -
Di panel navigasi kiri, pilih Server, lalu pilih server yang Anda gunakan untuk mendekripsi alur kerja.
-
Pada halaman detail server, gulir ke bawah ke bagian Pengguna, dan pilih Tambah pengguna.
-
Untuk pengguna baru Anda, masukkan detail berikut:
-
Untuk Nama Pengguna, masukkan
decrypt-user
. -
Untuk Peran, pilih peran pengguna yang dapat mengakses server Anda.
-
Untuk direktori Home, pilih bucket Amazon S3 yang Anda gunakan sebelumnya, misalnya,.
DOC-EXAMPLE-BUCKET
-
Untuk kunci SSH publik, tempel kunci publik yang sesuai dengan kunci pribadi yang Anda miliki. Untuk detailnya, lihat Buat SSH kunci untuk pengguna yang dikelola layanan.
-
-
Pilih Tambah untuk menyimpan pengguna baru Anda.
Catat nama pengguna Transfer Family Anda untuk server ini. Rahasianya sebagian didasarkan pada nama pengguna. Untuk kesederhanaan, tutorial ini menggunakan rahasia default yang dapat digunakan oleh setiap pengguna server.
Langkah 4: Buat PGP key pair
Gunakan salah satu PGPklien yang didukung untuk menghasilkan PGP key pair. Proses ini dijelaskan secara rinci dalamHasilkan PGP kunci.
Untuk menghasilkan PGP key pair
-
Untuk tutorial ini, Anda dapat menggunakan
gpg
(GnuPG
) versi 2.0.22 klien untuk menghasilkan PGP key pair yang digunakan RSA sebagai algoritma enkripsi. Untuk klien ini, jalankan perintah berikut, dan berikan alamat email dan frasa sandi. Anda dapat menggunakan nama atau alamat email apa pun yang Anda suka. Pastikan Anda mengingat nilai yang Anda gunakan, karena Anda harus memasukkannya nanti dalam tutorial.gpg --gen-key
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 atauECC. Namun, jika Anda memilihECC, pastikan untuk memilih salah satu NIST atau BrainPool untuk kurva elips. Jangan memilih Curve 25519. -
Ekspor kunci pribadi dengan menjalankan perintah berikut. Ganti
dengan alamat email yang Anda gunakan saat membuat kunci.user@example.com
gpg --output workflow-tutorial-key.pgp --armor --export-secret-key
user@example.com
Perintah ini mengekspor kunci pribadi ke
workflow-tutorial-key.pgp
file. Anda dapat memberi nama file output apa pun yang Anda suka. Anda juga dapat menghapus file kunci pribadi setelah Anda menambahkannya AWS Secrets Manager.
Langkah 5: Simpan kunci PGP pribadi di AWS Secrets Manager
Anda perlu menyimpan kunci pribadi di Secrets Manager, dengan cara yang sangat spesifik, sehingga alur kerja dapat menemukan kunci pribadi saat alur kerja menjalankan langkah dekripsi pada file yang diunggah.
catatan
Ketika Anda menyimpan rahasia di Secrets Manager, Anda Akun AWS dikenakan biaya. Untuk informasi tentang harga, lihat AWS Secrets Manager Harga
Untuk menyimpan kunci PGP pribadi di Secrets Manager
-
Masuk ke AWS Management Console dan buka AWS Secrets Manager konsol di https://console.aws.amazon.com/secretsmanager/
. -
Pada panel navigasi kiri, pilih Rahasia.
-
Pada halaman Rahasia, pilih Simpan rahasia baru.
-
Pada halaman Pilih jenis rahasia, untuk tipe Rahasia, pilih Jenis rahasia lainnya.
-
Di bagian pasangan kunci/Nilai, pilih tab kunci/Nilai.
-
Kunci — Masukkan
PGPPrivateKey
. -
nilai — Tempelkan teks kunci pribadi Anda ke bidang nilai.
-
-
Pilih Tambah baris, dan di bagian pasangan kunci/Nilai, pilih tab kunci/Nilai.
-
Kunci — Masukkan
PGPPassphrase
. -
value — Masukkan kata sandi yang Anda gunakan saat membuat PGP key pair. Langkah 4: Buat PGP key pair
-
-
Pilih Berikutnya.
-
Pada halaman Konfigurasi rahasia, masukkan nama dan deskripsi untuk rahasia Anda. Untuk tutorial ini, Anda dapat membuat rahasia default yang dapat digunakan semua pengguna. Dengan asumsi bahwa ID server adalah
, sebutkan rahasianyas-11112222333344445
aws/transfer/
. Gantis-11112222333344445
/@pgp-default
dengan ID server Transfer Family Anda. Masukkan deskripsi untuk rahasia Anda.s-11112222333344445
catatan
Untuk membuat rahasia hanya untuk pengguna yang Anda buat sebelumnya, beri nama rahasianya
aws/transfer/
.s-11112222333344445
/decrypt-user -
Pilih Berikutnya, dan kemudian terima default pada halaman Konfigurasi rotasi. Lalu pilih Berikutnya.
-
Pada halaman Review, pilih Store untuk membuat dan menyimpan rahasia.
Untuk informasi selengkapnya tentang menambahkan kunci PGP pribadi ke Secrets Manager, lihat Menggunakan AWS Secrets Manager untuk menyimpan PGP kunci Anda.
Langkah 6: Enkripsi file
Gunakan gpg
program untuk mengenkripsi file untuk digunakan dalam alur kerja Anda. Jalankan perintah berikut untuk mengenkripsi file:
gpg -e -r
marymajor@example.com
--openpgp testfile.txt
Sebelum menjalankan perintah ini, perhatikan hal berikut:
-
Untuk
-r
argumennya, ganti
dengan alamat email yang Anda gunakan saat membuat PGP key pair.marymajor@example.com
-
--openpgp
Bendera adalah opsional. Bendera ini membuat file terenkripsi sesuai dengan standar Open PGP RFC4880. -
Perintah ini membuat file bernama
testfile.txt.gpg
di lokasi yang sama dengantestfile.txt
.
Langkah 7: Jalankan alur kerja dan lihat hasilnya
Untuk menjalankan alur kerja, Anda terhubung ke server Transfer Family dengan pengguna yang Anda buat di Langkah 3. Kemudian Anda dapat melihat di bucket Amazon S3 yang Anda tentukan di Langkah 2.5, konfigurasikan parameter tujuan untuk melihat file yang didekripsi.
Untuk menjalankan alur kerja dekripsi
-
Buka terminal perintah.
-
Jalankan perintah berikut, ganti
dengan endpoint Anda yang sebenarnya, danyour-endpoint
dengan kunci SSH pribadi pengguna Anda:transfer-key
sftp -i
transfer-key
decrypt-user@your-endpoint
Misalnya, jika kunci pribadi disimpan
~/.ssh/decrypt-user
, dan titik akhir Anda, perintahnya adalah sebagai berikut:s-11112222333344445.server.transfer.us-east-2.amazonaws.com
sftp -i ~/.ssh/decrypt-user decrypt-user@s-11112222333344445.server.transfer.us-east-2.amazonaws.com
-
Jalankan perintah
pwd
. Jika berhasil, perintah ini akan mengembalikan yang berikut:Remote working directory: /
/decrypt-userDOC-EXAMPLE-BUCKET
Direktori Anda mencerminkan nama bucket Amazon S3 Anda.
-
Jalankan perintah berikut untuk mengunggah file dan memicu alur kerja untuk dijalankan:
put testfile.txt.gpg
-
Untuk tujuan file yang didekripsi, Anda menentukan
decrypted-files/
folder saat Anda membuat alur kerja. Sekarang, Anda dapat menavigasi ke folder itu dan daftar isinya.cd ../decrypted-files/ ls
Jika berhasil,
ls
perintah mencantumkantestfile.txt
file. Anda dapat mengunduh file ini dan memverifikasi bahwa itu sama dengan file asli yang Anda enkripsi sebelumnya.