

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

# Siapkan otentikasi OAuth 2.0 untuk SharePoint
<a name="kb-managed-sharepoint-oauth2-setup"></a>

OAuth 2.0 otentikasi (`OAUTH2_APP`) mengautentikasi dengan ID klien aplikasi dan rahasia bersama dengan nama pengguna dan kata sandi akun pengguna Microsoft 365, menggunakan alur kredensial kata sandi pemilik sumber daya (ROPC) OAuth 2.0. Konektor masuk sebagai pengguna untuk membaca konten.

**penting**  
Kami merekomendasikan [Mengatur App-Only otentikasi Microsoft Entra ID untuk SharePoint](kb-managed-sharepoint-entra-setup.md) sebagai gantinya. Otentikasi OAuth 2.0 memiliki dua batasan:  
Karena masuk dengan nama pengguna dan kata sandi, ia tidak dapat menyelesaikan tantangan otentikasi multi-faktor (MFA) atau memenuhi kebijakan Akses Bersyarat yang memerlukannya. Jika akun memberlakukan MFA atau Akses Bersyarat, otentikasi gagal dan sumber data tidak dapat disinkronkan. Banyak organisasi memerlukan MFA untuk jenis akun yang akan Anda gunakan di sini.
Ini tidak mendukung kontrol akses tingkat dokumen (ACL). Untuk memfilter hasil kueri berdasarkan izin pengguna, gunakan otentikasi Microsoft Entra ID App-Only .

## Prasyarat
<a name="kb-managed-sharepoint-oauth2-prereqs"></a>
+ Akun pengguna Microsoft 365 yang nama pengguna dan kata sandinya digunakan konektor untuk masuk. Akun harus memiliki akses ke SharePoint situs yang ingin Anda jelajahi, dan tidak memerlukan MFA atau Akses Bersyarat untuk masuk.
+ Akses administrator Microsoft Entra ID untuk mendaftarkan aplikasi dan membuat rahasia klien.
+ ID penyewa Microsoft 365 Anda.

## Langkah 1: Daftarkan aplikasi di Microsoft Entra ID
<a name="kb-managed-sharepoint-oauth2-step1"></a>

