Contoh kebijakan berbasis identitas Amazon Transcribe - Amazon Transcribe

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

Contoh kebijakan berbasis identitas Amazon Transcribe

Secara default, pengguna dan peran tidak memiliki izin untuk membuat atau memodifikasiAmazon Transcribe sumber daya. Mereka juga tidak dapat melakukan tugas dengan menggunakanAWS Management Console,AWS Command Line Interface (AWS CLI), atauAWS API. Untuk memberikan izin kepada para pengguna untuk melakukan tindakan di sumber daya yang mereka perlukan, administrator IAM dapat membuat kebijakan IAM. Administrator kemudian dapat menambahkan kebijakan IAM ke peran, dan pengguna dapat mengambil peran.

Untuk mempelajari cara membuat kebijakan berbasis identitas IAM dengan menggunakan contoh dokumen kebijakan JSON ini, lihat Membuat kebijakan IAM dalam Panduan Pengguna IAM.

Untuk detail tentang tindakan dan jenis sumber daya yang ditentukan oleh Amazon Transcribe, termasuk format ARN untuk setiap jenis sumber daya, lihat Tindakan, sumber daya, dan kunci kondisi untuk Amazon Transcribe dalam Referensi Otorisasi Layanan.

Praktik terbaik kebijakan

Kebijakan berbasis identitas menentukan apakah seseorang dapat membuat, mengakses, atau menghapusAmazon Transcribe sumber daya di akun Anda. Tindakan ini membuat Akun AWS Anda terkena biaya. Ketika Anda membuat atau mengedit kebijakan berbasis identitas, ikuti panduan dan rekomendasi ini:

  • Memulai kebijakanAWS terkelola dan beralih ke izin paling sedikit hak istimewa — Untuk mulai memberikan izin kepada pengguna dan beban kerja Anda, gunakan kebijakanAWS terkelola yang memberikan izin untuk banyak kasus penggunaan umum. Mereka tersedia di AndaAkun AWS. Kami menyarankan Anda mengurangi izin lebih lanjut dengan menentukan kebijakan yang dikelolaAWS pelanggan yang spesifik untuk kasus penggunaan Anda. Untuk informasi selengkapnya, lihat kebijakanAWSAWS terkelola atau kebijakan terkelola untuk fungsi pekerjaan di Panduan Pengguna IAM.

  • Menerapkan izin hak akses terkecil — Saat Anda menetapkan izin dengan kebijakan IAM, berikan hanya izin yang diperlukan untuk melaksanakan tugas. Anda melakukan ini dengan menentukan tindakan yang dapat diambil pada sumber daya tertentu dalam kondisi tertentu, juga dikenal sebagai izin paling tidak memiliki hak istimewa. Untuk informasi selengkapnya tentang penggunaan IAM untuk menerapkan izin, lihat Kebijakan dan izin di IAM dalam Panduan Pengguna IAM.

  • Gunakan ketentuan dalam kebijakan IAM untuk membatasi akses lebih lanjut — Anda dapat menambahkan kondisi pada kebijakan Anda untuk membatasi akses ke tindakan dan sumber daya. Misalnya, Anda dapat menulis ketentuan kebijakan untuk menentukan bahwa semua permintaan harus dikirim menggunakan SSL. Anda juga dapat menggunakan kondisi untuk memberikan akses ke tindakan layanan jika digunakan melalui spesifikLayanan AWS, sepertiAWS CloudFormation. Untuk informasi selengkpanya, lihat Elemen kebijakan IAM JSON: Syarat 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 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 IAM Access Analyzer di Panduan Pengguna IAM.

  • Memerlukan otentikasi multi-faktor (MFA) — Jika Anda memiliki skenario yang mengharuskan pengguna IAM atau pengguna root di AndaAkun AWS, aktifkan MFA untuk keamanan tambahan. Untuk mewajibkan MFA saat operasi API dipanggil, tambahkan kondisi MFA ke kebijakan Anda. Untuk informasi selengkapnya, lihat Mengonfigurasi akses API yang dilindungi MFA di Panduan Pengguna IAM.

