Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Creazione di una forza lavoro privata (IdP OIDC)
Crea una forza lavoro privata utilizzando un Identity Provider (IdP) OpenID Connect (OIDC) quando desideri autenticare e gestire i lavoratori utilizzando il tuo provider di identità. Usa questa pagina per scoprire come configurare il tuo IdP per comunicare con Amazon SageMaker Ground Truth (Ground Truth) o Amazon Augmented AI (Amazon A2I) e per imparare a creare una forza lavoro utilizzando il tuo IdP.
Per creare una forza lavoro utilizzando un IdP OIDC, il tuo IdP deve supportare i gruppi perché Ground Truth e Amazon A2I utilizzano uno o più gruppi da te specificati per creare team di lavoro. Utilizza i team di lavoro per specificare i lavoratori incaricati dei processi di etichettatura e delle attività di revisione umana. Poiché i gruppi non sono un'attestazione standardsagemaker:groups
inviata a Ground Truth o Amazon A2I dal tuo IdP. Per ulteriori informazioni, vedi Invia reclami obbligatori e facoltativi a Ground Truth e Amazon A2I.
Crei una forza lavoro IdP OIDC utilizzando l'operazione API. SageMaker CreateWorkforce
Una volta creata una forza lavoro privata, tale forza lavoro, tutti i team di lavoro e i lavoratori ad essa associati saranno disponibili per l'utilizzo per tutte le attività di etichettatura GroundTruth e per i flussi di lavoro di revisione umana Amazon A2I. Per ulteriori informazioni, vedi Creazione di una forza lavoro OIDC IdP.
Invia reclami obbligatori e facoltativi a Ground Truth e Amazon A2I
Quando utilizzi il tuo IdP, Ground Truth e Amazon A2I utilizzano il tuo Issuer
, ClientId
e ClientSecret
per autenticare i lavoratori ottenendo un CODICE di autenticazione dal tuo AuthorizationEndpoint
.
Ground Truth e Amazon A2I utilizzeranno questo CODICE per ottenere un’attestazione personalizzata dal TokenEndpoint
o UserInfoEndpoint
del tuo IdP. Puoi configurare TokenEndpoint
per restituire un token web JSON (JWT) o UserInfoEndpoint
per restituire un oggetto JSON. L'oggetto JWT o JSON deve contenere attestazioni obbligatorie e facoltative specificate dall'utente. Un'attestazione
Nota
Alcuni dei parametri nella tabella seguente possono essere specificati utilizzando un :
o -
. Ad esempio, è possibile specificare i gruppi a cui appartiene un lavoratore utilizzando sagemaker:groups
o sagemaker-groups
nell’attestazione.
Nome | Richiesto | Formato e valori accettati | Descrizione | Esempio |
---|---|---|---|---|
|
Sì |
Tipo di dati: Se un lavoratore appartiene a un singolo gruppo, identifica il gruppo utilizzando una stringa. Se un lavoratore appartiene a più gruppi, utilizza un elenco con un massimo di 10 stringhe. Caratteri consentiti: Espressione regolare: [\p{L}\p{M}\p{S}\p{N}\p{P}]+ Quote: 10 gruppi per lavoratore 63 caratteri per nome del gruppo |
Assegna un lavoratore a uno o più gruppi. I gruppi vengono utilizzati per mappare il lavoratore in team di lavoro. |
Esempio di lavoratore che appartiene a un singolo gruppo: Esempio di lavoratore che appartiene a più di un gruppo: |
|
Sì |
Tipo di dati: Stringa |
Questo è obbligatorio per tenere traccia dell'identità di un lavoratore all'interno della piattaforma Ground Truth per il controllo e per identificare le attività svolte da quel lavoratore. Per ADFS: i clienti devono utilizzare l’Identificatore di sicurezza primario (SID). |
|
|
Sì |
Tipo di dati: Stringa Caratteri consentiti: Espressione regolare: [\ w+-] + Virgolette: 128 caratteri |
Un ID client. Tutti i token devono essere emessi per questo ID cliente. |
|
|
Sì |
Tipo di dati: Stringa |
Il nome del lavoratore da visualizzare nel portale dei lavoratori. |
|
|
No |
Tipo di dati: Stringa |
L'e-mail del lavoratore. Ground Truth utilizza questa e-mail per notificare ai lavoratori che sono stati invitati a lavorare sulle attività di etichettatura. Ground Truth utilizzerà questa e-mail anche per avvisare i dipendenti quando le attività di etichettatura diventano disponibili se imposti un argomento di Amazon SNS per un team di lavoro di cui fa parte il lavoratore. |
|
|
No |
Tipo di dati: Bool Valori accettati:
|
Indica se l'e-mail dell'utente è stata verificata o meno. |
|
Di seguito è riportato un esempio della sintassi dell'oggetto JSON che UserInfoEndpoint
può restituire.
{ "sub":"
122
", "exp":"10000
", "sagemaker-groups":["group1
","group2
"] "sagemaker-name":"name
", "sagemaker-sub":"122
", "sagemaker-client_id":"123456
" }
Ground Truth o Amazon A2I confrontano i gruppi elencati in sagemaker:groups
o sagemaker-groups
per verificare che il lavoratore appartenga al team di lavoro specificato nel processo di etichettatura o nell'attività di revisione umana. Dopo la verifica del team di lavoro, le attività di etichettatura o di revisione umana vengono inviate a quel lavoratore.
Creazione di una forza lavoro OIDC IdP
Puoi creare una forza lavoro utilizzando l'operazione SageMaker CreateWorkforce
API e gli SDK associati specifici per la lingua. Specifica un indirizzo WorkforceName
e informazioni sul tuo IDP OIDC nel parametro OidcConfig
. Si consiglia di configurare l'OIDC con un URI di reindirizzamento segnaposto e quindi di aggiornare l'URI con l'URL del portale di lavoro dopo aver creato la forza lavoro. Per ulteriori informazioni, vedi Configura il tuo IdP OIDC.
Un esempio della richiesta è illustrato nello screenshot seguente. Per ulteriori informazioni su ciascun parametro contenuto in questa richiesta, consulta CreateWorkforce
.
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"
] } }
Configura il tuo IdP OIDC
Il modo in cui configuri il tuo IdP OIDC dipende dall'IdP che utilizzi e dai tuoi requisiti aziendali.
Quando configuri il tuo IdP, devi specificare un URI di richiamata o di reindirizzamento. Dopo che Ground Truth o Amazon A2I hanno autenticato un lavoratore, questo URI reindirizzerà il lavoratore al portale dei lavoratori dove i lavoratori possono accedere alle attività di etichettatura o di revisione umana. Per creare un URL del portale di lavoro, devi creare una forza lavoro con i dettagli del tuo IdP OIDC utilizzando l'operazione API CreateWorkforce
. In particolare, devi configurare il tuo IdP OIDC con le attestazioni sagemaker personalizzate richieste (consulta la sezione successiva per maggiori dettagli). Pertanto, ti consigliamo di configurare l'OIDC con un URI di reindirizzamento segnaposto e quindi di aggiornare l'URI dopo aver creato la forza lavoro. Consulta Creazione di una forza lavoro OIDC IdP per scoprire come creare una forza lavoro utilizzando questa API.
Puoi visualizzare l'URL del tuo portale di lavoro nella console SageMaker Ground Truth o utilizzando l'operazione SageMaker APIDescribeWorkforce
. L'URL del portale di lavoro si trova nel parametro SubDomain
della risposta.
Importante
Assicurati di aggiungere il sottodominio della forza lavoro all'elenco di indirizzi consentiti per IdP di OIDC. Quando aggiungi il sottodominio all'elenco degli indirizzi consentiti, deve terminare con /oauth2/idpresponse
.
Per visualizzare l'URL del portale di lavoro dopo aver creato una forza lavoro privata (Console):
-
Apri la SageMaker console all'indirizzo https://console.aws.amazon.com/sagemaker/
. -
Nel riquadro di navigazione, scegliere Etichettatura delle forze lavoro.
-
Selezionare la scheda Private (Privata).
-
In Riepilogo della forza lavoro privata vedrai l'URL di accesso al portale Etichettatura. Questo è l'URL del tuo portale per i lavoratori.
Per visualizzare l'URL del portale dei lavoratori dopo aver creato una forza lavoro privata (API):
Quando crei una forza lavoro privata utilizzando CreateWorkforce
, specifichi un WorkforceName
. Usa questo nome per chiamare DescribeWorkforce
. La tabella seguente include esempi di richieste che utilizzano AWS CLI and AWS SDK for Python (Boto3).
Convalida la tua risposta di autenticazione della forza lavoro OIDC IdP
Dopo aver creato la forza lavoro OIDC IdP, puoi utilizzare la seguente procedura per convalidare il relativo flusso di lavoro di autenticazione utilizzando cURL. Questa procedura presuppone che tu abbia accesso a un terminale e che cURL sia installato.
Per convalidare la tua risposta di autorizzazione OIDC IdP:
-
Ottieni un codice di autorizzazione utilizzando un URI configurato come segue:
{AUTHORIZE ENDPOINT}
?client_id={CLIENT ID}
&redirect_uri={REDIRECT URI}
&scope={SCOPE}
&response_type=code-
Sostituisci
con l'endpoint di autorizzazione per il tuo IdP OIDC.{AUTHORIZE ENDPOINT}
-
Sostituisci
con l'ID client del tuo client OAuth.{CLIENT ID}
-
Sostituisci
con l'URL del portale dei lavoratori. Se non è già presente, devi aggiungere{REDIRECT URI}
/oauth2/idpresponse
alla fine dell'URL. -
Se hai un ambito personalizzato, usalo per sostituire
. Se non disponi di un ambito personalizzato, sostituisci{SCOPE}
con{SCOPE}
openid
.
Di seguito è riportato un esempio di URI dopo le modifiche precedenti:
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
-
-
Copia e incolla l'URI modificato dal passaggio 1 nel browser e premi Invio sulla tastiera.
-
Effettua l'autenticazione utilizzando il tuo IdP.
-
Copia il parametro di query del codice di autenticazione nell'URI. Questo parametro inizia con
code=
. Di seguito è riportato un esempio di risposta. In questo esempio, copiacode=MCNYDB...
e tutto ciò che segue.https://example.labeling.sagemaker.aws/oauth2/idpresponse?code=MCNYDB....
-
Apri un terminale e inserisci il seguente comando dopo aver apportato le modifiche richieste elencate di seguito:
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}
'-
Sostituisci
con l'endpoint token per il tuo IdP OIDC.{TOKEN ENDPOINT}
-
Sostituisci
con l'ID client del tuo client OAuth.{CLIENT ID}
-
Sostituisci
con il segreto client del tuo client OAuth.{CLIENT SECRET}
-
Sostituisci
con il parametro di query del codice di autenticazione che hai copiato nel passaggio 4.{CODE}
-
Sostituisci
con l'URL del portale dei lavoratori.{REDIRECT URI}
Di seguito è riportato un esempio di richiesta cURL dopo aver apportato le modifiche precedenti:
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'
-
-
Questo passaggio dipende dal tipo di
access_token
restituito da IdP, da un token di accesso in testo normale o da un token di accesso JWT.-
Se il tuo IdP non supporta i token di accesso JWT,
access_token
potrebbe essere testo normale (ad esempio un UUID). Viene visualizzata una risposta simile alla seguente. In questo caso, vai al passaggio 7.{ "access_token":"179c144b-fccb-4d96-a28f-eea060f39c13", "token_type":"Bearer", "expires_in":3600, "refresh_token":"ef43e52e-9b4f-410c-8d4c-d5c5ee57631a", "scope":"openid" }
-
Se il tuo IdP supporta i token di accesso JWT, la fase 5 dovrebbe generare un token di accesso in formato JWT. Ad esempio, la risposta può apparire simile alla seguente:
{ "access_token":"eyJh...JV_adQssw5c", "refresh_token":"i6mapTIAVSp2oJkgUnCACKKfZxt_H5MBLiqcybBBd04", "refresh_token_expires_in":6327, "scope":"openid", "id_token":"eyJ0eXAiOiJK9...-rDaQzUHl6cQQWNiDpWOl_lxXjQEvQ" }
Copia il JWT e decodificalo. Puoi usare uno script python o un sito Web di terze parti per decodificarlo. Ad esempio, puoi visitare il sito Web https://jwt.io/
e incollare il JWT nella casella Codificato per decodificarlo. Assicurati che la risposta decodificata contenga quanto segue:
-
Le SageMaker affermazioni obbligatorie nella tabella riportata inInvia reclami obbligatori e facoltativi a Ground Truth e Amazon A2I. In caso contrario, devi riconfigurare il tuo IdP OIDC in modo che contenga queste attestazioni.
-
L'emittente che hai specificato quando hai configurato la forza lavoro IdP.
-
-
-
Apri un terminale e inserisci il seguente comando dopo aver apportato le modifiche richieste elencate di seguito:
curl -X POST -H 'Authorization: Bearer
{ACCESS TOKEN}
' -d '' -k -v{USERINFO ENDPOINT}
-
Sostituisci
con l'endpoint informazioni utente per il tuo IdP OIDC.{USERINFO ENDPOINT}
-
Sostituisci
con il token di accesso nella risposta che hai ricevuto nel passaggio 7. Questa è la voce per il parametro{ACCESS TOKEN}
"access_token"
.
Di seguito è riportato un esempio di richiesta cURL dopo aver apportato le modifiche precedenti:
curl -X POST -H 'Authorization: Bearer eyJ0eX...' -d '' -k -v https://example.com/userinfo
-
-
La risposta al passaggio finale della procedura precedente può essere simile al seguente blocco di codice.
Se il
access_token
restituito nel passaggio 6 era testo normale, è necessario verificare che questa risposta contenga le informazioni richieste. In questo caso, la risposta deve contenere le SageMaker attestazioni richieste nella tabella riportata inInvia reclami obbligatori e facoltativi a Ground Truth e Amazon A2I. Ad esempio,sagemaker-groups
,sagamaker-name
.{ "sub":"122", "exp":"10000", "sagemaker-groups":["group1","group2"] "sagemaker-name":"name", "sagemaker-sub":"122", "sagemaker-client_id":"123456" }
Fasi successive
Dopo aver creato una forza lavoro privata utilizzando il tuo IdP e verificato la risposta di autenticazione dell'IdP, puoi creare team di lavoro utilizzando i tuoi gruppi IdP. Per ulteriori informazioni, vedi Gestione di una forza lavoro privata (IdP OIDC).
È possibile limitare l'accesso dei lavoratori alle attività a indirizzi IP specifici e aggiornare o eliminare la forza lavoro utilizzando l' SageMaker API. Per ulteriori informazioni, consulta Gestione della forza lavoro privata tramite Amazon SageMaker API.