1. Masuk ke [pusat admin Microsoft Entra](https://entra.microsoft.com/).

1. Di navigasi kiri, perluas **ID Entra** dan pilih **Pendaftaran aplikasi**.

1. Pilih **Pendaftaran baru**.

1. Untuk **Nama**, masukkan nama deskriptif, seperti`bedrock-sharepoint-oauth2`.

1. Untuk **jenis akun yang didukung**, pilih **Akun di direktori organisasi ini saja (Penyewa tunggal)**.

1. Biarkan **URI Redirect** kosong, dan pilih **Register**.

1. Pada halaman **Ikhtisar** aplikasi, catat ID **Aplikasi (klien) dan ID** **Direktori (penyewa)**.

## Langkah 2: Tambahkan izin API dan berikan persetujuan admin
<a name="kb-managed-sharepoint-oauth2-step2"></a>

Otentikasi OAuth 2.0 memerlukan dua izin: izin aplikasi Microsoft Graph untuk menghitung situs, dan izin yang didelegasikan untuk membaca konten. SharePoint Tetapkan kedua hal berikut ini.


**Izin untuk otentikasi OAuth 2.0**  

| API | Izin | Tipe | Tujuan | 
| --- | --- | --- | --- | 
| Grafik Microsoft | Sites.Read.All | Aplikasi | Menghitung situs SharePoint . | 
| SharePoint | AllSites.Read | Delegasikan | Baca konten situs melalui SharePoint REST API. Memerlukan persetujuan admin (lihat catatan berikut). | 

1. Dalam pendaftaran aplikasi Anda, pilih **izin API**, lalu **Tambahkan izin**.

1. Pilih **Microsoft Graph**, lalu **Izin aplikasi**. Cari dan pilih`Sites.Read.All`, lalu pilih **Tambahkan izin**.

1. Pilih **Tambah izin** lagi. Pilih **SharePoint**(di bawah **Microsoft API**), lalu **Izin yang didelegasikan**. Pilih `AllSites.Read` (Baca item di semua koleksi situs), lalu pilih **Tambahkan izin**.

1. Pada halaman **izin API**, pilih **Berikan persetujuan admin untuk [organisasi Anda]** dan konfirmasikan.

**penting**  
Anda harus memberikan persetujuan admin meskipun portal Entra menunjukkan **persetujuan Admin diperlukan: Tidak** untuk izin yang SharePoint `AllSites.Read` didelegasikan. **Kolom tersebut menunjukkan bahwa pengguna biasanya dapat menyetujui selama proses masuk interaktif — tetapi alur kredensil kata sandi pemilik sumber daya tidak memiliki permukaan interaktif, sehingga izin tidak dapat disetujui pada waktu masuk dan harus diberikan terlebih dahulu melalui persetujuan admin Hibah untuk [organisasi Anda].** Tanpa itu, permintaan SharePoint token gagal dengan `AADSTS65001` (pengguna atau administrator belum menyetujui untuk menggunakan aplikasi) dan sumber data tidak dapat disinkronkan.

**catatan**  
Jika penyewa Anda mengaktifkan default keamanan, alur kredensyal kata sandi pemilik sumber daya mungkin diblokir. Anda mungkin memerlukan administrator untuk menyesuaikan default keamanan penyewa atau kebijakan Akses Bersyarat sehingga akun yang digunakan di sini dapat masuk tanpa MFA. Untuk informasi selengkapnya, lihat dokumentasi Microsoft tentang [default keamanan](https://learn.microsoft.com/en-us/entra/fundamentals/security-defaults).

## Langkah 3: Buat rahasia klien
<a name="kb-managed-sharepoint-oauth2-step3"></a>

1. Dalam pendaftaran aplikasi Anda, pilih **Sertifikat & rahasia**, lalu **Rahasia klien**, lalu **Rahasia klien baru**.

1. **Masukkan deskripsi, pilih kedaluwarsa, dan pilih Tambah.**

1. Catat **Nilai** rahasia segera — hanya ditampilkan sekali. Catat **Nilai**, bukan **ID Rahasia**.

## Langkah 4: Buat rahasia Secrets Manager
<a name="kb-managed-sharepoint-oauth2-step4"></a>

Simpan kredensyal secara AWS Secrets Manager rahasia dengan pasangan kunci-nilai berikut:
+ `clientId`— ID aplikasi (klien) dari Langkah 1.
+ `clientSecret`— nilai rahasia klien dari Langkah 3.
+ `userName`— nama pengguna (UPN) dari akun pengguna Microsoft 365.
+ `password`Password untuk akun tersebut.

```
{
    "clientId": "{{your-client-id}}",
    "clientSecret": "{{your-client-secret}}",
    "userName": "{{user@yourdomain.onmicrosoft.com}}",
    "password": "{{your-account-password}}"
}
```

Buat rahasia dengan AWS Command Line Interface:

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

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

**catatan**  
Kata sandi akun disimpan dalam rahasia dan digunakan untuk setiap sinkronisasi. Jika kata sandi berubah, perbarui rahasianya. Karena konektor masuk dengan akun ini, perlakukan rahasia sebagai sangat sensitif dan batasi akses ke sana.

## Pemecahan masalah
<a name="kb-managed-sharepoint-oauth2-troubleshooting"></a>

Jika sumber data gagal disinkronkan, cocokkan kesalahan dengan tanda tangan berikut.


**Kesalahan sinkronisasi OAuth 2.0**  

| Kesalahan | Penyebab dan resolusi | 
| --- | --- | 
| AADSTS65001(pengguna atau administrator belum menyetujui untuk menggunakan aplikasi) | Izin SharePoint AllSites.Read yang didelegasikan belum disetujui admin. Dalam pendaftaran aplikasi Anda, pilih izin API, lalu Berikan persetujuan admin untuk [organisasi Anda]. Lihat Langkah 2. | 
| Rest API token request failed with status: 400 | Login kredensial kata sandi pemilik sumber daya gagal saat autentikasi, biasanya karena akun memerlukan MFA atau kebijakan Akses Bersyarat yang tidak dapat dipenuhi oleh alur. Gunakan akun yang tidak memerlukan MFA, dan konfirmasikan userName dan password rahasianya benar. | 
| SharePoint app is missing required scopes | Izin Sites.Read.All aplikasi Microsoft Graph belum diberikan (atau disetujui). Konektor memeriksa token aplikasi Grafik untuk cakupan ini sebelum merayapi. Tambahkan izin Sites.Read.All aplikasi Microsoft Graph dan berikan persetujuan admin. Lihat Langkah 2. | 

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

Setelah Anda menyimpan rahasia, buat sumber data dengan `authType` set to`OAUTH2_APP`. Anda tidak memberikan sertifikat untuk metode ini. Lihat [Connect sumber SharePoint data](kb-managed-ds-sharepoint-connect.md).