Izin yang Diperlukan Untuk Digunakan AWS Lambda Dengan Ground Truth - Amazon SageMaker

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

Izin yang Diperlukan Untuk Digunakan AWS Lambda Dengan Ground Truth

Anda mungkin perlu mengonfigurasi beberapa atau semua hal berikut untuk membuat dan menggunakan AWS Lambda Ground Truth.

  • Anda perlu memberikan izin IAM peran atau pengguna (secara kolektif, IAM entitas) untuk membuat fungsi Lambda pra-anotasi dan pasca-anotasi menggunakan AWS Lambda, dan memilihnya saat membuat pekerjaan pelabelan.

  • Peran IAM eksekusi yang ditentukan saat tugas pelabelan dikonfigurasi memerlukan izin untuk menjalankan fungsi Lambda pra-anotasi dan pasca-anotasi.

  • Fungsi Lambda pasca-anotasi mungkin memerlukan izin untuk mengakses Amazon S3.

Gunakan bagian berikut untuk mempelajari cara membuat IAM entitas dan memberikan izin yang dijelaskan di atas.

Berikan Izin untuk Membuat dan Memilih AWS Lambda Fungsi

Jika Anda tidak memerlukan izin terperinci untuk mengembangkan fungsi Lambda pra-anotasi dan pasca-anotasi, Anda dapat melampirkan kebijakan terkelola ke pengguna atau peran. AWS AWSLambda_FullAccess Kebijakan ini memberikan izin luas untuk menggunakan semua fitur Lambda, serta izin untuk melakukan tindakan di layanan lain yang berinteraksi AWS dengan Lambda.

Untuk membuat kebijakan yang lebih terperinci untuk kasus penggunaan yang sensitif terhadap keamanan, lihat dokumentasi Kebijakan berbasis identitas untuk Lambda di Panduan Pengembang untuk mempelajari cara AWS Lambda membuat IAM kebijakan yang sesuai dengan kasus penggunaan Anda. IAM

Kebijakan untuk Menggunakan Konsol Lambda

Jika Anda ingin memberikan izin IAM entitas untuk menggunakan konsol Lambda, lihat Menggunakan konsol Lambda di Panduan Pengembang. AWS Lambda

Selain itu, jika Anda ingin pengguna dapat mengakses dan menerapkan fungsi pra-anotasi dan pasca-anotasi starter Ground Truth menggunakan di konsol Lambda AWS Serverless Application Repository , Anda harus menentukan <aws-region> di mana Anda ingin menerapkan fungsi (ini harus AWS Wilayah yang sama yang digunakan untuk membuat pekerjaan pelabelan), dan menambahkan kebijakan berikut ke peran. IAM

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "serverlessrepo:ListApplicationVersions", "serverlessrepo:GetApplication", "serverlessrepo:CreateCloudFormationTemplate" ], "Resource": "arn:aws:serverlessrepo:<aws-region>:838997950401:applications/aws-sagemaker-ground-truth-recipe" }, { "Sid": "VisualEditor1", "Effect": "Allow", "Action": "serverlessrepo:SearchApplications", "Resource": "*" } ] }

Kebijakan untuk Melihat Fungsi Lambda di Ground Truth Console

Untuk memberikan izin IAM entitas untuk melihat fungsi Lambda di konsol Ground Truth saat pengguna membuat pekerjaan pelabelan khusus, entitas harus memiliki izin yang dijelaskan di dalamnyaBerikan IAM Izin untuk Menggunakan Amazon SageMaker Ground Truth Console, termasuk izin yang dijelaskan di bagian. Izin Alur Kerja Pelabelan Kustom

Berikan Izin Peran IAM Eksekusi untuk Memanggil Fungsi AWS Lambda

Jika Anda menambahkan kebijakan IAM terkelola AmazonSageMakerGroundTruthExecutionke peran IAM eksekusi yang digunakan untuk membuat pekerjaan pelabelan, peran ini memiliki izin untuk mencantumkan dan memanggil fungsi Lambda dengan salah satu string berikut dalam nama fungsi:GtRecipe,,,, SageMaker atau. Sagemaker sagemaker LabelingFunction

Jika nama fungsi Lambda pra-anotasi atau pasca-anotasi tidak menyertakan salah satu istilah dalam paragraf sebelumnya, atau jika Anda memerlukan izin yang lebih terperinci daripada yang ada dalam kebijakan terkelola, Anda dapat menambahkan kebijakan yang serupa dengan berikut AmazonSageMakerGroundTruthExecution ini untuk memberikan izin peran eksekusi untuk menjalankan fungsi pra-anotasi dan pasca-anotasi.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "lambda:InvokeFunction", "Resource": [ "arn:aws:lambda:<region>:<account-id>:function:<pre-annotation-lambda-name>", "arn:aws:lambda:<region>:<account-id>:function:<post-annotation-lambda-name>" ] } ] }

