

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à.

# Document-level controlli di accesso
<a name="kb-managed-ds-onedrive-acl"></a>

OneDrive le fonti di dati supportano opzionalmente il controllo degli accessi a livello di documento. Se abilitata, Bedrock Managed Knowledge Base sincronizza gli elenchi di controllo degli accessi (ACL) utilizzati OneDrive durante ogni scansione e verifica le autorizzazioni di ciascun utente al momento della query, in modo che gli utenti vedano solo i risultati dei documenti a cui sono autorizzati ad accedere. OneDrive Per una panoramica del riconoscimento ACL su tutti i connettori, vedere. [Attivazione del riconoscimento delle liste di controllo degli accessi](kb-managed-acl.md)

**Il riconoscimento ACL non è un'autorizzazione**  
Bedrock Managed Knowledge Base fornisce un ACL-aware filtro, non un limite di sicurezza. Bedrock Managed Knowledge Base non autentica gli utenti finali: l'applicazione è responsabile dell'autenticazione degli utenti e del passaggio del contesto di identità verificato. Bedrock Managed Knowledge Base non può verificare l'autenticità del contesto utente fornito. Pertanto, questa funzione filtra i risultati in base all'identità fornita ma non costituisce una vera autorizzazione. Non devi fare affidamento su questa funzionalità come unico meccanismo di controllo degli accessi senza l'autenticazione a monte.

## Come funziona
<a name="kb-managed-ds-onedrive-acl-how"></a>

Quando un utente esegue una query su una knowledge base che utilizza una fonte di ACL-enabled OneDrive dati, Bedrock Managed Knowledge Base applica i controlli di accesso in due fasi:
+ **Pre-retrieval filtraggio**: Bedrock Managed Knowledge Base applica gli elenchi di controllo degli accessi sincronizzati OneDrive durante l'ultima scansione, restituendo solo i documenti candidati a cui l'utente (o i relativi gruppi) è autorizzato a accedere.
+ **Real-time verifica**: Bedrock Managed Knowledge Base verifica i documenti dei candidati in tempo reale controllando l'accesso corrente dell'utente che effettua la query. OneDrive Nella risposta sono inclusi solo i documenti a cui l'utente è attualmente autorizzato ad accedere.

Questo approccio in due fasi fornisce un controllo degli accessi a livello di documento che rimane aggiornato anche quando le OneDrive autorizzazioni cambiano tra una sincronizzazione e l'altra.

## Cosa viene sottoposto a scansione
<a name="kb-managed-ds-onedrive-acl-crawl"></a>

Quando gli ACL sono abilitati, Bedrock Managed Knowledge Base esegue la scansione delle autorizzazioni di condivisione a livello di file e delle assegnazioni dei gruppi di sicurezza da. OneDrive Vengono inoltre risolte le appartenenze ai gruppi annidati (transitivi).

Al momento della richiesta si trasmette l'indirizzo e-mail dell'utente (non un gruppo). Bedrock Managed Knowledge Base risolve le appartenenze ai gruppi di quell'utente dai dati sottoposti a scansione e le applica quando filtra i risultati. Per ulteriori informazioni sul modello di identità, vedere. [Attivazione del riconoscimento delle liste di controllo degli accessi](kb-managed-acl.md)

## Prerequisiti per la conoscenza dell'ACL
<a name="kb-managed-ds-onedrive-acl-prereqs"></a>

