Condividi tramite


Modalità di utilizzo della sicurezza dei campi per controllare l'accesso ai valori dei campi in Microsoft Dynamics 365

 

Data di pubblicazione: gennaio 2017

Si applica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

In Microsoft Dynamics 365 e Microsoft Dynamics 365 (online) si utilizza la sicurezza a livello di campo per limitare l'accesso di utenti e team specifici ai campi a elevato impatto aziendale. Ad esempio, utilizzare questa opzione per consentire solo a determinati utenti la lettura o l'aggiornamento del punteggio di credito per un cliente. Per questa versione, la protezione a livello di campo può essere applicata a entrambi i campi personalizzati e a più campi predefiniti (OOB).

Nella procedura seguente viene descritto come limitare l'accesso a un campo:

  1. Abilitare la sicurezza a livello di campi per un attributo

  2. Creare un profilo sicurezza a livello di campo

  3. Associare utenti o team al profilo

  4. Aggiungere autorizzazioni specifiche del campo, ad esempio creazione, aggiornamento o lettura per un attributo specifico, al profilo.

Il diagramma seguente illustra l'interazione tra sicurezza basata sui ruoli, sicurezza basata sui record e sicurezza a livello di campi.

Confronto tra sicurezza basata sui ruoli e sicurezza a livello di campo

La sicurezza basata sui ruoli consente di visualizzare un tipo di entità specifico, la sicurezza basata sui record consente di visualizzare singoli record e la sicurezza a livello di campo consente di visualizzare campi specifici.

Video: sicurezza a livello di campo in Microsoft Dynamics CRM 2015

Domande frequenti

  • Quali attributi possono essere protetti?

  • Quali ruoli di sicurezza consentono di vedere i campi protetti?

  • Qual è il comportamento dei campi protetti per Retrieve e RetrieveMultiple?

  • Qual è il comportamento dei campi protetti per la creazione o l'aggiornamento?

  • Qual è il comportamento dei campi protetti quando i record sono condivisi?

  • Qual è il comportamento dei campi protetti per le visualizzazioni filtrate?

  • Qual è il comportamento dei campi protetti per la sincronizzazione offline?

Quali attributi possono essere protetti?

Per visualizzare gli attributi che possono essere protetti, è possibile eseguire query sui metadati dell'entità per le proprietà seguenti:

Esistono migliaia di attributi che possono essere protetti, quindi sono disponibili due modi più semplici per individuare tali informazioni.Per visualizzare i metadati di entità per l'organizzazione, installa la soluzione Browser di metadati descritta in Visualizzazione dei metadati per l'organizzazione. Puoi inoltre visualizzare i metadati per un'organizzazione non personalizzata nel file Excel EntityMetadata.xlsx incluso nella cartella di livello superiore di Download degli SDK.

Esistono alcune regole aggiuntive applicabili a determinati tipi di dati di attributo:

  • Gli attributi booleani possono essere protetti per operazioni di creazione e aggiornamento ma non per la lettura.

  • Gli attributi del set di opzioni possono essere protetti per la creazione, l'aggiornamento e lettura quando un valore predefinito non è specificato.

Quali ruoli di sicurezza consentono di vedere i campi protetti?

Il profilo di sicurezza dei campi Amministratore di sistema consente l'accesso completo a tutti i campi protetti in Microsoft Dynamics 365. Per impostazione predefinita, tutti gli utenti con il ruolo di sicurezza Amministratore di sistema hanno questo profilo. Questo profilo è gestito dal sistema e non può essere aggiornato o eliminato.

Qual è il comportamento dei campi protetti per Retrieve e RetrieveMultiple?

Quando si chiamano i metodi Retrieve o RetrieveMultiple o i messaggi, Microsoft Dynamics 365 valuta se il chiamante e l'utente rappresentato hanno accesso a ogni record recuperato (questo è il processo di sicurezza normale) e a ogni campo protetto. La chiamata non genera un'eccezione se i criteri contengono campi protetti per i quali il chiamante non ha accesso. Al contrario, i valori null vengono restituiti per i campi protetti se fanno parte del set di colonne di output.

Di seguito vengono fornite altre informazioni sui comportamenti di recuperi multipli per i campi protetti.

Quando un attributo protetto è nel set di colonne