Berikan Izin Lambda Pasca-Anotasi untuk Mengakses Anotasi

Seperti dijelaskan dalamLambda pasca-anotasi, permintaan Lambda pasca-anotasi menyertakan lokasi data anotasi di Amazon S3. Lokasi ini diidentifikasi oleh s3Uri string dalam payload objek. Untuk memproses anotasi saat masuk, bahkan untuk fungsi pass through sederhana, Anda perlu menetapkan izin yang diperlukan untuk peran eksekusi Lambda pasca-anotasi untuk membaca file dari Amazon S3.

Ada banyak cara Anda dapat mengonfigurasi Lambda Anda untuk mengakses data anotasi di Amazon S3. Dua cara umum adalah:

  • Izinkan peran eksekusi Lambda untuk mengambil peran eksekusi yang diidentifikasi roleArn dalam SageMaker permintaan Lambda pasca-anotasi. Peran SageMaker eksekusi ini adalah yang digunakan untuk membuat pekerjaan pelabelan, dan memiliki akses ke bucket keluaran Amazon S3 tempat data anotasi disimpan.

  • Berikan izin peran eksekusi Lambda untuk mengakses bucket keluaran Amazon S3 secara langsung.

Gunakan bagian berikut untuk mempelajari cara mengonfigurasi opsi ini.

Berikan Izin Lambda untuk Mengambil Peran Eksekusi SageMaker

Untuk mengizinkan fungsi Lambda mengambil peran SageMaker eksekusi, Anda harus melampirkan kebijakan ke peran eksekusi fungsi Lambda, dan memodifikasi hubungan kepercayaan peran SageMaker eksekusi untuk memungkinkan Lambda mengasumsikan peran tersebut.

  1. Lampirkan IAM kebijakan berikut ke peran eksekusi fungsi Lambda Anda untuk mengambil peran SageMaker eksekusi yang diidentifikasi. Resource Ganti 222222222222 dengan ID AWS akun. Ganti sm-execution-role dengan nama peran yang diasumsikan.

    { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::222222222222:role/sm-execution-role" } }
  2. Ubah kebijakan kepercayaan dari peran SageMaker eksekusi untuk memasukkan yang berikut iniStatement. Ganti 222222222222 dengan ID AWS akun. Ganti my-lambda-execution-role dengan nama peran yang diasumsikan.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::222222222222:role/my-lambda-execution-role" }, "Action": "sts:AssumeRole" } ] }

Berikan Izin Peran Eksekusi Lambda untuk Mengakses S3

Anda dapat menambahkan kebijakan yang mirip dengan berikut ini ke peran eksekusi fungsi Lambda pasca-anotasi untuk memberikan izin baca S3. Ganti amzn-s3-demo-bucket dengan nama bucket keluaran yang Anda tentukan saat membuat pekerjaan pelabelan.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }

Untuk menambahkan izin baca S3 ke peran eksekusi Lambda di konsol Lambda, gunakan prosedur berikut.

Tambahkan izin baca S3 ke Lambda pasca-anotasi:
  1. Buka halaman Fungsi di konsol Lambda.

  2. Pilih nama fungsi pasca-anotasi.

  3. Pilih Konfigurasi, lalu pilih Izin.

  4. Pilih nama Peran dan halaman ringkasan untuk peran itu terbuka di IAM konsol di tab baru.

  5. Pilih Lampirkan kebijakan.

  6. Lakukan salah satu hal berikut ini:

    • Cari dan pilih AmazonS3ReadOnlyAccessuntuk memberikan izin fungsi untuk membaca semua ember dan objek di akun.

    • Jika Anda memerlukan izin yang lebih terperinci, pilih Buat kebijakan dan gunakan contoh kebijakan di bagian sebelumnya untuk membuat kebijakan. Perhatikan bahwa Anda harus menavigasi kembali ke halaman ringkasan peran eksekusi setelah membuat kebijakan.

  7. Jika Anda menggunakan kebijakan AmazonS3ReadOnlyAccess terkelola, pilih Lampirkan kebijakan.

    Jika Anda membuat kebijakan baru, navigasikan kembali ke halaman ringkasan peran eksekusi Lambda dan lampirkan kebijakan yang baru saja Anda buat.