Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erstellen einer privaten Arbeitskraft (OIDC IdP)
Erstellen Sie eine private Belegschaft mithilfe eines OpenID Connect (OIDC) Identity Providers (IdP), wenn Sie Auftragnehmer mit Ihrem eigenen Identitätsanbieter authentifizieren und verwalten möchten. Auf dieser Seite erfahren Sie, wie Sie Ihren IdP für die Kommunikation mit Amazon SageMaker Ground Truth (Ground Truth) oder Amazon Augmented AI (Amazon A2I) konfigurieren und wie Sie mithilfe Ihres eigenen IdP eine Belegschaft erstellen.
Um eine Belegschaft mit einem OIDC-IdP zusammenzustellen, muss Ihr IdP Gruppen unterstützen, da Ground Truth und Amazon A2I eine oder mehrere Gruppen verwenden, die Sie angeben, um Arbeitsteams zu bilden. Sie verwenden Arbeitsteams, um Auftragnehmer für Ihre Etikettierungsaufgaben und Aufgaben zur Überprüfung durch Auftragnehmer festzulegen. Da es sich bei Gruppen nicht um einen Standardanspruchsagemaker:groups
, der von Ihrem IdP an Ground Truth oder Amazon A2I gesendet wird, eine oder mehrere Benutzergruppen identifizieren, zu denen ein Auftragnehmer gehört. Weitere Informationen hierzu finden Sie unter Erforderliche und optionale Anträge an Ground Truth und Amazon A2I senden.
Sie erstellen eine OIDC-IdP-Arbeitskraft mithilfe der API SageMaker -Operation CreateWorkforce
. Sobald Sie eine private Belegschaft erstellt haben, stehen diese Belegschaft und alle mit ihr verbundenen Arbeitsteams und Arbeiter für alle Ground Truth Beschriftungsaufgaben und Amazon A2I Überprüfungsworkflows zur Verfügung. Weitere Informationen hierzu finden Sie unter Eine OIDC-IdP Workforce einrichten.
Erforderliche und optionale Anträge an Ground Truth und Amazon A2I senden
Wenn Sie Ihren eigenen IdP verwenden, benutzen Ground Truth und Amazon A2I Ihre Issuer
, ClientId
, und ClientSecret
, um Auftragnehmer zu authentifizieren, indem sie einen Authentifizierungs-CODE von Ihrer AuthorizationEndpoint
erhalten.
Ground Truth und Amazon A2I verwenden diesen CODE, um einen individuellen Antrag entweder von Ihrem IdP TokenEndpoint
oder UserInfoEndpoint
zu erhalten. Sie können entweder so konfigurierenTokenEndpoint
, dass ein JSON-Web-Token (JWT) oder UserInfoEndpoint
ein JSON-Objekt zurückgegeben wird. Das JWT- oder JSON-Objekt muss die von Ihnen angegebenen erforderlichen und optionalen Ansprüche enthalten. Ein Anspruch
Anmerkung
Einige der Parameter in der folgenden Tabelle können mit a :
oder a -
angegeben werden. Sie können beispielsweise mithilfe sagemaker:groups
oder sagemaker-groups
in Ihrem Antrag angeben, zu welchen Gruppen eine Arbeitskraft gehört.
Name | Erforderlich | Zulässiges Format und Werte | Beschreibung | Beispiel |
---|---|---|---|---|
|
Ja |
Datentyp: Wenn ein Auftragnehmer zu einer einzelnen Gruppe gehört, identifizieren Sie die Gruppe anhand einer Zeichenfolge. Wenn ein Worker zu mehreren Gruppen gehört, verwenden Sie eine Liste mit bis zu 10 Zeichenketten. Zulässige Zeichen: Regex: [\ p {L}\ p {M}\ p {S}\ p {N}\ p {P}] + Kontingente: 10 Gruppen pro Auftragnehmer 63 Zeichen pro Gruppenname |
Weist einen Auftragnehmer einer oder mehreren Gruppen zu. Gruppen werden verwendet, um die Arbeitskraft Arbeitsteams zuzuordnen. |
Beispiel für einen Auftragnehmer, der zu einer einzelnen Gruppe gehört: Beispiel für eine Arbeitskraft, die zu mehr als einer Gruppe gehört: |
|
Ja |
Datentyp: String |
Dies ist erforderlich, um die Identität eines Auftragnehmers innerhalb der Ground Truth-Plattform zu Auditzwecken nachzuverfolgen und Aufgaben zu identifizieren, an denen dieser Auftragnehmer gearbeitet hat. Für ADFS: Kunden müssen den Primary Security Identifier (SID) verwenden. |
|
|
Ja |
Datentyp: String Zulässige Zeichen: Regex: [\ w+-] + Zitate: 128 Zeichen |
Eine Client-ID. Alle Token müssen für diese Client-ID ausgestellt werden. |
|
|
Ja |
Datentyp: String |
Der Name des Auftragnehmers, der im Auftragnehmerportal angezeigt werden soll. |
|
|
Nein |
Datentyp: String |
Die E-Mail-Adresse des Auftragnehmers. Ground Truth verwendet diese E-Mail, um Auftragnehmer darüber zu informieren, dass sie eingeladen wurden, an Kennzeichnungsaufgaben zu arbeiten. Ground Truth verwendet diese E-Mail auch, um Ihre Auftragnehmer zu benachrichtigen, wenn Kennzeichnungsaufgaben verfügbar werden, wenn Sie ein Amazon SNS-Thema für ein Arbeitsteam einrichten, dem dieser Auftragnehmer angehört. |
|
|
Nein |
Datentyp: Bool Akzeptierte Werte:
|
Gibt an, ob die Benutzer-E-Mail verifiziert wurde oder nicht. |
|
Es folgt ein Beispiel für die JSON-Objektsyntax, die Ihr UserInfoEndpoint
zurückgeben kann.
{ "sub":"
122
", "exp":"10000
", "sagemaker-groups":["group1
","group2
"] "sagemaker-name":"name
", "sagemaker-sub":"122
", "sagemaker-client_id":"123456
" }
Ground Truth oder Amazon A2I vergleicht die Gruppen, die in sagemaker:groups
oder sagemaker-groups
aufgeführt sind, um zu überprüfen, ob Ihr Auftragnehmer zu dem Arbeitsteam gehört, das in der Etikettierungsaufgabe oder der menschlichen Überprüfungsaufgabe angegeben ist. Nachdem das Arbeitsteam verifiziert wurde, werden Aufgaben zur Kennzeichnung oder Überprüfung durch einen Auftragnehmer an diesen Auftragnehmer gesendet.
Eine OIDC-IdP Workforce einrichten
Sie können eine Arbeitskraft mithilfe der SageMaker API-Operation CreateWorkforce
und der zugehörigen sprachspezifischen SDKs erstellen. Geben Sie im Parameter OidcConfig
einen WorkforceName
und Informationen zu Ihrem OIDC-IDP an. Es wird empfohlen, dass Sie Ihr OIDC mit einem Platzhalter-Umleitungs-URI konfigurieren und den URI dann mit der URL des Auftragnehmerportals aktualisieren, nachdem Sie die Belegschaft erstellt haben. Weitere Informationen hierzu finden Sie unter Konfigurieren Ihres OIDC-IdP.
Im Folgenden wird ein Beispiel für eine solche Anfrage gezeigt. Weitere Informationen zu den einzelnen Parametern in dieser Anfrage finden Sie unter 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"
] } }
Konfigurieren Ihres OIDC-IdP
Wie Sie Ihren OIDC-IdP konfigurieren, hängt von dem von Ihnen verwendeten IdP und Ihren Geschäftsanforderungen ab.
Wenn Sie Ihren IdP konfigurieren, müssen Sie eine Rückruf- oder Umleitungs-URI angeben. Nachdem Ground Truth oder Amazon A2I einen Auftragnehmer authentifiziert hat, leitet dieser URI den Auftragnehmer zum Auftragnehmerportal weiter, wo die Auftragnehmer auf Kennzeichnungs- oder menschliche Überprüfungsaufgaben zugreifen können. Um eine URL für das Auftragnehmerportal zu erstellen, müssen Sie mithilfe der CreateWorkforce
API-Operation eine Belegschaft mit Ihren OIDC-IdP-Details erstellen. Insbesondere müssen Sie Ihren OIDC-IdP mit den erforderlichen benutzerdefinierten Sagemaker-Ansprüchen konfigurieren (weitere Informationen finden Sie im nächsten Abschnitt). Daher wird empfohlen, dass Sie Ihr OIDC mit einem Platzhalter-Umleitungs-URI konfigurieren und den URI dann aktualisieren, nachdem Sie die Belegschaft erstellt haben. Sehen Sie Eine OIDC-IdP Workforce einrichten an, um zu erfahren, wie man eine Belegschaft mit dieser API erstellt.
Sie können die URL Ihres Auftragnehmerportals in der SageMaker Ground Truth-Konsole oder mithilfe der API SageMaker -Operation anzeigenDescribeWorkforce
. Die URL des Worker-Portals ist im SubDomain
Parameter in der Antwort enthalten.
Wichtig
Stellen Sie sicher, dass Sie die Workforce-Subdomain zu Ihrer OIDC-IdP-Zulassungsliste hinzufügen. Wenn Sie die Subdomain zu Ihrer Zulassungsliste hinzufügen, muss sie mit /oauth2/idpresponse
enden.
So zeigen Sie die URL Ihres Auftragnehmerportals an, nachdem Sie eine private Belegschaft erstellt haben (Konsole):
-
Öffnen Sie die - SageMaker Konsole unter https://console.aws.amazon.com/sagemaker/
. -
Wählen Sie im Navigationsbereich die Option Labeling workforces (Arbeitskräfte für das Labeling) aus.
-
Wählen Sie die Registerkarte Private (Privat) aus.
-
In der Übersicht über private Auftragnehmer finden Sie die Anmelde-URL für das Labeling-Portal. Dies ist die URL Ihres Auftragnehmerportals.
So zeigen Sie die URL Ihres Auftragnehmerportals an, nachdem Sie eine private Belegschaft (API) erstellt haben:
Wenn Sie eine private Arbeitskraft mithilfe von CreateWorkforce
erstellen, geben Sie eine WorkforceName
an. Verwenden Sie diesen Namen, um DescribeWorkforce
aufzurufen. Die folgende Tabelle enthält Beispiele für -Anforderungen mit und AWS CLI AWS SDK for Python (Boto3).
Bestätigen Sie Ihre Antwort auf die OIDC IdP Workforce-Authentifizierung
Nachdem Sie Ihre OIDC-IdP Workforce erstellt haben, können Sie die folgenden Schritte zum Überprüfen des Authentifizierungs-Workflows mit cURL ausführen. Bei diesem Verfahren wird davon ausgegangen, dass Sie Zugriff auf ein Terminal haben und cURL installiert haben.
So validieren Sie Ihre OIDC-IdP-Autorisierungsantwort:
-
Rufen Sie einen Autorisierungscode mit einer wie folgt konfigurierten URI ab:
{AUTHORIZE ENDPOINT}
?client_id={CLIENT ID}
&redirect_uri={REDIRECT URI}
&scope={SCOPE}
&response_type=code-
Ersetzen Sie
durch den Autorisierungsendpunkt für Ihren OIDC-IdP.{AUTHORIZE ENDPOINT}
-
Ersetzen Sie
durch die Client-ID Ihres OAuth-Clients.{CLIENT ID}
-
Ersetzen Sie
durch die URL des Worker-Portals. Falls sie noch nicht vorhanden ist, müssen Sie{REDIRECT URI}
/oauth2/idpresponse
am Ende der URL hinzufügen. -
Wenn Sie einen benutzerdefinierten Bereich haben, verwenden Sie diesen zum Ersetzen von
. Wenn Sie keinen benutzerdefinierten Bereich haben, ersetzen Sie{SCOPE}
durch{SCOPE}
openid
.
Im Folgenden finden Sie ein Beispiel für einen URI, nachdem die obigen Änderungen vorgenommen wurden:
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
-
-
Kopieren Sie die geänderte URI aus Schritt 1, fügen Sie sie in Ihren Browser ein und drücken Sie die Eingabetaste auf Ihrer Tastatur.
-
Authentifizieren Sie sich mit Ihrem IdP.
-
Kopieren Sie den Abfrageparameter für den Authentifizierungscode in die URI. Dieser Parameter beginnt mit
code=
. Das folgende Beispiel zeigt, wie die Anforderung aussehen kann. In diesem Beispiel kopieren Siecode=MCNYDB...
und alles danach.https://example.labeling.sagemaker.aws/oauth2/idpresponse?code=MCNYDB....
-
Öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein, nachdem Sie die unten aufgeführten erforderlichen Änderungen vorgenommen haben:
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}
'-
Ersetzen Sie
durch den Token-Endpunkt für Ihren OIDC-IdP.{TOKEN ENDPOINT}
-
Ersetzen Sie
durch die Client-ID von Ihrem OAuth-Client.{CLIENT ID}
-
Ersetzen Sie
durch das Client Secret von Ihrem OAuth-Client.{CLIENT SECRET}
-
Ersetzen Sie
durch den Abfrageparameter für den Authentifizierungscode, den Sie in Schritt 4 kopiert haben.{CODE}
-
Ersetzen Sie
durch die URL des Worker-Portals.{REDIRECT URI}
Im Folgenden finden Sie ein Beispiel für die cURL-Anfrage nach den oben beschriebenen Änderungen:
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'
-
-
Dieser Schritt hängt von der Art von
access_token
Ihrer IdP-Rücksendungen ab, einem Klartext-Zugriffstoken oder einem JWT-Zugriffstoken.-
Wenn Ihr IdP keine JWT-Zugriffstoken unterstützt, kann
access_token
ein einfacher Text sein (z. B. eine UUID). Die Antwort, die Sie sehen, könnte so ähnlich aussehen wie die folgende. Fahren Sie in diesem Fall mit Schritt 7 fort.{ "access_token":"179c144b-fccb-4d96-a28f-eea060f39c13", "token_type":"Bearer", "expires_in":3600, "refresh_token":"ef43e52e-9b4f-410c-8d4c-d5c5ee57631a", "scope":"openid" }
-
Wenn Ihr IdP JWT-Zugriffstoken unterstützt, sollte Schritt 5 ein Zugriffstoken im JWT-Format generieren. Die Antwort kann zum Beispiel wie folgt aussehen:
{ "access_token":"eyJh...JV_adQssw5c", "refresh_token":"i6mapTIAVSp2oJkgUnCACKKfZxt_H5MBLiqcybBBd04", "refresh_token_expires_in":6327, "scope":"openid", "id_token":"eyJ0eXAiOiJK9...-rDaQzUHl6cQQWNiDpWOl_lxXjQEvQ" }
Kopieren Sie das JWT und dekodieren Sie es. Sie können ein Python-Skript oder eine Website eines Drittanbieters verwenden, um es zu dekodieren. Sie können beispielsweise auf die Website https://jwt.io/
gehen und das JWT in das Feld Encoded einfügen, um es zu dekodieren. Stellen Sie sicher, dass die dekodierte Antwort Folgendes enthält:
-
Die erforderlichen SageMaker Ansprüche in der Tabelle in Erforderliche und optionale Anträge an Ground Truth und Amazon A2I senden. Ist dies nicht der Fall, müssen Sie Ihren OIDC-IdP neu konfigurieren, um diese Ansprüche zu berücksichtigen.
-
Der Emittent, den Sie bei der Einrichtung der IdP-Belegschaft angegeben haben.
-
-
-
Geben Sie in einem Terminal den folgenden Befehl ein, nachdem Sie die unten aufgeführten erforderlichen Änderungen vorgenommen haben:
curl -X POST -H 'Authorization: Bearer
{ACCESS TOKEN}
' -d '' -k -v{USERINFO ENDPOINT}
-
Ersetzen Sie
durch den Benutzerinformationsendpunkt für Ihren OIDC-IdP.{USERINFO ENDPOINT}
-
Ersetzen Sie
durch das Zugriffstoken in der Antwort, die Sie in Schritt 7 erhalten haben. Dies ist der Eintrag für den{ACCESS TOKEN}
"access_token"
Parameter.
Im Folgenden finden Sie ein Beispiel für die cURL-Anfrage nach den oben beschriebenen Änderungen:
curl -X POST -H 'Authorization: Bearer eyJ0eX...' -d '' -k -v https://example.com/userinfo
-
-
Die Antwort auf den letzten Schritt des obigen Verfahrens könnte dem folgenden Codeblock ähneln.
Wenn der in Schritt 6 zurückgegebene
access_token
ein reiner Text war, müssen Sie überprüfen, ob diese Antwort die erforderlichen Informationen enthält. In diesem Fall muss die Antwort die Erforderliche SageMaker Ansprüche in der Tabelle enthalten, die in zu finden istErforderliche und optionale Anträge an Ground Truth und Amazon A2I senden. Zum Beispielsagemaker-groups
,sagamaker-name
.{ "sub":"122", "exp":"10000", "sagemaker-groups":["group1","group2"] "sagemaker-name":"name", "sagemaker-sub":"122", "sagemaker-client_id":"123456" }
Nächste Schritte
Sobald Sie mit Ihrem IdP eine private Belegschaft erstellt und Ihre IdP-Authentifizierungsantwort verifiziert haben, können Sie mithilfe Ihrer IdP-Gruppen Arbeitsteams erstellen. Weitere Informationen hierzu finden Sie unter Verwalten von privaten Arbeitskräften (OIDC IdP).
Sie können den Worker-Zugriff auf Aufgaben auf bestimmte IP-Adressen beschränken und Ihre Belegschaft mithilfe der - SageMaker API aktualisieren oder löschen. Weitere Informationen hierzu finden Sie unter Private Personalverwaltung mit Amazon SageMaker API.