Se il chiamante (o l'utente rappresentato) non dispone dell'accesso in lettura a campi protetti inclusi in un set di colonne, il valore viene restituito come null. Non è possibile determinare la differenza tra un valore restituito null causato dall'assenza di dati o da accesso insufficiente.

Quando un attributo protetto è nella condizione di filtro

Se il chiamante (o utente rappresentato) non dispone dell'accesso ai campi protetti inclusi nei criteri di filtro, il valore del campo viene sostituito con null durante la valutazione del filtro.

Nella tabella seguente, il chiamante ha accesso a tutti gli attributi ad eccezione di quelli indicati con un asterisco (*).

Numero di record

Valore dell'attributo Nome.

Valore dell'attributo Descrizione

Valore dell'attributo Può essere contattato

1

A

AAA

Vero

2

G

BBB

Falso

3

C

CCC

Vero*

4

D

DDD

Null

5*

E*

EEE*

Null*

Quando il filtro è CanbeContacted == True, viene restituito solo il record uno.

Quando il filtro è IsNULL (CanbeContacted), vengono restituiti i record 3 e 4. Poiché il record 3 è nascosto all'utente, viene trattato come null durante la valutazione della condizione e sarà valutato come True per ISNull.

Quando si esegue l'aggregazione su attributi protetti

I valori protetti vengono sostituiti con un valore null, pertanto si applica il comportamento di aggregazione SQL normale.

Quando si esegue il raggruppamento su attributi protetti

Se il chiamante (o utente rappresentato) non ha accesso all'attributo utilizzato per il raggruppamento, il valore è trattato come null e i risultati sono raggruppati insieme a tutti i valori null.

Nell'esempio seguente, il chiamante ha accesso agli stessi attributi.Grassetto indica che non è possibile accedere agli attributi, indicato anche con *.Corsivo indica un record per il quale il chiamante non dispone dell'accesso in lettura, indicato anche con **.

Nome

Descrizione

Numero di ordini

stato

A

AAA

1

WA

G

BBB

4

WA

C

CCC

4

CA

D**

DDD**

3**

MA**

E

EEE

0

GE

F

FFF

0

WA*

G

GGG

2

GE*

Select State, Total(orders) Group by (STATE) restituisce quanto segue:

WA–5

CA–4

null–2

Quando si esegue l'ordinamento su attributi protetti

Se il chiamante (o l'utente rappresentato) non dispone dell'accesso a campi protetti inclusi in un ordine per condizione, i valori saranno considerati come null.

Nell'esempio seguente, il chiamante ha accesso agli attributi in testo normale.Grassetto indica che non è possibile accedere agli attributi, indicato anche con un asterisco (*).Corsivo indica un record per il quale il chiamante non dispone dell'accesso in lettura, indicato anche con **.

Nome

Descrizione

CanbeContacted

A

AAA

Vero

G

BBB

Falso

C

CCC*

Vero*

D

DDD

Null

E

EEE*

Null*

F**

FFF**

Vero**

G

Null

Vero

Select Name order by Description ascending restituisce quanto segue:

Verranno restituiti {G,E,C},A, B, D.

Qual è il comportamento dei campi protetti per la creazione o l'aggiornamento?

Un programmatore può creare un client che utilizza i metodi Create e Update che interagiscono con i campi protetti. Quando si chiama il metodo Update o Create, passando i dati per i campi protetti e il chiamante non dispone di autorizzazioni sufficienti, viene generata un'eccezione.

Qual è il comportamento dei campi protetti quando i record sono condivisi?

Un utente con accesso a un campo protetto di un record può condividerlo con un altro utente o team. L'utente può assegnare solo l'accesso di cui dispone per il record. Ad esempio, per condividere il record e concedere privilegi di aggiornamento, è necessario che l'utente disponga di privilegi di aggiornamento.

Puoi condividere un campo protetto su un determinato record in lettura e/o aggiornamento con un'entità di sicurezza (utente o team).  L'utente o i membri del team con cui il record è stato condiviso ora dispongono di tale tipo di accesso al campo protetto solo per i campi protetti condivisi solo in tale record specifico, anche se l'utente o il membro del team con cui è stato condiviso non dispone di un profilo di sicurezza dei campi che dà loro l'accesso.

Qual è il comportamento dei campi protetti per le visualizzazioni filtrate?

Un amministratore protegge un numero di campi per l'accesso nell'applicazione e desidera che i campi non siano disponibili nei report. Ciò consente di gestire lo stesso set di report per tutti gli utenti. Le visualizzazioni filtrate non restituiranno i dati per i campi protetti se il chiamante non dispone di autorizzazioni per i campi. Quando non viene applicata alcuna sicurezza a livello di campo per nessuno degli attributi di visualizzazione, le visualizzazioni filtrate restituiscono dati completi.

Qual è il comportamento dei campi protetti per la sincronizzazione offline?

Se si utilizza Microsoft Dynamics 365 per Microsoft Office Outlook con accesso offline, solo i valori dei campi protetti per i quali si dispone di accesso vengono replicati nel database offline. Se non si dispone di accesso ai dati, questi non vengono salvati offline.

Vedere anche

Video: sicurezza a livello di campo in Microsoft Dynamics CRM 2015
Modello di sicurezza di Microsoft Dynamics 365
Come utilizzare la sicurezza basata sui ruoli per controllare l'accesso alle entità in Microsoft Dynamics 365
Come utilizzare la sicurezza basata su record per controllare l'accesso ai record in Microsoft Dynamics 365

Microsoft Dynamics 365

© 2017 Microsoft. Tutti i diritti sono riservati. Copyright