IAMKebijakan untuk Log Percakapan - Amazon Lex

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

IAMKebijakan untuk Log Percakapan

Bergantung pada jenis logging yang Anda pilih, Amazon Lex V2 memerlukan izin untuk menggunakan Amazon CloudWatch Logs dan Amazon Simple Storage Service (S3) bucket untuk menyimpan log Anda. Anda harus membuat AWS Identity and Access Management peran dan izin untuk mengaktifkan Amazon Lex V2 mengakses sumber daya ini.

Membuat IAM Peran dan Kebijakan untuk Log Percakapan

Untuk mengaktifkan log percakapan, Anda harus memberikan izin menulis untuk CloudWatch Log dan Amazon S3. Jika Anda mengaktifkan enkripsi objek untuk objek S3 Anda, Anda harus memberikan izin akses ke AWS KMS kunci yang digunakan untuk mengenkripsi objek.

Anda dapat menggunakan IAM konsol, konsol IAMAPI, atau AWS Command Line Interface untuk membuat peran dan kebijakan. Instruksi ini menggunakan AWS CLI untuk membuat peran dan kebijakan.

catatan

Kode berikut diformat untuk Linux dan macOS. Untuk Windows, ganti karakter kelanjutan baris Linux (\) dengan tanda sisipan (^).

Untuk membuat IAM peran untuk log percakapan
  1. Buat dokumen di direktori saat ini yang disebutLexConversationLogsAssumeRolePolicyDocument.json, tambahkan kode berikut ke dalamnya, dan simpan. Dokumen kebijakan ini menambahkan Amazon Lex V2 sebagai entitas tepercaya ke peran tersebut. Hal ini memungkinkan Amazon Lex untuk mengambil peran untuk mengirimkan log ke sumber daya yang dikonfigurasi untuk log percakapan.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "lexv2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Dalam AWS CLI, jalankan perintah berikut untuk membuat IAM peran untuk log percakapan.

    aws iam create-role \ --role-name role-name \ --assume-role-policy-document file://LexConversationLogsAssumeRolePolicyDocument.json

Selanjutnya, buat dan lampirkan kebijakan ke peran yang memungkinkan Amazon Lex V2 menulis ke CloudWatch Log.

Membuat IAM kebijakan untuk mencatat teks percakapan ke CloudWatch Log
  1. Buat dokumen di direktori saat ini yang disebutLexConversationLogsCloudWatchLogsPolicy.json, tambahkan IAM kebijakan berikut ke dalamnya, dan simpan.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:region:account-id:log-group:log-group-name:*" } ] }
  2. Di dalam AWS CLI, buat IAM kebijakan yang memberikan izin menulis ke grup CloudWatch log Log.

    aws iam create-policy \ --policy-name cloudwatch-policy-name \ --policy-document file://LexConversationLogsCloudWatchLogsPolicy.json
  3. Lampirkan kebijakan ke IAM peran yang Anda buat untuk log percakapan.

    aws iam attach-role-policy \ --policy-arn arn:aws:iam::account-id:policy/cloudwatch-policy-name \ --role-name role-name

Jika Anda mencatat audio ke bucket S3, buat kebijakan yang memungkinkan Amazon Lex V2 menulis ke bucket.

Untuk membuat IAM kebijakan untuk pencatatan audio ke bucket S3
  1. Buat dokumen di direktori saat ini yang disebutLexConversationLogsS3Policy.json, tambahkan kebijakan berikut ke dalamnya, dan simpan.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::bucket-name/*" } ] }
  2. Di dalam AWS CLI, buat IAM kebijakan yang memberikan izin menulis ke bucket S3 Anda.

    aws iam create-policy \ --policy-name s3-policy-name \ --policy-document file://LexConversationLogsS3Policy.json
  3. Lampirkan kebijakan ke peran yang Anda buat untuk log percakapan.

    aws iam attach-role-policy \ --policy-arn arn:aws:iam::account-id:policy/s3-policy-name \ --role-name role-name

Memberikan Izin untuk Melewati Peran IAM

Saat Anda menggunakan konsol, AWS Command Line Interface, atau AWS SDK untuk menentukan IAM peran yang akan digunakan untuk log percakapan, pengguna yang menentukan IAM peran log percakapan harus memiliki izin untuk meneruskan peran tersebut ke Amazon Lex V2. Untuk mengizinkan pengguna meneruskan peran ke Amazon Lex V2, Anda harus memberikan PassRole izin kepada IAM pengguna, peran, atau grup pengguna.

Kebijakan berikut menentukan izin untuk diberikan kepada pengguna, peran, atau grup. Anda dapat menggunakan tombol iam:AssociatedResourceArn dan iam:PassedToService kondisi untuk membatasi ruang lingkup izin. Untuk informasi selengkapnya, lihat Memberikan Izin Pengguna untuk Meneruskan Peran ke Kunci Konteks AWS Layanan IAM dan AWS STS Kondisi di AWS Identity and Access Management Panduan Pengguna.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::account-id:role/role-name", "Condition": { "StringEquals": { "iam:PassedToService": "lexv2.amazonaws.com" }, "StringLike": { "iam:AssociatedResourceARN": "arn:aws:lex:region:account-id:bot:bot-name:bot-alias" } } } ] }