Berbagi model khusus dengan yang lain Akun AWS - Amazon Comprehend

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

Berbagi model khusus dengan yang lain Akun AWS

Dengan Amazon Comprehend, Anda dapat membagikan model kustom Anda dengan orang lain, sehingga mereka dapat mengimpor model Anda ke akun mereka. AWS Saat pengguna mengimpor salah satu model kustom Anda, mereka membuat model kustom baru di akun mereka. Model baru mereka menduplikasi yang Anda bagikan.

Untuk membagikan model kustom, Anda melampirkan kebijakan yang mengizinkan orang lain untuk mengimpornya. Kemudian, Anda memberi pengguna tersebut detail yang mereka butuhkan.

catatan

Saat pengguna lain mengimpor model kustom yang telah Anda bagikan, mereka harus menggunakan model yang sama Wilayah AWS —misalnya, US East (Virginia N.) — yang berisi model Anda.

Sebelum Anda memulai

Sebelum Anda dapat berbagi model, Anda harus memiliki pengklasifikasi kustom terlatih atau pengenal entitas kustom di Amazon Comprehend di Anda. Akun AWS Untuk informasi selengkapnya tentang melatih model kustom, lihat Klasifikasi kustom atauPengakuan entitas khusus.

Izin yang diperlukan

Sebelum Anda dapat menambahkan kebijakan berbasis sumber daya ke model kustom, Anda memerlukan izin di (IAM). AWS Identity and Access Management Pengguna, grup, atau peran Anda harus memiliki kebijakan yang dilampirkan sehingga Anda dapat membuat, mendapatkan, dan menghapus kebijakan model, seperti yang ditunjukkan pada contoh berikut.

contoh Kebijakan IAM untuk mengelola kebijakan berbasis sumber daya untuk model kustom
{ "Effect": "Allow", "Action": [ "comprehend:PutResourcePolicy", "comprehend:DeleteResourcePolicy", "comprehend:DescribeResourcePolicy" ], "Resource": "arn:aws:comprehend:us-west-2:111122223333:document-classifier/foo/version/*" }

Untuk informasi tentang membuat kebijakan IAM, lihat Membuat kebijakan IAM di Panduan Pengguna IAM. Untuk informasi tentang melampirkan kebijakan IAM, lihat Menambahkan dan menghapus izin identitas IAM di Panduan Pengguna IAM.

Jika Anda berbagi model terenkripsi, Anda mungkin perlu menambahkan izin untuk. AWS KMS Persyaratan ini tergantung pada jenis kunci KMS yang Anda gunakan untuk mengenkripsi model di Amazon Comprehend.

An Kunci milik AWSdimiliki dan dikelola oleh suatu AWS layanan. Jika Anda menggunakanKunci milik AWS, Anda tidak perlu menambahkan izin untukAWS KMS, dan Anda dapat melewati bagian ini.

Kunci yang dikelola Pelanggan adalah kunci yang Anda buat, miliki, dan kelola di AndaAkun AWS. Jika Anda menggunakan kunci yang dikelola pelanggan, Anda harus menambahkan pernyataan ke kebijakan kunci KMS Anda.

Pernyataan kebijakan memberi wewenang kepada satu atau lebih entitas (seperti pengguna atau akun) untuk melakukan AWS KMS operasi yang diperlukan untuk mendekripsi model.

Anda menggunakan tombol kondisi untuk membantu mencegah masalah wakil yang membingungkan. Untuk informasi selengkapnya, lihat Pencegahan confused deputy lintas layanan.

Gunakan kunci kondisi berikut dalam kebijakan untuk memvalidasi entitas yang mengakses kunci KMS Anda. Saat pengguna mengimpor model, AWS KMS periksa apakah ARN versi model sumber cocok dengan kondisi tersebut. Jika Anda tidak menyertakan kondisi dalam kebijakan, prinsipal yang ditentukan dapat menggunakan kunci KMS Anda untuk mendekripsi versi model apa pun:

  • aws: SourceArn — Gunakan kunci kondisi ini dengan kms:GenerateDataKey dan kms:Decrypt tindakan.

  • kms: EncryptionContext — Gunakan tombol kondisi ini dengankms:GenerateDataKey,kms:Decrypt, dan kms:CreateGrant tindakan.

Dalam contoh berikut, kebijakan mengizinkan Akun AWS 444455556666 untuk menggunakan versi 1 dari model pengklasifikasi tertentu yang dimiliki oleh. Akun AWS 111122223333

contoh Kebijakan kunci KMS untuk mengakses versi model pengklasifikasi tertentu
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::444455556666:root" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:comprehend:us-west-2:111122223333:document-classifier/classifierName/version/1" } } }, { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::444455556666:root" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:comprehend:arn": "arn:aws:comprehend:us-west-2:111122223333:document-classifier/classifierName/version/1" } } } ] }