ACL-enabled OneDrive utilizza due diverse API Microsoft, ognuna con il proprio set di autorizzazioni per l'applicazione Microsoft Entra: la scansione utilizza l'API Microsoft Graph e la verifica in tempo reale utilizza SharePoint l'API REST OneDrive (for Business è supportata da). SharePoint Configura le autorizzazioni per entrambe le API, con il consenso dell'amministratore, prima di abilitare il riconoscimento ACL.
+ `User.Read.All`e `GroupMember.Read.All` su Microsoft Graph (per la scansione delle identità).
+ `Sites.FullControl.All`attivo SharePoint (per la verifica dell'accesso ai documenti). `Sites.Read.All`non è sufficiente: l'accesso in sola lettura non può eseguire la verifica dell'effettiva autorizzazione richiesta dalla verifica in tempo reale.

**Importante**  
La scansione utilizza l'API Microsoft Graph e la verifica in tempo reale utilizza l'API SharePoint REST, risorse diverse con autorizzazioni di applicazione diverse. Le autorizzazioni di scansione delle identità di Microsoft Graph sono necessarie ma non sufficienti: la verifica in tempo reale richiede inoltre l'autorizzazione con il consenso dell'amministratore. SharePoint `Sites.FullControl.All` La concessione delle sole autorizzazioni di Microsoft Graph è la causa più comune per cui un'origine ACL-enabled OneDrive dati non restituisce risultati anche quando l'utente ha accesso.

Per la procedura di configurazione completa, incluso il certificato, vedere. [Configurare l'autenticazione Microsoft Entra App ID per OneDrive](kb-managed-onedrive-entra-setup.md)

## Abilita il riconoscimento ACL
<a name="kb-managed-ds-onedrive-acl-enable"></a>

Per abilitare il riconoscimento ACL per un'origine OneDrive dati, imposta su `aclEnabled` `true` in `connectorParameters` e usa il tipo di `ENTRA_APP_ID` autenticazione. Questo tipo di autenticazione utilizza le autorizzazioni dell'applicazione che consentono a Bedrock Managed Knowledge Base di eseguire la scansione delle informazioni sull'identità e verificare l'accesso ai documenti al momento della query.

**Importante**  
La configurazione ACL è permanente. Non è possibile abilitare gli ACL su un'origine dati creata senza il supporto ACL e non è possibile disabilitare gli ACL una volta abilitati.

Quando gli ACL sono abilitati per OneDrive, è necessario includere un file di certificato PKCS \#12 () `certificateS3Path` nel `connectionConfiguration` puntamento a un file di certificato PKCS (`.p12`) in Amazon S3. Questo certificato viene utilizzato per la verifica ACL in tempo reale rispetto all'API REST. SharePoint Non `certificateS3Path` è richiesto quando gli ACL sono disabilitati.

```
"connectorParameters": {
    "type": "ONEDRIVE",
    "version": "1",
    "aclEnabled": true,
    "connectionConfiguration": {
        "tenantId": "{{your-tenant-id}}",
        "authType": "ENTRA_APP_ID",
        "secretArn": "{{arn:aws:secretsmanager:region:account-id:secret:secret-name}}",
        "certificateS3Path": {
            "s3BucketName": "{{your-certificate-bucket}}",
            "s3KeyName": "{{certs/certificate.p12}}"
        }
    },
    "dataEntityConfiguration": {
        "crawlPersonalDrives": true
    }
}
```

**Nota**  
Il `certificatePassword` campo del segreto è facoltativo. Se lo ometti, Bedrock Managed Knowledge Base apre il file PKCS \#12 (`.p12`) utilizzando l'ID client dell'applicazione come password, quindi il certificato deve essere stato creato con quella password. Ti consigliamo di impostare sempre un'entropia esplicita e ad alta entropia `certificatePassword` per proteggere la chiave privata del certificato quando è inattiva.

**Nota**  
Il tipo di `OAUTH2` autenticazione non è supportato per le fonti di dati. ACL-enabled OneDrive Devi utilizzare `ENTRA_APP_ID`.

## Real-time verifica dell'accesso
<a name="kb-managed-ds-onedrive-acl-realtime"></a>

Bedrock Managed Knowledge Base verifica ogni documento del candidato in tempo reale, interamente lato server, utilizzando le credenziali dell'applicazione: non è previsto l'accesso dell'utente finale o il consenso delegato. Poiché OneDrive for Business è supportato da SharePoint, Bedrock Managed Knowledge Base verifica le autorizzazioni effettive dell'utente che effettua la richiesta confrontandole con l'API REST dell'host del tenant. SharePoint OneDrive 

OneDrive la verifica in tempo reale utilizza un modello a due credenziali ed entrambe le credenziali sono obbligatorie:
+ L'ID client e il segreto del client contenuti nel tuo AWS Secrets Manager segreto equivalgono a un token Microsoft Graph utilizzato per risolvere l' OneDrive host del tenant (l'`-my.sharepoint.com`host).
+ Il certificato `certificateS3Path` emette il token SharePoint REST utilizzato per il controllo delle autorizzazioni stesso. Il certificato è la credenziale autorevole per la verifica in tempo reale: un token segreto del cliente da solo non può eseguire il controllo.

**Importante**  
L'applicazione deve disporre dell' SharePoint `Sites.FullControl.All`autorizzazione con il consenso dell'amministratore; non `Sites.Read.All` è sufficiente perché il controllo dell'autorizzazione effettiva richiede i diritti di controllo. manage/full Senza l'autorizzazione corretta, la verifica in tempo reale non è in grado di valutare le autorizzazioni effettive e non viene chiusa, negando ogni documento per ogni richiesta, anche quando l'utente ha accesso e il filtro di indicizzazione e di pre-recupero hanno avuto esito positivo. [Vedi](#kb-managed-ds-onedrive-acl-prereqs) Prerequisiti per il riconoscimento dell'ACL.

**Nota**  
Dopo aver concesso o acconsentito all'autorizzazione all' SharePoint applicazione, attendi fino a un'ora prima che la modifica abbia effetto per gli utenti controllati prima della modifica, poiché le credenziali di accesso all'applicazione vengono memorizzate nella cache. Per confermare la modifica più rapidamente, esegui un test con un altro utente che non è ancora stato interrogato.

## Verifica la tua configurazione
<a name="kb-managed-ds-onedrive-acl-verify"></a>

È possibile convalidare le autorizzazioni dell'applicazione Entra indipendentemente da una richiesta di recupero. Eseguite ciascuno dei seguenti controlli:

1. **Microsoft Graph (scansione)**:
   + Acquisisci un token applicativo con ambito`https://graph.microsoft.com/.default`.
   + Decodifica il token e conferma che l'`roles`attestazione includa le autorizzazioni Microsoft Graph richieste (`User.Read.All``GroupMember.Read.All`, e`Files.Read.All`).
   + Chiama `GET https://graph.microsoft.com/v1.0/users/{user}/drive/root/children` e conferma che elenca gli elementi del drive dell'utente.

1. **SharePoint REST (verifica in tempo reale)**:
   + Acquisisci un token utilizzando l'asserzione del client di certificazione con scope`https://{tenant}-my.sharepoint.com/.default`.
   + Conferma che la `roles` dichiarazione del token includa l' SharePoint `Sites.FullControl.All`autorizzazione. Un `roles: null` valore indica che manca l'autorizzazione o il consenso dell'amministratore.
   + Chiama `GET https://{tenant}-my.sharepoint.com/_api/web` e conferma che l'operazione ha esito positivo (HTTP 200). Una risposta non riuscita o non autorizzata significa che manca l' SharePoint autorizzazione o il consenso dell'amministratore, il che comporta la negazione di tutti i documenti.

**Nota**  
[Dopo aver corretto l'autorizzazione, la SharePoint chiamata ha esito immediato a livello di token, ma un recupero completo per un utente già testato può comunque subire ritardi a causa del TTL della cache descritto nella verifica dell'accesso. Real-time ](#kb-managed-ds-onedrive-acl-realtime) Non concludere che la correzione non sia riuscita sulla base di un utente memorizzato nella cache.

## Risoluzione dei problemi
<a name="kb-managed-ds-onedrive-acl-troubleshooting"></a>

**Nota**  
Le configurazioni errate dell'ACL non producono errori espliciti durante il recupero. Il recupero non riesce a essere chiuso: i documenti interessati vengono omessi automaticamente, quindi una query restituisce un numero inferiore o nullo di risultati anziché un errore. Utilizza i controlli di verifica sopra riportati per diagnosticare questi problemi.


**ACL-enabled OneDrive sintomi, cause e correzioni**  

| Caratteristiche | Causa probabile | Correggere | 
| --- | --- | --- | 
| Recupera restituisce 0 risultati, ma l'utente può accedere. OneDrive | Le autorizzazioni di Microsoft Graph sono presenti, ma manca SharePoint l'autorizzazione dell'applicazione o il consenso dell'amministratore, quindi la chiamata SharePoint REST viene rifiutata e ogni documento viene negato. | Concedi l' SharePoint Sites.FullControl.Allautorizzazione con il consenso dell'amministratore. Poiché queste credenziali dell'applicazione sono memorizzate nella cache, attendi fino a un'ora prima che la modifica abbia effetto oppure esegui il test con un utente non ancora interrogato per confermare prima. | 
| L'accesso di un utente è stato modificato in OneDrive, ma il nuovo risultato non si riflette immediatamente. | Per-user i risultati di accesso alla fine sono coerenti tra l'origine dei dati e la Bedrock Managed Knowledge Base (in genere entro circa due minuti), quindi una modifica di accesso recente potrebbe non riflettersi immediatamente. | Dopo che l'origine dati riflette la modifica, attendi circa due minuti e riprova. | 
| Tutti gli utenti vengono rifiutati dopo aver lavorato in precedenza. | Il certificato è scaduto o il consenso dell'amministratore è stato revocato. | Rinnova il certificato nella registrazione dell'app Entra e in Amazon S3 e concedi nuovamente il consenso dell'amministratore. | 
| La scansione o la sincronizzazione non riescono anche se la configurazione sembra corretta. | Manca un'autorizzazione richiesta per l'applicazione Microsoft Graph. | Grant Files.Read.AllSites.Read.All,User.Read.All, eGroupMember.Read.All. | 
| Errori di coniazione della password o del token del certificato. | La .p12 password non corrisponde. certificatePassword | certificatePasswordImposta la password utilizzata per creare il .p12 file. | 