

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

# Siapkan otentikasi KredenSIAL Klien OAuth 2.0 untuk ServiceNow
<a name="kb-managed-servicenow-oauth2-setup"></a>

Gunakan T ServiceNow able API dengan OAuth 2.0 Client Credentials (2LO) untuk otentikasi. Selesaikan semua langkah berikut di ServiceNow instans Anda sebelum mengonfigurasi sumber data di Amazon Bedrock.

## Langkah 1: Aktifkan jenis pemberian kredentif klien
<a name="kb-managed-servicenow-oauth2-step1"></a>

1. Di ServiceNow, arahkan ke `sys_properties.list` menggunakan navigator filter.

1. Buat properti sistem baru dengan nilai-nilai berikut:
   + **Nama** – `glide.oauth.inbound.client.credential.grant_type.enabled`
   + **Jenis ** - `true | false`
   + **Nilai** – `true`

## Langkah 2: Buat akun layanan khusus
<a name="kb-managed-servicenow-oauth2-step2"></a>

1. Arahkan ke Administrasi ** ** Pengguna > ** Pengguna**.

1. Pilih ** Baru ** dan lengkapi formulir:
   + **User ID ** — Nama deskriptif (misalnya,`svc.amazon.quick.kb`).
   + **Hanya akses layanan web ** — Diperiksa. Ini mencegah login interaktif.
   + **Kata Sandi ** — Tetapkan kata sandi yang kuat. Konektor menggunakan OAuth, tetapi kata sandi diperlukan untuk pembuatan akun.

1. Pilih **Kirim**.

## Langkah 3: Tetapkan peran akun layanan
<a name="kb-managed-servicenow-oauth2-step3"></a>

1. Buka akun layanan (Administrasi ** Pengguna ** > ** Pengguna ** > akun layanan Anda).

1. Di bawah ** ** tab Peran, pilih ** Edit ** dan tambahkan peran berikut:
   + `knowledge_admin`— Akses baca penuh ke semua artikel basis pengetahuan. Melewati batasan kriteria pengguna per KB.
   + `catalog_admin`— Akses baca penuh ke semua item katalog layanan. Melewati batasan per katalog.

1. Pilih **Simpan**.

**catatan**  
Setelah menyimpan, Anda melihat sekitar 14 total peran. ServiceNowmewarisi otomatis berisi peran dari peran `_admin` induk. Anda hanya secara manual menetapkan dua peran yang tercantum pada langkah 2 (`knowledge_admin`dan`catalog_admin`). Jangan menetapkan`admin`,`itil`, atau `snc_read_only` peran.

## Langkah 4: Daftarkan aplikasi OAuth
<a name="kb-managed-servicenow-oauth2-step4"></a>

1. Arahkan ke ** System OAuth ** > Registri ** Aplikasi. **

1. Pilih ** Baru ** > ** Buat titik akhir API OAuth untuk klien eksternal. **

1. Lengkapi formulir:
   + **Nama ** — Nama deskriptif (misalnya,`Amazon-Quick-KB-Client`).
   + **URL pengal ** ihan — Biarkan kosong. Tidak diperlukan untuk aliran kredenSIAL klien.

1. Pilih **Kirim**.

1. Segera salin ID ** Klien ** dan Rah ** asia Klien**. Rahasia Klien hanya ditampilkan sekali.

**penting**  
Anda harus menggunakan halaman pencegat untuk membuat aplikasi. Jangan membuat catatan dengan langsung memasukkan ke dalam `oauth_entity` tabel.

## Langkah 5: Konfigurasikan aplikasi OAuth
<a name="kb-managed-servicenow-oauth2-step5"></a>

1. Re-open catatan aplikasi dari daftar Registri Aplikasi.

1. Jika ** bidang Pengguna Aplikasi ** OAuth tidak terlihat, tambahkan menggunakan Con ** figure ** > ** Form Builder. **

1. Atur bidang berikut:
   + **Pengguna Aplikasi OAuth ** — Akun layanan Anda (misalnya,`svc.amazon.quick.kb`).
   + **Pembatasan Lingkup ** —`Broadly scoped`.
   + **Jenis Klien ** -`integration_as_a_service`.