Untuk informasi selengkapnya tentang praktik terbaik dalam IAM, lihat praktik terbaik keamanan di IAM dalam Panduan Pengguna IAM.

Menggunakan AWS Management Console

Untuk mengakses konsol Amazon Transcribe, Anda harus memiliki rangkaian izin minimum. Izin ini harus mengizinkan Anda untuk membuat daftar dan melihat detail tentang sumber daya Amazon Transcribe di akun Akun AWS Anda. Jika Anda membuat kebijakan berbasis identitas yang lebih ketat dari izin minimum yang diperlukan, konsol tidak akan berfungsi sebagaimana dimaksudkan untuk entitas (pengguna atau peran) dengan kebijakan tersebut.

Anda tidak perlu meloloskan izin konsol minimum untuk pengguna yang hanya melakukan panggilan ke AWS CLI atau API AWS. Alih-alih, izinkan akses hanya ke tindakan yang sesuai dengan operasi API yang mereka coba lakukan.

Untuk memastikan bahwa entitas (pengguna dan peran) dapat menggunakan AWS Management Console, lampirkan salah satu kebijakan yangAWS dikelola berikut ini kepada mereka.

  • AmazonTranscribeFullAccess: Memberikan akses penuh untuk membuat, membaca, memperbarui, menghapus, dan menjalankan semuaAmazon Transcribe sumber daya. Hal ini juga memungkinkan akses keAmazon S3 embertranscribe dengan nama bucket.

  • AmazonTranscribeReadOnlyAccess: Memberikan akses hanya-baca keAmazon Transcribe sumber daya sehingga Anda bisa mendapatkan dan mencantumkan pekerjaan transkripsi dan kosakata khusus.

catatan

Anda dapat meninjau kebijakan izin terkelola dengan masuk ke halamanIAMAWS Management Console dan mencari berdasarkan nama kebijakan. Pencarian untuk “transkripsi” mengembalikan kedua kebijakan yang tercantum di atas (AmazonTranscribeReadOnlydan AmazonTranscribeFullAccess).

Anda dapat membuat kebijakan IAM khusus untuk memberikan izin untuk tindakan API Amazon Transcribe. Anda dapat melampirkan kebijakan kustom ini ke entitas yang memerlukan izin tersebut.

Izin yang diperlukan untukIAM peran

Jika Anda membuatIAM peran untuk dipanggilAmazon Transcribe, itu harus memiliki izin untuk mengaksesAmazon S3 bucket. Jika berlaku, jugaKMS key harus digunakan untuk mengenkripsi isi bucket. Lihat bagian berikut untuk contoh kebijakan.

Kebijakan kepercayaan

IAMEntitas yang Anda gunakan untuk membuat permintaan transkripsi harus memiliki kebijakan kepercayaan yang memungkinkanAmazon Transcribe untuk mengambil peran tersebut. Gunakan kebijakanAmazon Transcribe kepercayaan berikut. Perhatikan bahwa jika Anda membuat permintaan Analitik Panggilan real-time dengan analitik pasca-panggilan diaktifkan, Anda harus menggunakan 'Kebijakan kepercayaan untuk Analisis Panggilan waktu'.

Kebijakan kepercayaan untukAmazon Transcribe

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

Kebijakan kepercayaan untuk Analitik Panggilan real-time

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "transcribe.streaming.amazonaws.com" ] }, "Action": [ "sts:AssumeRole" ], "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "StringLike": { "aws:SourceArn": "arn:aws:transcribe:us-west-2:111122223333:*" } } } ] }

Amazon S3kebijakan bucket masukan