Contoh kebijakan berikut mengotorisasi pengguna ExampleUser dari Akun AWS 444455556666 dan ExampleRoledari Akun AWS 123456789012 untuk mengakses kunci KMS ini melalui layanan Amazon Comprehend.

contoh Kebijakan kunci KMS untuk mengizinkan akses ke layanan Amazon Comprehend (alternatif 1).
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::444455556666:user/ExampleUser", "arn:aws:iam::123456789012:role/ExampleRole" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringLike": { "aws:SourceArn": "arn:aws:comprehend:*" } } }, { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::444455556666:user/ExampleUser", "arn:aws:iam::123456789012:role/ExampleRole" ] }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:comprehend:arn": "arn:aws:comprehend:*" } } } ] }

Contoh kebijakan berikut mengizinkan Akun AWS 444455556666 untuk mengakses kunci KMS ini melalui layanan Amazon Comprehend, menggunakan sintaks alternatif untuk contoh sebelumnya.

contoh Kebijakan kunci KMS untuk mengizinkan akses ke layanan Amazon Comprehend (alternatif 2).
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::444455556666:root" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:CreateGrant" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:comprehend:arn": "arn:aws:comprehend:*" } } } ] }

Untuk informasi selengkapnya, lihat Kebijakan kunci di AWS KMS di Panduan Developer AWS Key Management Service.

Kebijakan berbasis sumber daya untuk model kustom

Sebelum pengguna Amazon Comprehend Akun AWS di lain dapat mengimpor model kustom AWS dari akun Anda, Anda harus memberi wewenang kepada mereka untuk melakukannya. Untuk mengotorisasi mereka, Anda menambahkan kebijakan berbasis sumber daya ke versi model yang ingin Anda bagikan. Kebijakan berbasis sumber daya adalah kebijakan IAM yang Anda lampirkan ke sumber daya. AWS

Saat Anda melampirkan kebijakan sumber daya ke versi model kustom, kebijakan tersebut mengizinkan pengguna, grup, atau peran untuk melakukan comprehend:ImportModel tindakan pada versi model.

contoh Kebijakan berbasis sumber daya untuk versi model kustom

Contoh ini menentukan entitas yang berwenang dalam Principal atribut. Sumber daya “*” mengacu pada versi model tertentu yang Anda lampirkan kebijakan.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "comprehend:ImportModel", "Resource": "*", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root", "arn:aws:iam::444455556666:user/ExampleUser", "arn:aws:iam::123456789012:role/ExampleRole" ] } } ] }

Untuk kebijakan yang Anda lampirkan ke model kustom, comprehend:ImportModel adalah satu-satunya tindakan yang didukung Amazon Comprehend.

Untuk informasi selengkapnya tentang kebijakan berbasis sumber daya, lihat Kebijakan berbasis identitas dan kebijakan berbasis sumber daya di Panduan Pengguna IAM.

Langkah 1: Tambahkan kebijakan berbasis sumber daya ke model kustom

Anda dapat menambahkan kebijakan berbasis sumber daya dengan menggunakan,AWS Management Console, atau AWS CLI Amazon Comprehend API.

Anda dapat menggunakan Amazon Comprehend di. AWS Management Console

Untuk menambahkan kebijakan berbasis sumber daya
  1. Masuk ke AWS Management Console dan buka konsol Amazon Comprehend di https://console.aws.amazon.com/comprehend/

  2. Di menu navigasi di sebelah kiri, di bawah Kustomisasi, pilih halaman yang berisi model kustom Anda:

    1. Jika Anda berbagi pengklasifikasi dokumen kustom, pilih Klasifikasi kustom.

    2. Jika Anda berbagi pengenal entitas kustom, pilih Pengenalan entitas kustom.

  3. Dalam daftar model, pilih nama model untuk membuka halaman detailnya.

  4. Di bawah Versi, pilih nama versi model yang ingin Anda bagikan.

  5. Pada halaman detail versi, pilih tab Tag, VPC & Kebijakan.

  6. Di bagian Kebijakan berbasis sumber daya, pilih Edit.

  7. Pada halaman Edit kebijakan berbasis sumber daya, lakukan hal berikut:

    1. Untuk nama Kebijakan, masukkan nama yang akan membantu Anda mengenali kebijakan setelah Anda membuatnya.

    2. Di bawah Otorisasi, tentukan satu atau beberapa entitas berikut untuk mengotorisasi mereka untuk mengimpor model Anda:

      Bidang Definisi dan contoh

      Prinsipal layanan

      Pengidentifikasi utama layanan untuk layanan yang dapat mengakses versi model ini. Sebagai contoh:

      comprehend.amazonaws.com

      Akun AWSID

      Akun AWSyang dapat mengakses versi model ini. Mengotorisasi semua pengguna yang termasuk dalam akun. Sebagai contoh:

      111122223333, 123456789012

      Entitas IAM

      ARN untuk pengguna atau peran yang dapat mengakses versi model ini. Sebagai contoh:

      arn:aws:iam: :111122223333:user/, arn:aws:iam: :444455556666: peran/ ExampleUser ExampleRole

  8. Di bawah Bagikan, Anda dapat menyalin ARN versi model untuk membantu Anda membagikannya dengan orang yang akan mengimpor model Anda. Ketika seseorang mengimpor model khusus dari yang berbedaAkun AWS, versi model ARN diperlukan.

  9. Pilih Simpan. Amazon Comprehend membuat kebijakan berbasis sumber daya Anda dan melampirkannya ke model Anda.

