

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.

# Richten Sie die OAuth 2.0-Clientanmeldeauthentifizierung ein für ServiceNow
<a name="kb-managed-servicenow-oauth2-setup"></a>

Verwenden Sie die ServiceNow Tabellen-API mit den OAuth 2.0-Client-Anmeldeinformationen (2LO) zur Authentifizierung. Führen Sie alle folgenden Schritte in Ihrer ServiceNow Instance aus, bevor Sie die Datenquelle in Amazon Bedrock konfigurieren.

## Schritt 1: Aktivieren Sie den Gewährungstyp für Client-Anmeldeinformationen
<a name="kb-managed-servicenow-oauth2-step1"></a>

1. Navigieren Sie ServiceNow `sys_properties.list` unter zu Verwenden des Filter-Navigators.

1. Erstellen Sie eine neue Systemeigenschaft mit den folgenden Werten:
   + **Name (Name** – `glide.oauth.inbound.client.credential.grant_type.enabled`
   + **Typ:** – `true | false`
   + **Wert** – `true`

## Schritt 2: Erstellen Sie ein dediziertes Dienstkonto
<a name="kb-managed-servicenow-oauth2-step2"></a>

1. Navigieren Sie zu ** Benutzerverwaltung ** > ** Benutzer**.

1. Wählen Sie ** Neu ** und füllen Sie das Formular aus:
   + **Benutzer-ID ** — Ein beschreibender Name (z. B.`svc.amazon.quick.kb`).
   + **Nur Webservice-Zugriff ** — Aktiviert. Dadurch wird eine interaktive Anmeldung verhindert.
   + **Passwort ** — Legen Sie ein sicheres Passwort fest. Der Connector verwendet OAuth, für die Kontoerstellung ist jedoch ein Passwort erforderlich.

1. Wählen Sie **Absenden** aus.

## Schritt 3: Weisen Sie Dienstkonto-Rollen zu
<a name="kb-managed-servicenow-oauth2-step3"></a>

1. Öffnen Sie das Dienstkonto (**Benutzerverwaltung ** > ** Benutzer ** > Ihr Dienstkonto).

1. Wählen Sie auf der ** Registerkarte ** Rollen die Option ** Bearbeiten aus ** und fügen Sie die folgenden Rollen hinzu:
   + `knowledge_admin`— Voller Lesezugriff auf alle Artikel der Wissensdatenbank. Umgeht die Einschränkungen der Benutzerkriterien pro KB.
   + `catalog_admin`— Vollständiger Lesezugriff auf alle Artikel des Servicekatalogs. Umgeht die Einschränkungen pro Katalog.

1. Wählen Sie **Speichern**.

**Anmerkung**  
Nach dem Speichern werden insgesamt etwa 14 Rollen angezeigt. ServiceNowErbt die enthaltenen Rollen automatisch von den `_admin` übergeordneten Rollen. Sie weisen die beiden in Schritt 2 (`knowledge_admin`und`catalog_admin`) aufgeführten Rollen nur manuell zu. Weisen Sie die `snc_read_only` Rollen`admin`,`itil`, oder nicht zu.

## Schritt 4: Registrieren Sie die OAuth-Anwendung
<a name="kb-managed-servicenow-oauth2-step4"></a>

1. Navigieren Sie zu ** System OAuth ** > Anwendungsregistrierung. ** **

1. Wählen Sie „**Neu“ ** > „Einen OAuth-API-Endpunkt für externe Clients ** erstellen“. **

1. Füllen Sie das Formular aus:
   + **Name ** — Ein beschreibender Name (z. B.`Amazon-Quick-KB-Client`).
   + **Umleitungs-URL ** — Lassen Sie das Feld leer. Für den Transfer von Client-Anmeldeinformationen nicht erforderlich.

1. Wählen Sie **Absenden** aus.

1. Kopieren Sie sofort die ** Client-ID ** und das ** Client-Geheimnis**. Das Client Secret wird nur einmal angezeigt.

**Wichtig**  
Sie müssen die Interceptor-Seite verwenden, um die Anwendung zu erstellen. Erstellen Sie den Datensatz nicht, indem Sie ihn direkt in die Tabelle einfügen. `oauth_entity`

## Schritt 5: Konfigurieren Sie die OAuth-Anwendung
<a name="kb-managed-servicenow-oauth2-step5"></a>

1. Re-open der Anwendungsdatensatz aus der Liste der Anwendungsregistrierung.

1. Wenn das ** Feld ** OAuth-Anwendungsbenutzer nicht sichtbar ist, fügen Sie es mit ** Configure ** > ** Form Builder hinzu. **

1. Legen Sie die folgenden Felder fest:
   + **OAuth-Anwendungsbenutzer ** — Ihr Dienstkonto (z. B.`svc.amazon.quick.kb`).
   + **Einschränkung ** des Geltungsbereichs —. `Broadly scoped`
   + **Kundentyp ** —`integration_as_a_service`.

1. Wählen Sie **Aktualisieren** aus.

## Schritt 6: API-Zugriffsrichtlinien konfigurieren
<a name="kb-managed-servicenow-oauth2-step6"></a>

Ohne API-Zugriffsrichtlinien authentifizieren sich Token, aber die Tabellen-API gibt HTTP 401 zurück. Führen Sie die beiden folgenden Unterschritte aus.

**Erstellen Sie das Profil für eingehende Authentifizierung**

1. Navigieren Sie zu ** System-Webdienste ** > ** API-Zugriffsrichtlinien ** > ** Eingehendes Authentifizierungsprofil. **

1. Wählen Sie ** Neu ** und legen Sie Folgendes fest:
   + **Name ** — Zum Beispiel`Amazon-Quick-KB-Client-Profile`.
   + **Typ** – `OAuth`.
   + **OAuth-Entität ** — Wählen Sie Ihre OAuth-Anwendung aus.

1. Wählen Sie **Absenden** aus.

1. Re-open das Profil. Wählen Sie in der ** ** Themenliste „Authentifizierungsrichtlinien“ die Option „Zugriffsrichtlinie zulassen**“ aus ** und fügen Sie „Zugriffsrichtlinie ** zulassen“ hinzu**. Wählen Sie **Speichern**.

**Erstellen Sie die REST-API-Zugriffsrichtlinie**

1. Navigieren Sie zu ** Systemwebdienste ** > ** API-Zugriffsrichtlinien ** > ** REST-API-Zugriffsrichtlinien**.

1. Wählen Sie ** Neu ** und legen Sie Folgendes fest:
   + **Name ** — Zum Beispiel`Table API Oauth access policy`.
   + **REST-API ** —`Table API`.
   + **REST-API-Pfad ** —`now/table`.
   + **Auf alle Methoden anwenden ** — Aktiviert.
   + **Auf alle Ressourcen anwenden ** — Aktiviert.
   + **Auf alle Tabellen anwenden ** — Aktiviert.
   + **Auf alle Versionen anwenden ** — Aktiviert.

1. Wählen Sie **Absenden** aus.

1. Re-open die Richtlinie. Wählen Sie in der ** ** Themenliste Profile für eingehende Authentifizierung die Option ** Bearbeiten aus ** und fügen Sie Ihr Profil für eingehende Authentifizierung hinzu. Wählen Sie **Speichern**.

## Schritt 7: Überprüfen Sie den OAuth-Ablauf
<a name="kb-managed-servicenow-oauth2-step7"></a>

Bevor Sie die Datenquelle konfigurieren, stellen Sie sicher, dass der OAuth-Flow durchgängig funktioniert.

**Fordern Sie ein Token an: **

```
curl -s -X POST "https://{{INSTANCE}}.service-now.com/oauth_token.do" \
  -d "grant_type=client_credentials" \
  -d "client_id={{CLIENT_ID}}" \
  -d "client_secret={{CLIENT_SECRET}}"
```

**Überprüfen Sie den Tabellen-API-Zugriff: **

```
curl -s "https://{{INSTANCE}}.service-now.com/api/now/table/kb_knowledge?sysparm_limit=1" \
  -H "Authorization: Bearer {{ACCESS_TOKEN}}"
```

In der folgenden Tabelle werden jedes Überprüfungsergebnis und die zu ergreifenden Maßnahmen beschrieben.


**Ergebnisse der Überprüfung**  

| Ergebnis | Bedeutung | Action | 
| --- | --- | --- | 
| HTTP 200 mit Daten | Funktioniert richtig | Fahren Sie mit der Erstellung des Secrets Manager-Geheimnisses fort. | 
| HTTP 200 mit leerem Array | Fehlende knowledge\_admin Rolle | Weisen Sie die knowledge\_admin Rolle dem Dienstkonto zu. | 
| HTTP: 401 | Die API-Zugriffsrichtlinie ist nicht konfiguriert | Überprüfen Sie sowohl das eingehende Authentifizierungsprofil als auch die Konfiguration der REST-API-Zugriffsrichtlinie. | 

## Schritt 8: Erstellen Sie das Secrets Manager-Geheimnis
<a name="kb-managed-servicenow-oauth2-step8"></a>

Speichern Sie die Anmeldeinformationen in einem AWS Secrets Manager Secret, das Ihrer Wissensdatenbank entspricht AWS-Region . Verwenden Sie dazu die folgenden Schlüssel-Wert-Paare:

```
{
    "clientId": "{{your-client-id}}",
    "clientSecret": "{{your-client-secret}}",
    "instanceUrl": "https://{{YOUR_INSTANCE}}.service-now.com"
}
```


**Geheime Felder**  

| Feld | Description | 
| --- | --- | 
| clientId | Die App-Client-ID aus Schritt 4. | 
| clientSecret | Das App Client Secret wurde bei der Erstellung in Schritt 4 enthüllt. | 
| instanceUrl | Vollständige ServiceNow Instanz-URL (einschließlichhttps://, kein abschließender Schrägstrich). | 

**Wichtig**  
Die `instanceUrl` darf keinen abschließenden Schrägstrich haben.

Erstellen Sie das Geheimnis mit dem: AWS Command Line Interface

```
aws secretsmanager create-secret \
  --name {{bedrock-servicenow-creds}} \
  --secret-string file://secret.json
```

Notieren Sie den geheimen ARN aus der Antwort. Sie verwenden es als Datenquelle`secretArn`.

## Nächste Schritte
<a name="kb-managed-servicenow-oauth2-next"></a>

Nachdem Sie das Geheimnis gespeichert haben, erstellen Sie die Datenquelle. Siehe [Eine ServiceNow Datenquelle verbinden](kb-managed-ds-servicenow-connect.md).