Kebijakan berikut memberikan izinIAM peran untuk mengakses file dari bucket masukan yang ditentukan.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-INPUT-BUCKET", "arn:aws:s3:::DOC-EXAMPLE-INPUT-BUCKET/*" ] } }

Amazon S3kebijakan bucket keluaran

Kebijakan berikut memberikan izinIAM peran untuk menulis file ke bucket keluaran yang ditentukan.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-OUTPUT-BUCKET/*" ] } }

Izin yang diperlukan untuk kunciAmazon S3 enkripsi

Jika Anda menggunakanKMS key untuk mengenkripsiAmazon S3 bucket, sertakan hal berikut dalamKMS key kebijakan. Ini memberikanAmazon Transcribe akses ke isi ember. Untuk informasi selengkapnya tentang mengizinkan aksesKMS keys, lihat Akun AWSMengizinkan eksternal mengaksesKMS key di PanduanAWS KMS Pengembang.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleRole" }, "Action": [ "kms:Decrypt" ], "Resource": "arn:aws:kms:us-west-2:111122223333:key/KMS-Example-KeyId" } ] }

Izinkan para pengguna untuk melihat izin mereka sendiri

Contoh ini menunjukkan cara Anda dapat membuat kebijakan yang mengizinkan para pengguna IAM untuk melihat kebijakan inline dan terkelola yang dilampirkan ke identitas pengguna mereka. Kebijakan ini mencakup izin untuk menyelesaikan tindakan pada konsol atau secara terprogram menggunakan API AWS CLI atau 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 KMSkebijakan konteks enkripsi

Kebijakan berikut memberikan izin “ExampleRole”IAM peran untuk menggunakan operasiAWS KMS Dekripsi dan Enkripsi untuk operasi khusus iniKMS key. Kebijakan ini hanya berfungsi untuk permintaan dengan setidaknya satu pasangan konteks enkripsi, dalam hal ini "color:indigoBlue”. Untuk informasi selengkapnya tentang konteksAWS KMS enkripsi, lihatAWS KMSkonteks enkripsi.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleRole" }, "Action": [ "kms:Decrypt", "kms:DescribeKey", "kms:Encrypt", "kms:GenerateDataKey*", "kms:ReEncrypt*" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:color":"indigoBlue" } } } ] }

Kebijakan pencegahan wakil bingung

Berikut adalah contoh kebijakan peran asumsikan yang menunjukkan bagaimana Anda dapat menggunakanaws:SourceArn danaws:SourceAccount denganAmazon Transcribe untuk mencegah masalah wakil yang membingungkan. Untuk informasi lebih lanjut tentang pencegahan wakil bingung, lihatPencegahan wakil bingung lintas layanan.

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

Melihat pekerjaan transkripsi berdasarkan tanda

Anda dapat menggunakan syarat dalam kebijakan berbasis identitas Anda untuk mengontrol akses ke sumber daya Amazon Transcribe berdasarkan tanda. Contoh ini menunjukkan cara bagaimana Anda dapat membuat kebijakan yang memungkinkan melihat pekerjaan transkripsi. Namun, izin diberikan hanya jika tanda pekerjaan transkripsiOwner memiliki nilai nama pengguna dari pengguna tersebut. Kebijakan ini juga memberi izin yang diperlukan untuk menyelesaikan tindakan ini menggunakan kebijakanAWS Management Console.

Anda dapat melampirkan kebijakan ini keIAM entitas di akun Anda. Jika peran bernamatest-role mencoba untuk melihat pekerjaan transkripsi, pekerjaan transkripsi harus ditandaiOwner=test-role atauowner=test-role (nama kunci kondisi tidak peka huruf besar), jika tidak maka akan ditolak aksesnya. Untuk informasi selengkapnya, lihat elemen kebijakanIAM JSON: Kondisi di PanduanIAM Pengguna.

Untuk informasi lebih lanjut tentang pemberian tagAmazon Transcribe, lihatPenandaan pada sumber daya .

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListTranscriptionJobsInConsole", "Effect": "Allow", "Action": "transcribe:ListTranscriptionJobs", "Resource": "*" }, { "Sid": "ViewTranscriptionJobsIfOwner", "Effect": "Allow", "Action": "transcribe:GetTranscriptionJobs", "Resource": "arn:aws:transcribe:*:*:transcription-job/*", "Condition": { "StringEquals": {"aws:ResourceTag/Owner": "${aws:username}"} } } ] }