

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Configurare l'autenticazione Microsoft Entra App ID per OneDrive
<a name="kb-managed-onedrive-entra-setup"></a>

L'autenticazione Microsoft Entra App ID (`ENTRA_APP_ID`) è il metodo di autenticazione consigliato per un'origine OneDrive dati. Il connettore esegue la scansione dei contenuti con il flusso di credenziali del client OAuth 2.0 (solo applicazione), utilizzando l'ID client e il segreto dell'applicazione: non è necessario l'accesso dell'utente. Questo è l'unico metodo di autenticazione che supporta il controllo degli accessi a livello di documento (ACL). Per un confronto con il `OAUTH2` metodo alternativo, vedere. [Metodi di autenticazione](kb-managed-ds-onedrive.md#kb-managed-onedrive-auth-methods)

**Nota**  
Un certificato è richiesto solo quando si abilita il controllo degli accessi a livello di documento. Per la scansione dei soli contenuti, l'ID client e il segreto sono le uniche credenziali necessarie al connettore. Ciò è diverso da un'origine SharePoint dati, in cui l' App-Only autenticazione con ID Microsoft Entra richiede sempre un certificato.

**È richiesto l'accesso amministrativo**  
Questa configurazione richiede un amministratore Microsoft Entra ID (amministratore globale o amministratore del ruolo privilegiato) per registrare l'applicazione, configurare le autorizzazioni e concedere il consenso dell'amministratore. La tabella dei **passaggi e dei ruoli di configurazione** riportata di seguito identifica l'accesso richiesto per ogni passaggio.

## Fasi e ruoli di configurazione
<a name="kb-managed-onedrive-entra-roles"></a>

Questa procedura coinvolge sia un amministratore dell'ID Microsoft Entra che un AWS amministratore. A seconda della ripartizione delle responsabilità all'interno dell'organizzazione, è possibile che una o più persone completino questi passaggi. I passaggi relativi al certificato (passaggi 4—6 e 8) si applicano solo quando si abilita il controllo degli accessi a livello di documento. Utilizza la tabella seguente per identificare l'accesso richiesto da ogni passaggio.


**Fasi di configurazione e accesso richiesto da ciascuna di esse**  

| Fase | Cosa fai | Accesso necessario | 
| --- | --- | --- | 
| 1. Registra l'applicazione | Crea la registrazione dell'app Entra e registra i relativi ID cliente e tenant. | Amministratore ID Microsoft Entra (amministratore globale o amministratore dei ruoli privilegiati) | 
| 2. Aggiungi autorizzazioni e concedi il consenso | Assegna le autorizzazioni dell'applicazione per la configurazione e concedi il consenso dell'amministratore. | Amministratore Microsoft Entra ID | 
| 3. Crea un segreto per il cliente | Crea un client secret per l'applicazione e registrane il valore. | Amministratore Microsoft Entra ID | 
| 4. Genera il certificato (solo ACL) | Crea un certificato autofirmato e un pacchetto PKCS \#12 (.p12) con OpenSSL. | Chiunque disponga di un terminale locale (è richiesto OpenSSL) | 
| 5. Carica il certificato pubblico su Entra (solo ACL) | Aggiungi il certificato pubblico alle chiavi di registrazione dell'app. | Amministratore Microsoft Entra ID | 
| 6. Carica il certificato su Amazon S3 (solo ACL) | Archivia il .p12 pacchetto in un bucket Amazon S3. | AWS amministratore (Amazon S3) | 
| 7. Creazione del segreto | Memorizza le credenziali in un AWS Secrets Manager luogo segreto. | AWS amministratore (Secrets Manager) | 
| 8. Concedi al ruolo di servizio l'accesso al certificato (solo ACL) | Aggiungi le autorizzazioni di lettura di Amazon S3 al tuo ruolo di servizio della knowledge base. | AWS amministratore (IAM) | 

## Riferimento per le autorizzazioni
<a name="kb-managed-onedrive-entra-permissions"></a>

Assegna le autorizzazioni all'applicazione che corrispondono alla tua configurazione. Tutte le autorizzazioni sono autorizzazioni **dell'applicazione** (non delegate) e ognuna richiede il consenso dell'amministratore. **Per la scansione dei soli contenuti, il connettore esegue l'autenticazione solo su Microsoft Graph.** Quando è abilitato il controllo degli accessi a livello di documento, il connettore si autentica inoltre all'API **SharePoint**REST per verificare l'accesso al momento della query, poiché for Business è supportato da. OneDrive SharePoint

**Importante**  
**Quando aggiungi queste autorizzazioni nel portale Entra, scegli la scheda Autorizzazioni dell'**applicazione, non Autorizzazioni delegate**.** Application-only l'autenticazione utilizza le autorizzazioni dell'applicazione.

