

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

# Mengatur otentikasi Microsoft Entra App ID untuk OneDrive
<a name="kb-managed-onedrive-entra-setup"></a>

Microsoft Entra App ID authentication (`ENTRA_APP_ID`) adalah metode otentikasi yang disarankan untuk sumber data. OneDrive Konektor meng-crawl konten dengan alur kredensial-klien OAuth 2.0 (khusus aplikasi), menggunakan ID klien dan rahasia aplikasi Anda — tidak ada login pengguna yang terlibat. Ini adalah satu-satunya metode otentikasi yang mendukung kontrol akses tingkat dokumen (ACL). Untuk perbandingan dengan `OAUTH2` metode alternatif, lihat[Metode autentikasi](kb-managed-ds-onedrive.md#kb-managed-onedrive-auth-methods).

**catatan**  
Sertifikat hanya diperlukan jika Anda mengaktifkan kontrol akses tingkat dokumen. Untuk crawling khusus konten, ID klien dan rahasia adalah satu-satunya kredensyal yang dibutuhkan konektor. Ini berbeda dari sumber SharePoint data, di mana App-Only otentikasi Microsoft Entra ID selalu memerlukan sertifikat.

**Diperlukan akses administratif**  
Pengaturan ini memerlukan administrator Microsoft Entra ID (Administrator Global atau Administrator Peran Istimewa) untuk mendaftarkan aplikasi, mengonfigurasi izin, dan memberikan persetujuan admin. Tabel **langkah dan peran Pengaturan** di bawah ini mengidentifikasi akses yang diperlukan untuk setiap langkah.

## Langkah dan peran pengaturan
<a name="kb-managed-onedrive-entra-roles"></a>

Prosedur ini melibatkan administrator Microsoft Entra ID dan AWS administrator. Bergantung pada bagaimana tanggung jawab dibagi dalam organisasi Anda, satu orang atau beberapa orang mungkin menyelesaikan langkah-langkah ini. Langkah-langkah sertifikat (Langkah 4—6 dan 8) hanya berlaku jika Anda mengaktifkan kontrol akses tingkat dokumen. Gunakan tabel berikut untuk mengidentifikasi akses yang dibutuhkan setiap langkah.


**Langkah-langkah pengaturan dan akses yang dibutuhkan masing-masing**  

| Langkah | Apa yang Anda lakukan | Diperlukan akses | 
| --- | --- | --- | 
| 1. Daftarkan aplikasi | Buat pendaftaran aplikasi Entra dan catat ID klien dan penyewa. | Administrator Microsoft Entra ID (Administrator Global atau Administrator Peran Istimewa) | 
| 2. Tambahkan izin dan berikan persetujuan | Tetapkan izin aplikasi untuk konfigurasi Anda dan berikan persetujuan admin. | Administrator Microsoft Entra ID | 
| 3. Buat rahasia klien | Buat rahasia klien untuk aplikasi dan catat nilainya. | Administrator Microsoft Entra ID | 
| 4. Hasilkan sertifikat (hanya ACL) | Buat sertifikat yang ditandatangani sendiri dan bundel PKCS \#12 (.p12) dengan OpenSSL. | Siapa pun yang memiliki terminal lokal (OpenSSL diperlukan) | 
| 5. Unggah sertifikat publik ke Entra (hanya ACL) | Tambahkan sertifikat publik ke kunci pendaftaran aplikasi. | Administrator Microsoft Entra ID | 
| 6. Unggah sertifikat ke Amazon S3 (hanya ACL) | Simpan .p12 bundel dalam ember Amazon S3. | AWS administrator (Amazon S3) | 
| 7. Buat rahasianya | Simpan kredensialnya secara rahasia. AWS Secrets Manager  | AWS administrator (Secrets Manager) | 
| 8. Berikan akses peran layanan ke sertifikat (hanya ACL) | Tambahkan izin baca Amazon S3 ke peran layanan basis pengetahuan Anda. | AWS administrator (IAM) | 

## Referensi izin
<a name="kb-managed-onedrive-entra-permissions"></a>

Tetapkan izin aplikasi yang sesuai dengan konfigurasi Anda. Semua izin adalah izin **aplikasi** (tidak didelegasikan), dan setiap izin memerlukan persetujuan admin. **Untuk crawling khusus konten, konektor hanya mengautentikasi ke Microsoft Graph.** Ketika kontrol akses tingkat dokumen diaktifkan, konektor juga mengautentikasi ke **SharePoint**REST API untuk memverifikasi akses pada waktu kueri, karena OneDrive for Business didukung oleh. SharePoint

**penting**  
**Saat Anda menambahkan izin ini di portal Entra, pilih tab Izin **aplikasi, bukan izin** Delegasi.** Application-only otentikasi menggunakan izin aplikasi.

Pilih tab untuk konfigurasi Anda untuk melihat izin yang tepat untuk ditetapkan.

------
#### [ Content only (no ACLs) ]


**Konten saja**  

| API | Izin | Tujuan | 
| --- | --- | --- | 
| Grafik Microsoft | Files.Read.All | Baca file di drive pengguna. | 
| Grafik Microsoft | Sites.Read.All | Baca OneDrive situs yang mendukung drive pengguna. | 
| Grafik Microsoft | User.Read.All | Hitung pengguna yang drive-nya Anda jelajahi. | 

------
#### [ With ACLs ]


**Dengan ACL**  

| API | Izin | Tujuan | 
| --- | --- | --- | 
| Grafik Microsoft | Files.Read.All | Baca file di drive pengguna. | 
| Grafik Microsoft | Sites.Read.All | Baca OneDrive situs yang mendukung drive pengguna. | 
| Grafik Microsoft | User.Read.All | Hitung pengguna dan selesaikan mereka untuk ACL tingkat dokumen. | 
| Grafik Microsoft | GroupMember.Read.All | Selesaikan keanggotaan grup untuk ACL tingkat dokumen. | 
| SharePoint | Sites.FullControl.All | Verifikasi akses setiap pengguna ke dokumen pada waktu kueri. Sites.Read.AllTidak cukup untuk pemeriksaan ini. | 

------

**catatan**  
 SharePoint `Sites.FullControl.All`Izin memberikan aplikasi konektor akses luas di seluruh situs di penyewa Anda. Berikan hanya untuk aplikasi ini, dan lindungi kredensyal aplikasi yang sesuai.

## Nilai yang Anda kumpulkan selama penyiapan
<a name="kb-managed-onedrive-entra-values"></a>

Anda membuat atau mengumpulkan nilai-nilai berikut saat Anda mengerjakan langkah-langkahnya. Anda menggunakannya saat Anda membuat sumber data. Lihat perinciannya di [Connect sumber OneDrive data](kb-managed-ds-onedrive-connect.md).


**Referensi nilai**  

| Nilai | Dibuat di | Digunakan untuk | 
| --- | --- | --- | 
| ID Aplikasi (klien) | Langkah 1 | Rahasianya (clientId). | 
| ID Direktori (penyewa) | Langkah 1 | Sumber datanyatenantId. | 
| Nilai rahasia klien | Langkah 3 | Rahasianya (clientSecret). | 
| Sertifikat - PKCS \#12 bundle (.p12) dan kata sandinya (hanya ACL) | Langkah 4 | Bundel (sertifikat plus kunci pribadi) diunggah ke Amazon S3 (Langkah 6); kata sandi disimpan dalam rahasia certificatePassword (). | 
| Sertifikat - sertifikat publik (.cer) (hanya ACL) | Langkah 4 | Setengah publik dari sertifikat yang sama, diunggah ke pendaftaran aplikasi Entra (Langkah 5). | 
| Nama dan kunci bucket Amazon S3 (hanya ACL) | Langkah 6 | Sumber datanyacertificateS3Path. | 
| Rahasia ARN | Langkah 7 | Sumber datanyasecretArn. | 

## Langkah 1: Daftarkan aplikasi di Microsoft Entra ID
<a name="kb-managed-onedrive-entra-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-onedrive-connector`.

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

1. Biarkan **Redirect URI** kosong. URI pengalihan tidak diperlukan karena aplikasi menggunakan alur kredensial-klien, bukan alur masuk interaktif.

1. Pilih**Pendaftaran**.

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

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

Tambahkan izin untuk konfigurasi Anda dari[Referensi izin](#kb-managed-onedrive-entra-permissions).

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

1. Pilih **Microsoft Graph**, lalu **Izin aplikasi**. Cari dan pilih setiap izin Microsoft Graph untuk konfigurasi Anda, lalu pilih **Tambahkan izin**.

1. Jika Anda mengaktifkan kontrol akses tingkat dokumen, pilih **Tambah** izin lagi. Pilih **SharePoint**(di bawah **Microsoft API**), lalu **Izin aplikasi**. Pilih`Sites.FullControl.All`, lalu pilih **Tambahkan izin**.

1. Pada halaman **izin API**, pilih **Berikan persetujuan admin untuk [organisasi Anda]** dan konfirmasikan. Tanpa persetujuan admin, aplikasi tidak dapat mengakses OneDrive data.

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

OneDrive crawling menggunakan ID klien dan rahasia aplikasi, sehingga rahasia klien diperlukan untuk konten saja dan ACL-enabled sumber data. Ketika kontrol akses tingkat dokumen diaktifkan, konektor menggunakan rahasia klien untuk mendapatkan token Microsoft Graph yang menyelesaikan OneDrive host penyewa Anda, dan sertifikat (dari Langkah 4) untuk mendapatkan SharePoint token yang digunakan untuk pemeriksaan akses.

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 (hanya ACL): Hasilkan sertifikat otentikasi
<a name="kb-managed-onedrive-entra-step4"></a>

**catatan**  
Langkah ini dan Langkah 5, 6, dan 8 hanya berlaku jika Anda mengaktifkan kontrol akses tingkat dokumen. Untuk crawling khusus konten, lewati ke. [Langkah 7: Buat rahasia Secrets Manager](#kb-managed-onedrive-entra-step7)

Buat sertifikat yang ditandatangani sendiri dan paketkan sebagai bundel PKCS \#12 ()`.p12`. Bundel berisi sertifikat dan kunci pribadinya, dilindungi oleh kata sandi. Anda mengunggah sertifikat publik ke Entra (Langkah 5) dan `.p12` bundel ke Amazon S3 (Langkah 6). Pilih tab untuk sistem operasi Anda untuk melihat perintah.

**catatan**  
Amazon Bedrock membaca kunci pribadi dari `.p12` bundel untuk menandatangani pernyataan otentikasi, sehingga bundel harus dilindungi kata sandi. Pilih kata sandi acak yang kuat - Anda menyimpannya dalam rahasia seperti `certificatePassword` pada Langkah 7.

------
#### [ Linux or macOS (OpenSSL) ]

**Buat kunci pribadi dan sertifikat yang ditandatangani sendiri**

```
openssl req -x509 -newkey rsa:2048 -keyout private_key.pem -out certificate.cer \
    -days 365 -nodes \
    -subj "/CN={{bedrock-onedrive-connector}}"
```

**Package sertifikat dan kunci sebagai bundel PKCS \#12 () `.p12`**

Masukkan kata sandi ekspor yang kuat saat diminta. Rekam untuk Langkah 7.

```
openssl pkcs12 -export -out certificate.p12 \
    -inkey private_key.pem -in certificate.cer
```

Anda sekarang memiliki tiga file: kunci pribadi (`private_key.pem`), sertifikat publik (`certificate.cer`), dan bundel (`certificate.p12`). Anda mengunggah sertifikat publik ke Entra di Langkah 5 dan `.p12` bundel ke Amazon S3 di Langkah 6.

------
#### [ Windows (PowerShell) ]

**Menghasilkan sertifikat yang ditandatangani sendiri**

 PowerShell Perintah berikut menghasilkan sertifikat yang ditandatangani sendiri RSA 2048-bit dengan masa berlaku satu tahun dan menyimpannya di toko sertifikat pengguna saat ini. Ganti {{your-password}} dengan kata sandi acak yang kuat - Anda menyimpannya dalam rahasia seperti `certificatePassword` pada Langkah 7.

```
$cert = New-SelfSignedCertificate `
    -Subject "CN={{bedrock-onedrive-connector}}" `
    -CertStoreLocation "Cert:\CurrentUser\My" `
    -KeyAlgorithm RSA `
    -KeyLength 2048 `
    -KeyExportPolicy Exportable `
    -NotAfter (Get-Date).AddYears(1)
```

**Ekspor sertifikat publik**

```
Export-Certificate -Cert $cert -FilePath certificate.cer -Type CERT
```

**Ekspor bundel PKCS \#12 () `.p12`**

```
$password = ConvertTo-SecureString -String "{{your-password}}" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath certificate.p12 -Password $password
```

Anda sekarang memiliki dua file: sertifikat publik (`certificate.cer`) dan bundel (`certificate.p12`). Anda mengunggah sertifikat publik ke Entra di Langkah 5 dan `.p12` bundel ke Amazon S3 di Langkah 6.

------

**penting**  
Simpan `.p12` bundel di Amazon S3 (bukan `.cer` file `.pem` atau). Bundel berisi kunci pribadi yang digunakan Amazon Bedrock untuk mengautentikasi SharePoint untuk verifikasi akses, jadi simpan dengan aman. Document-level kontrol akses membutuhkan `.p12` format.

**catatan**  
Sertifikat ini berlaku selama satu tahun secara default. Sertifikat yang kedaluwarsa menyebabkan semua sinkronisasi gagal, jadi putar sertifikat sebelum kedaluwarsa. Untuk mengubah masa berlaku, sesuaikan `-days` opsi (OpenSSL) atau `-NotAfter` argumen (). PowerShell Untuk langkah rotasi, lihat[Putar sertifikat](kb-managed-ds-onedrive-troubleshooting.md#kb-managed-ds-onedrive-rotate-cert).

## Langkah 5 (hanya ACL): Unggah sertifikat publik ke Entra
<a name="kb-managed-onedrive-entra-step5"></a>

1. Dalam pendaftaran aplikasi Anda, pilih **Sertifikat & rahasia**, lalu tab **Sertifikat**.

1. Pilih **Unggah sertifikat** dan pilih `certificate.cer` file yang Anda buat di Langkah 4 (hanya sertifikat publik — jangan pernah mengunggah `.p12` bundel atau kunci pribadi ke Entra).

1. Pilih **Tambahkan**.

## Langkah 6 (hanya ACL): Unggah sertifikat ke Amazon S3
<a name="kb-managed-onedrive-entra-step6"></a>

Unggah `.p12` bundel dari Langkah 4 ke bucket Amazon S3 di AWS Wilayah yang sama dengan basis pengetahuan Anda. Rekam nama dan kunci bucket — Anda menggunakannya sebagai sumber data`certificateS3Path`.

```
aws s3api put-object \
  --bucket {{your-certificate-bucket}} \
  --key {{certs/certificate.p12}} \
  --body certificate.p12 \
  --server-side-encryption AES256
```

**catatan**  
Kami menyarankan Anda mengaktifkan enkripsi sisi server pada objek sertifikat dan membatasi bucket ke prinsipal yang membutuhkannya. Bundel berisi kunci pribadi.

## Langkah 7: Buat rahasia Secrets Manager
<a name="kb-managed-onedrive-entra-step7"></a>

Simpan kredensialnya secara rahasia. AWS Secrets Manager Untuk otentikasi ID Aplikasi Microsoft Entra, sertakan pasangan nilai kunci berikut:
+ `clientId`(wajib) - ID aplikasi (klien) dari Langkah 1.
+ `clientSecret`(wajib) — nilai rahasia klien dari Langkah 3.
+ `certificatePassword`(kontrol akses tingkat dokumen saja, disarankan) - kata sandi yang Anda tetapkan pada `.p12` bundel di Langkah 4. Lihat catatan berikut.

**Hanya konten (tidak ada kontrol akses tingkat dokumen)**

```
{
    "clientId": "{{your-client-id}}",
    "clientSecret": "{{your-client-secret}}"
}
```

**Dengan kontrol akses tingkat dokumen**

```
{
    "clientId": "{{your-client-id}}",
    "clientSecret": "{{your-client-secret}}",
    "certificatePassword": "{{your-certificate-password}}"
}
```

Buat rahasia dengan AWS Command Line Interface:

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

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

**catatan**  
Saat kontrol akses tingkat dokumen diaktifkan, atur `certificatePassword` ke kata sandi yang Anda gunakan saat membuat `.p12` bundel di Langkah 4. Jika Anda menghilangkan bidang ini, Amazon Bedrock membuka bundel menggunakan ID klien aplikasi Anda sebagai kata sandi, sehingga bundel harus dibuat dengan ID klien sebagai kata sandinya. Kami menyarankan agar Anda selalu menetapkan kata sandi eksplisit dan entropi tinggi sebagai gantinya.

## Langkah 8 (hanya ACL): Berikan akses peran layanan ke sertifikat
<a name="kb-managed-onedrive-entra-step8"></a>

Peran layanan basis pengetahuan Anda harus dapat membaca objek sertifikat dari Amazon S3. Tambahkan pernyataan berikut ke kebijakan izin peran, ganti nama dan kunci bucket dengan nilai Anda.

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "S3ListCertificateBucket",
            "Effect": "Allow",
            "Action": ["s3:ListBucket"],
            "Resource": ["arn:aws:s3:::{{your-certificate-bucket}}"],
            "Condition": {
                "StringEquals": { "aws:ResourceAccount": ["{{123456789012}}"] }
            }
        },
        {
            "Sid": "S3GetCertificate",
            "Effect": "Allow",
            "Action": ["s3:GetObject"],
            "Resource": [
                "arn:aws:s3:::{{your-certificate-bucket}}/{{certs/certificate.p12}}",
                "arn:aws:s3:::{{your-certificate-bucket}}/{{certs/certificate.p12}}.metadata.json"
            ],
            "Condition": {
                "StringEquals": { "aws:ResourceAccount": ["{{123456789012}}"] }
            }
        }
    ]
}
```

**catatan**  
Kebijakan ini juga memungkinkan akses baca ke `.metadata.json` file opsional di samping sertifikat. Amazon Bedrock tidak memerlukan file ini; termasuk izin mencegah kesalahan akses jika ada.

**Jika objek sertifikat dienkripsi dengan kunci KMS AWS **

Perintah upload [Langkah 6 (hanya ACL): Unggah sertifikat ke Amazon S3](#kb-managed-onedrive-entra-step6) menggunakan S3-managed enkripsi Amazon (`AES256`), yang tidak memerlukan izin tambahan. Jika Anda mengenkripsi objek sertifikat dengan enkripsi sisi server Amazon S3 menggunakan kunci KMS yang dikelola pelanggan SSE-KMS (), peran layanan juga `kms:Decrypt` memerlukan izin pada kunci tersebut, dan kebijakan kunci harus mengizinkan peran untuk menggunakannya. Objek yang dienkripsi dengan `aws/s3` kunci AWS terkelola tidak memerlukan hibah tambahan ini.

```
{
    "Sid": "KmsDecryptCertificate",
    "Effect": "Allow",
    "Action": ["kms:Decrypt"],
    "Resource": ["arn:aws:kms:{{us-west-2}}:{{123456789012}}:key/{{your-key-id}}"]
}
```

Untuk set lengkap izin peran layanan basis pengetahuan, lihat[Izin untuk mengakses sumber data Anda](kb-permissions.md#kb-permissions-access-ds).

## Langkah selanjutnya
<a name="kb-managed-onedrive-entra-next"></a>

Anda sekarang memiliki kredensyal yang Anda butuhkan untuk membuat sumber data: ARN rahasia, ID penyewa Anda, dan (untuk kontrol akses tingkat dokumen) lokasi Amazon S3 sertifikat. Untuk membuat sumber OneDrive data dengan Konsol Manajemen AWS atau API, lihat[Connect sumber OneDrive data](kb-managed-ds-onedrive-connect.md).