Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat Tenaga Kerja Swasta (OIDC iDP)
Buat tenaga kerja pribadi menggunakan Penyedia Identitas OpenID Connect (OIDC) saat Anda ingin mengautentikasi dan mengelola pekerja menggunakan penyedia identitas Anda sendiri. Gunakan halaman ini untuk mempelajari cara mengonfigurasi IDP Anda agar berkomunikasi dengan Amazon SageMaker Ground Truth (Ground Truth) atau Amazon Augmented AI (Amazon A2I) dan mempelajari cara membuat tenaga kerja menggunakan IDP Anda sendiri.
Untuk membuat tenaga kerja menggunakan OIDC iDP, iDP Anda harus mendukung grup karena Ground Truth dan Amazon A2I menggunakan satu atau beberapa grup yang Anda tentukan untuk membuat tim kerja. Anda menggunakan tim kerja untuk menentukan pekerja untuk pekerjaan pelabelan Anda dan tugas peninjauan manusia. Karena grup bukan klaim standarsagemaker:groups
yang dikirim ke Ground Truth atau Amazon A2I dari iDP Anda. Untuk mempelajari selengkapnya, lihat Kirim Klaim yang Diperlukan dan Opsional ke Ground Truth dan Amazon A2I.
Anda membuat tenaga kerja OIDC iDP menggunakan operasi API. SageMaker CreateWorkforce
Setelah Anda membuat tenaga kerja pribadi, tenaga kerja tersebut dan semua tim kerja serta pekerja yang terkait dengannya tersedia untuk digunakan untuk semua tugas pekerjaan pelabelan Ground Truth dan tugas alur kerja peninjauan manusia Amazon A2I. Untuk mempelajari selengkapnya, lihat Buat Tenaga Kerja IDP OIDC.
Kirim Klaim yang Diperlukan dan Opsional ke Ground Truth dan Amazon A2I
Ketika Anda menggunakan IDP Anda sendiri, Ground Truth dan Amazon A2I menggunakan AndaIssuer
,ClientId
, dan ClientSecret
untuk mengautentikasi pekerja dengan mendapatkan KODE otentikasi dari Anda. AuthorizationEndpoint
Ground Truth dan Amazon A2I akan menggunakan KODE ini untuk mendapatkan klaim khusus dari IDP Anda atau. TokenEndpoint
UserInfoEndpoint
Anda dapat mengonfigurasi TokenEndpoint
untuk mengembalikan token web JSON (JWT) atau UserInfoEndpoint
mengembalikan objek JSON. Objek JWT atau JSON harus berisi klaim wajib dan opsional yang Anda tentukan. Klaim
catatan
Beberapa parameter dalam tabel berikut dapat ditentukan menggunakan a :
atau a-
. Misalnya, Anda dapat menentukan grup yang digunakan pekerja sagemaker:groups
atau sagemaker-groups
dalam klaim Anda.
Nama | Diperlukan | Format dan Nilai yang Diterima | Deskripsi | Contoh |
---|---|---|---|---|
|
Ya |
Tipe data: Jika seorang pekerja termasuk dalam satu grup, identifikasi grup menggunakan string. Jika seorang pekerja termasuk dalam beberapa grup, gunakan daftar hingga 10 string. Karakter yang diijinkan: Regex: [\ p {L}\ p {M}\ p {S}\ p {N}\ p {P}] + Kuota: 10 kelompok per pekerja 63 karakter per nama grup |
Menugaskan seorang pekerja ke satu atau lebih kelompok. Kelompok digunakan untuk memetakan pekerja ke dalam tim kerja. |
Contoh pekerja yang termasuk dalam satu kelompok: Contoh pekerja yang termasuk dalam lebih dari satu kelompok: |
|
Ya |
Tipe data: String |
Ini wajib untuk melacak identitas pekerja di dalam platform Ground Truth untuk audit dan untuk mengidentifikasi tugas yang dikerjakan oleh pekerja tersebut. Untuk ADFS: Pelanggan harus menggunakan Primary Security Identifier (SID). |
|
|
Ya |
Tipe data: String Karakter yang diijinkan: Regex: [\ w+-] + Kutipan: 128 karakter |
ID klien. Semua token harus dikeluarkan untuk ID klien ini. |
|
|
Ya |
Tipe data: String |
Nama pekerja yang akan ditampilkan di portal pekerja. |
|
|
Tidak |
Tipe data: String |
Email pekerja. Ground Truth menggunakan email ini untuk memberi tahu pekerja bahwa mereka telah diundang untuk mengerjakan tugas pelabelan. Ground Truth juga akan menggunakan email ini untuk memberi tahu pekerja Anda saat tugas pelabelan tersedia jika Anda menyiapkan topik Amazon SNS untuk tim kerja tempat pekerja ini aktif. |
|
|
Tidak |
Tipe data: Bool Nilai yang Diterima:
|
Menunjukkan apakah email pengguna telah diverifikasi atau tidak. |
|
Berikut ini contoh sintaks objek JSON Anda UserInfoEndpoint
dapat kembali.
{ "sub":"
122
", "exp":"10000
", "sagemaker-groups":["group1
","group2
"] "sagemaker-name":"name
", "sagemaker-sub":"122
", "sagemaker-client_id":"123456
" }
Ground Truth atau Amazon A2I membandingkan grup yang tercantum dalam sagemaker:groups
atau sagemaker-groups
untuk memverifikasi bahwa pekerja Anda termasuk dalam tim kerja yang ditentukan dalam pekerjaan pelabelan atau tugas peninjauan manusia. Setelah tim kerja diverifikasi, tugas pelabelan atau peninjauan manusia dikirim ke pekerja itu.
Buat Tenaga Kerja IDP OIDC
Anda dapat membuat tenaga kerja menggunakan operasi SageMaker API CreateWorkforce
dan SDK khusus bahasa terkait. Tentukan WorkforceName
dan informasi tentang IDP OIDC Anda di parameter. OidcConfig
Sebaiknya Anda mengonfigurasi OIDC Anda dengan URI pengalihan place-holder, lalu memperbarui URI dengan URL portal pekerja setelah Anda membuat tenaga kerja. Untuk mempelajari selengkapnya, lihat Konfigurasikan IDP OIDC Anda.
Berikut ini menunjukkan contoh permintaan. Lihat CreateWorkforce
untuk mempelajari lebih lanjut tentang setiap parameter dalam permintaan ini.
CreateWorkforceRequest: { #required fields WorkforceName: "
example-oidc-workforce
", OidcConfig: { ClientId: "clientId
", ClientSecret: "secret
", Issuer: "https://example-oidc-idp.com/adfs
", AuthorizationEndpoint: "https://example-oidc-idp.com/adfs/oauth2/authorize
", TokenEndpoint: "https://example-oidc-idp.com/adfs/oauth2/token
", UserInfoEndpoint: "https://example-oidc-idp.com/adfs/oauth2/userInfo
", LogoutEndpoint: "https://example-oidc-idp.com/adfs/oauth2/log-out
", JwksUri: "https://example-oidc-idp.com/adfs/discovery/keys
" }, SourceIpConfig: { Cidrs: ["string", "string"
] } }
Konfigurasikan IDP OIDC Anda
Cara Anda mengonfigurasi IDP OIDC tergantung pada IDP yang Anda gunakan, dan persyaratan bisnis Anda.
Saat mengonfigurasi iDP, Anda harus menentukan URI callback atau redirect. Setelah Ground Truth atau Amazon A2I mengautentikasi pekerja, URI ini akan mengarahkan pekerja ke portal pekerja tempat pekerja dapat mengakses tugas pelabelan atau peninjauan manusia. Untuk membuat URL portal pekerja, Anda perlu membuat tenaga kerja dengan detail IDP OIDC Anda menggunakan operasi API. CreateWorkforce
Secara khusus, Anda harus mengonfigurasi IDP OIDC Anda dengan klaim pembuat sagemaker kustom yang diperlukan (lihat bagian selanjutnya untuk lebih jelasnya). Oleh karena itu, Anda disarankan untuk mengonfigurasi OIDC Anda dengan URI pengalihan place-holder, dan kemudian memperbarui URI setelah Anda membuat tenaga kerja. Lihat Buat Tenaga Kerja IDP OIDC untuk mempelajari cara membuat tenaga kerja menggunakan API ini.
Anda dapat melihat URL portal pekerja Anda di konsol SageMaker Ground Truth, atau menggunakan operasi SageMaker API,DescribeWorkforce
. URL portal pekerja ada di SubDomain
parameter dalam respons.
penting
Pastikan Anda menambahkan subdomain tenaga kerja ke daftar izin OIDC iDP Anda. Ketika Anda menambahkan subdomain ke daftar izinkan Anda, itu harus diakhiri dengan/oauth2/idpresponse
.
Untuk melihat URL portal pekerja Anda setelah membuat tenaga kerja pribadi (Konsol):
-
Buka SageMaker konsol di https://console.aws.amazon.com/sagemaker/
. -
Di panel navigasi, pilih Pelabelan tenaga kerja.
-
Pilih tab Private.
-
Dalam ringkasan tenaga kerja pribadi, Anda akan melihat URL masuk portal Pelabelan. Ini adalah URL portal pekerja Anda.
Untuk melihat URL portal pekerja Anda setelah membuat tenaga kerja pribadi (API):
Saat Anda membuat tenaga kerja pribadi menggunakanCreateWorkforce
, Anda menentukan. WorkforceName
Gunakan nama ini untuk menelepon DescribeWorkforce
. Tabel berikut mencakup contoh permintaan menggunakan AWS CLI dan AWS SDK for Python (Boto3).
Validasi Respons Otentikasi Tenaga Kerja OIDC IDP Anda
Setelah Anda membuat tenaga kerja OIDC IDP, Anda dapat menggunakan prosedur berikut untuk memvalidasi alur kerja otentikasi menggunakan cURL. Prosedur ini mengasumsikan Anda memiliki akses ke terminal, dan bahwa Anda telah menginstal cURL.
Untuk memvalidasi respons otorisasi IDP OIDC Anda:
-
Dapatkan kode otorisasi menggunakan URI yang dikonfigurasi sebagai berikut:
{AUTHORIZE ENDPOINT}
?client_id={CLIENT ID}
&redirect_uri={REDIRECT URI}
&scope={SCOPE}
&response_type=code-
Ganti
dengan titik akhir otorisasi untuk IDP OIDC Anda.{AUTHORIZE ENDPOINT}
-
Ganti
dengan ID Klien dari klien OAuth Anda.{CLIENT ID}
-
Ganti
dengan URL portal pekerja. Jika belum ada, Anda harus menambahkan{REDIRECT URI}
/oauth2/idpresponse
ke akhir URL. -
Jika Anda memiliki cakupan khusus, gunakan untuk mengganti
. Jika Anda tidak memiliki ruang lingkup khusus, ganti{SCOPE}
dengan{SCOPE}
openid
.
Berikut ini adalah contoh URI setelah modifikasi di atas dibuat:
https://example.com/authorize?client_id=f490a907-9bf1-4471-97aa-6bfd159f81ac&redirect_uri=https%3A%2F%2F%2Fexample.labeling.sagemaker.aws%2Foauth2%2Fidpresponse&response_type=code&scope=openid
-
-
Salin dan tempel URI yang dimodifikasi dari langkah 1 ke browser Anda dan tekan Enter pada keyboard Anda.
-
Otentikasi menggunakan IDP Anda.
-
Salin parameter kueri kode otentikasi di URI. Parameter ini makhluk dengan
code=
. Berikut ini adalah contoh seperti apa responsnya. Dalam contoh ini, salincode=MCNYDB...
dan semuanya sesudahnya.https://example.labeling.sagemaker.aws/oauth2/idpresponse?code=MCNYDB....
-
Buka terminal dan masukkan perintah berikut setelah membuat modifikasi yang diperlukan tercantum di bawah ini:
curl --request POST \ --url '
{TOKEN ENDPOINT}
' \ --header 'content-type: application/x-www-form-urlencoded' \ --data grant_type=authorization_code \ --data 'client_id={CLIENT ID}
' \ --data client_secret={CLIENT SECRET}
\ --data code={CODE}
\ --data 'redirect_uri={REDIRECT URI}
'-
Ganti
dengan titik akhir token untuk OIDC iDP Anda.{TOKEN ENDPOINT}
-
Ganti
dengan ID Klien dari klien OAuth Anda.{CLIENT ID}
-
Ganti
dengan Rahasia Klien dari klien OAuth Anda.{CLIENT SECRET}
-
Ganti
dengan parameter kueri kode otentikasi yang Anda salin di langkah 4.{CODE}
-
Ganti
dengan URL portal pekerja.{REDIRECT URI}
Berikut ini adalah contoh permintaan cURL setelah melakukan modifikasi yang dijelaskan di atas:
curl --request POST \ --url 'https://example.com/token' \ --header 'content-type: application/x-www-form-urlencoded' \ --data grant_type=authorization_code \ --data 'client_id=f490a907-9bf1-4471-97aa-6bfd159f81ac' \ --data client_secret=client-secret \ --data code=MCNYDB... \ --data 'redirect_uri=https://example.labeling.sagemaker.aws/oauth2/idpresponse'
-
-
Langkah ini tergantung pada jenis pengembalian IDP
access_token
Anda, token akses teks biasa atau token akses JWT.-
Jika IDP Anda tidak mendukung token akses JWT,
access_token
mungkin teks biasa (misalnya, UUID). Respons yang Anda lihat mungkin terlihat mirip dengan yang berikut ini. Dalam hal ini, pindah ke langkah 7.{ "access_token":"179c144b-fccb-4d96-a28f-eea060f39c13", "token_type":"Bearer", "expires_in":3600, "refresh_token":"ef43e52e-9b4f-410c-8d4c-d5c5ee57631a", "scope":"openid" }
-
Jika IDP Anda mendukung token akses JWT, langkah 5 harus menghasilkan token akses dalam format JWT. Misalnya, responsnya mungkin terlihat mirip dengan yang berikut:
{ "access_token":"eyJh...JV_adQssw5c", "refresh_token":"i6mapTIAVSp2oJkgUnCACKKfZxt_H5MBLiqcybBBd04", "refresh_token_expires_in":6327, "scope":"openid", "id_token":"eyJ0eXAiOiJK9...-rDaQzUHl6cQQWNiDpWOl_lxXjQEvQ" }
Salin JWT dan dekodekan. Anda dapat menggunakan skrip python atau situs web pihak ketiga untuk memecahkan kode itu. Misalnya, Anda dapat pergi ke situs web https://jwt.io/
dan menempelkan JWT ke dalam kotak Encoded untuk memecahkan kode itu. Pastikan respons yang diterjemahkan berisi yang berikut ini:
-
SageMaker Klaim yang Diperlukan dalam tabel yang ditemukan diKirim Klaim yang Diperlukan dan Opsional ke Ground Truth dan Amazon A2I. Jika tidak, Anda harus mengkonfigurasi ulang OIDC IDP Anda untuk memuat klaim ini.
-
Penerbit yang Anda tentukan saat menyiapkan tenaga kerja IDP.
-
-
-
Di terminal dan masukkan perintah berikut setelah membuat modifikasi yang diperlukan tercantum di bawah ini:
curl -X POST -H 'Authorization: Bearer
{ACCESS TOKEN}
' -d '' -k -v{USERINFO ENDPOINT}
-
Ganti
dengan endpoint info pengguna untuk IDP OIDC Anda.{USERINFO ENDPOINT}
-
Ganti
dengan token akses dalam respons yang Anda terima di langkah 7. Ini adalah entri untuk{ACCESS TOKEN}
"access_token"
parameter.
Berikut ini adalah contoh permintaan cURL setelah melakukan modifikasi yang dijelaskan di atas:
curl -X POST -H 'Authorization: Bearer eyJ0eX...' -d '' -k -v https://example.com/userinfo
-
-
Respons terhadap langkah terakhir dalam prosedur di atas mungkin terlihat mirip dengan blok kode berikut.
Jika yang
access_token
dikembalikan pada langkah 6 adalah teks biasa, Anda harus memverifikasi bahwa respons ini berisi informasi yang diperlukan. Dalam hal ini, respons harus berisi SageMaker klaim yang Diperlukan dalam tabel yang ditemukan diKirim Klaim yang Diperlukan dan Opsional ke Ground Truth dan Amazon A2I. Misalnya,sagemaker-groups
,sagamaker-name
.{ "sub":"122", "exp":"10000", "sagemaker-groups":["group1","group2"] "sagemaker-name":"name", "sagemaker-sub":"122", "sagemaker-client_id":"123456" }
Langkah Berikutnya
Setelah membuat tenaga kerja pribadi menggunakan IDP dan memverifikasi respons autentikasi IDP, Anda dapat membuat tim kerja menggunakan grup iDP Anda. Untuk mempelajari selengkapnya, lihat Mengelola Tenaga Kerja Swasta (OIDC iDP).
Anda dapat membatasi akses pekerja ke tugas ke alamat IP tertentu, dan memperbarui atau menghapus tenaga kerja Anda menggunakan API. SageMaker Untuk mempelajari informasi lebih lanjut, lihat Manajemen tenaga kerja pribadi menggunakan Amazon SageMaker API.