Seleziona la scheda relativa alla configurazione per visualizzare le autorizzazioni esatte da assegnare.

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


**Solo contenuti**  

| "Hello, World\!" | Autorizzazione | Scopo | 
| --- | --- | --- | 
| Microsoft Graph | Files.Read.All | Leggi i file nelle unità degli utenti. | 
| Microsoft Graph | Sites.Read.All | Leggi i OneDrive siti che supportano i drive degli utenti. | 
| Microsoft Graph | User.Read.All | Enumera gli utenti di cui esegui la scansione dei drive. | 

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


**Con ACL**  

| "Hello, World\!" | Autorizzazione | Scopo | 
| --- | --- | --- | 
| Microsoft Graph | Files.Read.All | Leggi i file nei drive degli utenti. | 
| Microsoft Graph | Sites.Read.All | Leggi i OneDrive siti che supportano i drive degli utenti. | 
| Microsoft Graph | User.Read.All | Enumera gli utenti e risolvili per gli ACL a livello di documento. | 
| Microsoft Graph | GroupMember.Read.All | Risolvi l'appartenenza ai gruppi per gli ACL a livello di documento. | 
| SharePoint | Sites.FullControl.All | Verifica l'accesso di ogni utente a un documento al momento della query. Sites.Read.Allnon è sufficiente per questo controllo. | 

------

**Nota**  
L' SharePoint `Sites.FullControl.All`autorizzazione concede all'applicazione Connector un ampio accesso a tutti i siti del tenant. Concedila solo a questa applicazione e proteggi di conseguenza le credenziali dell'applicazione.

## Valori raccolti durante la configurazione
<a name="kb-managed-onedrive-entra-values"></a>

I seguenti valori vengono creati o raccolti man mano che si eseguono i passaggi. Li usi quando crei l'origine dati. Per informazioni dettagliate, vedi [Connect una fonte di OneDrive dati](kb-managed-ds-onedrive-connect.md).


**Valori di riferimento**  

| Valore | Creato in | Usato per | 
| --- | --- | --- | 
| ID dell’applicazione (client) | Fase 1 | Il segreto (clientId). | 
| ID della directory (tenant) | Fase 1 | La fonte tenantId dei dati. | 
| Valore segreto del cliente | Fase 3 | Il segreto (clientSecret). | 
| Certificato: pacchetto PKCS \#12 (.p12) e relativa password (solo ACL) | Fase 4 | Il pacchetto (certificato più chiave privata) viene caricato su Amazon S3 (Fase 6); la password viene memorizzata nel file segreto certificatePassword (). | 
| Certificato: certificato pubblico (.cer) (solo ACL) | Fase 4 | La metà pubblica dello stesso certificato, caricata nella registrazione dell'app Entra (Fase 5). | 
| Nome e chiave del bucket Amazon S3 (solo ACL) | Fase 6 | La fonte dei dati. certificateS3Path | 
| ARN del segreto | Fase 7 | La fonte dei datisecretArn. | 

## Passaggio 1: registrare l'applicazione in Microsoft Entra ID
<a name="kb-managed-onedrive-entra-step1"></a>