1. Pilih **Perbarui**.

## Langkah 6: Konfigurasikan kebijakan akses API
<a name="kb-managed-servicenow-oauth2-step6"></a>

Tanpa kebijakan akses API, token diautentikasi tetapi API Tabel mengembalikan HTTP 401. Selesaikan kedua sub-langkah di bawah ini.

**Membuat Profil Otentikasi Masuk**

1. Arahkan ke ** Layanan Web Sistem ** > Kebijakan Ak ** ses API ** > Profil ** Oten ** tikasi Masuk.

1. Pilih ** Baru ** dan atur:
   + **Nama ** - Misalnya,`Amazon-Quick-KB-Client-Profile`.
   + **Jenis ** -`OAuth`.
   + **Entitas OAuth ** — Pilih aplikasi OAuth Anda.

1. Pilih **Kirim**.

1. Re-open profilnya. Dalam daftar ** terkait ** Kebijakan Otentikasi, pilih ** Edit ** dan tambahkan Iz ** inkan Kebijakan Akses**. Pilih **Simpan**.

**Buat Kebijakan Akses REST API**

1. Arahkan ke ** Layanan Web Sistem ** > Kebijakan ** Akses API ** > Kebijakan ** Akses REST API**.

1. Pilih ** Baru ** dan atur:
   + **Nama ** - Misalnya,`Table API Oauth access policy`.
   + **API SISA ** —`Table API`.
   + **Jalur API RES ** T —`now/table`.
   + **Terapkan untuk semua metode ** - Diperiksa.
   + **Terapkan ke semua sumber daya ** — Diperiksa.
   + **Terapkan ke semua tabel ** — Diperiksa.
   + **Terapkan untuk semua versi ** — Diperiksa.

1. Pilih **Kirim**.

1. Re-open kebijakan. Dalam daftar ** terkait ** profil otentikasi masuk, pilih ** Edit ** dan tambahkan Profil Otentikasi Masuk Anda. Pilih **Simpan**.

## Langkah 7: Verifikasi aliran OAuth
<a name="kb-managed-servicenow-oauth2-step7"></a>

Sebelum Anda mengonfigurasi sumber data, verifikasi bahwa aliran OAuth bekerja ujung ke ujung.

**Minta token: **

```
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}}"
```

**Verifikasi akses API Tabel: **

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

Tabel berikut menjelaskan setiap hasil verifikasi dan tindakan yang harus diambil.


**Hasil verifikasi**  

| Hasil | Arti | Tindakan | 
| --- | --- | --- | 
| HTTP 200 dengan data | Bekerja dengan benar | Lanjutkan untuk membuat rahasia Manajer Rahasia. | 
| HTTP 200 dengan array kosong | knowledge\_adminPeran yang hilang | Tetapkan knowledge\_admin peran ke akun layanan. | 
| HTTP 401 | Kebijakan akses API tidak dikonfigurasi | Verifikasi konfigurasi Profil Otentikasi Masuk dan Kebijakan Akses REST API. | 

## Langkah 8: Buat rahasia Manajer Rahasia
<a name="kb-managed-servicenow-oauth2-step8"></a>

Simpan kredenSIAL dalam AWS Secrets Manager rahasia yang Wilayah AWS sama dengan basis pengetahuan Anda dengan pasangan kunci-nilai berikut:

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


**Bidang rahasia**  

| Bidang | Deskripsi | 
| --- | --- | 
| clientId | ID Klien Aplikasi dari langkah 4. | 
| clientSecret | Rahasia Klien Aplikasi terungkap pada saat pembuatan di langkah 4. | 
| instanceUrl | URL ServiceNow instans lengkap (termasukhttps://, tidak ada garis miring). | 

**penting**  
Tidak `instanceUrl` boleh memiliki garis miring.

Buat rahasia dengan AWS Command Line Interface:

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

Rekam ARN rahasia dari respons. Anda menggunakannya sebagai sumber data`secretArn`.

## Langkah selanjutnya
<a name="kb-managed-servicenow-oauth2-next"></a>

Setelah Anda menyimpan rahasia, buat sumber data. Lihat [Hubungkan sumber ServiceNow data](kb-managed-ds-servicenow-connect.md).