Untuk menambahkan kebijakan berbasis sumber daya ke model kustom denganAWS CLI, gunakan perintah. PutResourcePolicy Perintah membawa parameter berikut:

  • resource-arn— ARN dari model kustom, termasuk versi model.

  • resource-policy— File JSON yang mendefinisikan kebijakan berbasis sumber daya untuk dilampirkan ke model kustom Anda.

    Anda juga dapat memberikan kebijakan sebagai string JSON sebaris. Untuk memberikan JSON yang valid untuk kebijakan Anda, lampirkan nama atribut dan nilai-nilai dalam tanda kutip ganda. Jika badan JSON juga terlampir dalam tanda kutip ganda, Anda lolos dari tanda kutip ganda yang ada di dalam kebijakan.

  • policy-revision-id— ID revisi yang Amazon Comprehend ditetapkan ke kebijakan yang Anda perbarui. Jika Anda membuat kebijakan baru yang tidak memiliki versi sebelumnya, jangan gunakan parameter ini. Amazon Comprehend membuat ID revisi untuk Anda.

contoh Menambahkan kebijakan berbasis sumber daya ke model kustom menggunakan perintah put-resource-policy

Contoh ini mendefinisikan kebijakan dalam file JSON bernama PolicyFile.json dan mengaitkan kebijakan ke model. Model ini adalah versi v2 dari classifier bernama mycf1.

$ aws comprehend put-resource-policy \ > --resource-arn arn:aws:comprehend:us-west-2:111122223333:document-classifier/mycf1/version/v2 \ > --resource-policy file://policyFile.json \ > --policy-revision-id revision-id

File JSON untuk kebijakan sumber daya berisi konten berikut:

  • Tindakan — Kebijakan ini memberi wewenang kepada prinsipal yang disebutkan untuk digunakan. comprehend:ImportModel

  • Sumber Daya — ARN dari model kustom. Sumber daya “*” mengacu pada versi model yang Anda tentukan dalam put-resource-policy perintah.

  • Principal — Kebijakan ini mengotorisasi pengguna jane dari Akun AWS 444455556666 dan semua pengguna dari 123456789012. Akun AWS

{ "Version":"2012-10-17", "Statement":[ {"Sid":"ResourcePolicyForImportModel", "Effect":"Allow", "Action":["comprehend:ImportModel"], "Resource":"*", "Principal": {"AWS": ["arn:aws:iam::444455556666:user/jane", "123456789012"] } } ] }

Untuk menambahkan kebijakan berbasis sumber daya ke model kustom menggunakan Amazon Comprehend API, gunakan operasi API. PutResourcePolicy

Anda juga dapat menambahkan kebijakan ke model kustom dalam permintaan API yang membuat model. Untuk melakukan ini, berikan JSON kebijakan untuk ModelPolicy parameter saat Anda mengirimkan CreateDocumentClassifieratau CreateEntityRecognizerpermintaan.

Langkah 2: Berikan detail yang perlu diimpor orang lain

Sekarang setelah Anda menambahkan kebijakan berbasis sumber daya ke model kustom Anda, Anda telah mengizinkan pengguna Amazon Comprehend lainnya untuk mengimpor model Anda ke model mereka. Akun AWS Namun, sebelum mereka dapat mengimpor, Anda harus memberi mereka rincian berikut:

  • Amazon Resource Name (ARN) versi model.

  • Wilayah AWSYang berisi model. Siapa pun yang mengimpor model Anda harus menggunakan yang samaWilayah AWS.

  • Apakah model dienkripsi, dan jika ya, jenis AWS KMS kunci yang Anda gunakan: Kunci milik AWS atau kunci yang dikelola pelanggan.

  • Jika model Anda dienkripsi dengan kunci yang dikelola pelanggan, maka Anda harus memberikan ARN kunci KMS. Siapa pun yang mengimpor model Anda harus menyertakan ARN dalam peran layanan IAM di dalamnya. Akun AWS Peran ini mengizinkan Amazon Comprehend untuk menggunakan kunci KMS untuk mendekripsi model selama impor.

Untuk informasi selengkapnya tentang cara pengguna lain mengimpor model Anda, lihatMengimpor model khusus dari yang lain Akun AWS.