1. Accedi al [centro di amministrazione di Microsoft Entra](https://entra.microsoft.com/).

1. Nella barra di navigazione a sinistra, espandi **Entra ID** e scegli **Registrazioni app**.

1. Scegli **Nuova registrazione**.

1. Per **Nome**, inserisci un nome descrittivo, ad esempio`bedrock-onedrive-connector`.

1. Per i **tipi di account supportati**, seleziona **Account solo in questa directory organizzativa (tenant singolo)**.

1. Lascia vuoto l'**URI di reindirizzamento**. Non è necessario un URI di reindirizzamento perché l'applicazione utilizza il flusso di credenziali del cliente, non un flusso di accesso interattivo.

1. Scegli **Registrati**.

1. Nella pagina **Panoramica** dell'applicazione, registrate l'ID dell'**applicazione (client) e l'ID** della **directory** (tenant). Ti serviranno entrambi in seguito.

## Passaggio 2: aggiungi le autorizzazioni API e concedi il consenso dell'amministratore
<a name="kb-managed-onedrive-entra-step2"></a>

Aggiungi le autorizzazioni per la tua configurazione da. [Riferimento per le autorizzazioni](#kb-managed-onedrive-entra-permissions)

1. Nella registrazione dell'app, scegli **Autorizzazioni API**, quindi **Aggiungi un'**autorizzazione.

1. Scegli **Microsoft Graph**, quindi **Autorizzazioni dell'applicazione**. Cerca e seleziona ogni autorizzazione di Microsoft Graph per la tua configurazione, quindi scegli **Aggiungi autorizzazioni**.

1. Se stai abilitando il controllo degli accessi a livello di documento, scegli nuovamente **Aggiungi un'autorizzazione**. Scegli **SharePoint**(in **Microsoft API**), quindi **Autorizzazioni dell'applicazione**. Seleziona`Sites.FullControl.All`, quindi scegli **Aggiungi** autorizzazioni.

1. Nella pagina delle **autorizzazioni API**, scegli **Concedi il consenso dell'amministratore per [la tua organizzazione] e conferma**. Senza il consenso dell'amministratore, l'applicazione non può accedere ai OneDrive dati.

## Fase 3: Creare un segreto per il cliente
<a name="kb-managed-onedrive-entra-step3"></a>

OneDrive la scansione utilizza l'ID client e il segreto dell'applicazione, quindi è necessario un segreto client sia per i soli contenuti che per le fonti di dati. ACL-enabled Quando il controllo degli accessi a livello di documento è abilitato, il connettore utilizza il segreto del client per ottenere un token Microsoft Graph che risolve l' OneDrive host del tenant e il certificato (dal passaggio 4) per ottenere il SharePoint token utilizzato per il controllo dell'accesso.

1. **Nella registrazione dell'app, scegli **Certificati e segreti**, quindi Segreti client, quindi **Nuovo segreto client**.**

1. Inserisci una descrizione, scegli una scadenza e scegli **Aggiungi**.

1. Registra immediatamente il **valore** segreto: viene mostrato solo una volta. Registra il **valore**, non l'**ID segreto**.

## Fase 4 (solo ACL): Generazione del certificato di autenticazione
<a name="kb-managed-onedrive-entra-step4"></a>

**Nota**  
Questo passaggio e i passaggi 5, 6 e 8 si applicano solo se si abilita il controllo degli accessi a livello di documento. Per la scansione dei soli contenuti, vai a. [Passaggio 7: Creare il segreto di Secrets Manager](#kb-managed-onedrive-entra-step7)

Genera un certificato autofirmato e impacchettalo come pacchetto PKCS \#12 (). `.p12` Il pacchetto contiene sia il certificato che la relativa chiave privata, protetta da una password. Carichi il certificato pubblico su Entra (Fase 5) e il `.p12` pacchetto su Amazon S3 (Fase 6). Seleziona la scheda del tuo sistema operativo per visualizzare i comandi.

**Nota**  
Amazon Bedrock legge la chiave privata dal `.p12` pacchetto per firmare le asserzioni di autenticazione, quindi il pacchetto deve essere protetto da password. Scegli una password sicura e casuale: la memorizzi in modo segreto come nel passaggio 7. `certificatePassword`

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

**Genera una chiave privata e un certificato autofirmato**

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

**Package del certificato e della chiave come pacchetto PKCS \#12 (`.p12`)**

Immettete una password di esportazione sicura quando richiesto. Registrala per il passaggio 7.

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

Ora hai tre file: la chiave privata (`private_key.pem`), il certificato pubblico (`certificate.cer`) e il bundle (`certificate.p12`). Carichi il certificato pubblico su Entra nella fase 5 e il `.p12` pacchetto su Amazon S3 nella fase 6.

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

**Genera un certificato autofirmato**

I seguenti PowerShell comandi generano un certificato autofirmato RSA a 2048 bit con un periodo di validità di un anno e lo archiviano nell'archivio certificati dell'utente corrente. Sostituiscila {{your-password}} con una password sicura e casuale: la memorizzi nell'area segreta come nel passaggio 7. `certificatePassword`

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

**Esporta il certificato pubblico**

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

**Esporta il pacchetto PKCS \#12 (`.p12`)**

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

Ora avete due file: il certificato pubblico (`certificate.cer`) e il bundle (). `certificate.p12` Carichi il certificato pubblico su Entra nella fase 5 e il `.p12` pacchetto su Amazon S3 nella fase 6.

------

**Importante**  
Archivia il `.p12` pacchetto in Amazon S3 (non `.pem` nel file `.cer` or). Il pacchetto contiene la chiave privata utilizzata da Amazon Bedrock per l'autenticazione SharePoint per la verifica dell'accesso, quindi archiviala in modo sicuro. Document-level il controllo degli accessi richiede il formato. `.p12`

**Nota**  
Per impostazione predefinita, il certificato è valido per un anno. Un certificato scaduto causa il fallimento di tutte le sincronizzazioni, quindi ruota il certificato prima che scada. Per modificare il periodo di validità, modifica l'`-days`opzione (OpenSSL) o `-NotAfter` l'argomento (). PowerShell Per le fasi di rotazione, vedere. [Ruota il certificato](kb-managed-ds-onedrive-troubleshooting.md#kb-managed-ds-onedrive-rotate-cert)

## Fase 5 (solo ACL): carica il certificato pubblico su Entra
<a name="kb-managed-onedrive-entra-step5"></a>

1. Nella registrazione dell'app, scegli **Certificati e segreti**, quindi la scheda **Certificati**.

1. Scegli **Carica certificato** e seleziona il `certificate.cer` file che hai generato nella Fase 4 (solo il certificato pubblico: non caricare mai il `.p12` pacchetto o la chiave privata su Entra).

1. Scegliere **Aggiungi**.

## Fase 6 (solo ACL): carica il certificato su Amazon S3
<a name="kb-managed-onedrive-entra-step6"></a>

Carica il `.p12` pacchetto dalla Fase 4 in un bucket Amazon S3 nella AWS stessa regione della tua knowledge base. Registra il nome e la chiave del bucket: li usi come fonte di dati. `certificateS3Path`

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

**Nota**  
Ti consigliamo di abilitare la crittografia lato server sull'oggetto del certificato e di limitare il bucket ai principali che ne hanno bisogno. Il pacchetto contiene la chiave privata.

## Passaggio 7: Creare il segreto di Secrets Manager
<a name="kb-managed-onedrive-entra-step7"></a>

Memorizza le credenziali in un luogo AWS Secrets Manager segreto. Per l'autenticazione Microsoft Entra App ID, includi le seguenti coppie chiave-valore:
+ `clientId`(obbligatorio): l'ID dell'applicazione (client) del passaggio 1.
+ `clientSecret`(obbligatorio) — il valore segreto del client del passaggio 3.
+ `certificatePassword`(solo controllo degli accessi a livello di documento, consigliato): la password impostata nel `.p12` pacchetto nel passaggio 4. Vedi la nota che segue.

**Solo contenuto (nessun controllo dell'accesso a livello di documento)**

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

**Con controllo degli accessi a livello di documento**

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

Crea il segreto con: AWS Command Line Interface

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

Registra l'ARN segreto della risposta. Lo usi come fonte `secretArn` di dati.

**Nota**  
Quando è abilitato il controllo dell'accesso `certificatePassword` a livello di documento, imposta la password utilizzata durante la creazione del `.p12` pacchetto nel passaggio 4. Se ometti questo campo, Amazon Bedrock apre il pacchetto utilizzando l'ID client dell'applicazione come password, quindi il pacchetto deve essere stato creato con l'ID client come password. Ti consigliamo invece di impostare sempre una password esplicita ad alta entropia.

## Fase 8 (solo ACL): concedere al ruolo di servizio l'accesso al certificato
<a name="kb-managed-onedrive-entra-step8"></a>

Il ruolo del servizio della Knowledge Base deve essere in grado di leggere l'oggetto del certificato da Amazon S3. Aggiungi la seguente dichiarazione alla politica di autorizzazione del ruolo, sostituendo il nome e la chiave del bucket con i tuoi valori.

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

**Nota**  
La policy consente inoltre l'accesso in lettura a un `.metadata.json` file opzionale insieme al certificato. Amazon Bedrock non richiede questo file; l'inclusione dell'autorizzazione previene eventuali errori di accesso.

**Se l'oggetto del certificato è crittografato con una chiave AWS KMS**

Il comando upload in [Fase 6 (solo ACL): carica il certificato su Amazon S3](#kb-managed-onedrive-entra-step6) utilizza la S3-managed crittografia Amazon (`AES256`), che non richiede autorizzazioni aggiuntive. Se invece si crittografa l'oggetto certificato con la crittografia lato server di Amazon S3 utilizzando una chiave KMS gestita dal cliente SSE-KMS (), anche il ruolo di servizio `kms:Decrypt` necessita dell'autorizzazione su quella chiave e la politica della chiave deve consentire al ruolo di utilizzarla. Gli oggetti crittografati con la `aws/s3` chiave AWS gestita non richiedono questa concessione aggiuntiva.

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

Per il set completo di autorizzazioni per i ruoli del servizio della Knowledge Base, vedere[Autorizzazioni per accedere alle origini dati](kb-permissions.md#kb-permissions-access-ds).

## Fasi successive
<a name="kb-managed-onedrive-entra-next"></a>

Ora disponi delle credenziali necessarie per creare l'origine dati: l'ARN segreto, il tuo ID tenant e (per il controllo degli accessi a livello di documento) la posizione Amazon S3 del certificato. Per creare l'origine OneDrive dati con o l'API, consulta Console di gestione AWS . [Connect una fonte di OneDrive dati](kb-managed-ds-onedrive-connect.md)