Linee guida per le prestazioni di ACS

Si applica a

  • Microsoft Azure Active Directory Access Control (anche noto come Servizio di controllo di accesso o ACS)

  • Windows Identity Foundation (WIF)

Riepilogo

In questo argomento vengono illustrate le linee guida chiave per le prestazioni da tenere in considerazione quando si sviluppano applicazioni e servizi che usano ACS. In particolare, questo argomento fornisce linee guida riguardanti le dimensioni e la crittografie dei token, nonché sul modo in cui questi fattori influiscono sulle prestazioni complessive.

Panoramica

In generale, gli attributi chiave delle prestazioni sono il tempo di risposta, la velocità effettiva e l'utilizzo delle risorse. Se, ad esempio, l'applicazione dispone di risorse limitate in fatto di memoria, è probabile che per alcune informazioni venga usato il file system, comportamento molto più lento rispetto all'esecuzione delle operazioni in memoria e con un impatto negativo sul tempo di risposta. Se, per fare un altro esempio, l'applicazione invia un'ingente quantità di dati tramite una rete con larghezza di banda limitata, il risultato sarà di nuovo un rallentamento del tempo di risposta. Una soluzione per risolvere i problemi di prestazioni consiste nell'aggiungere ulteriori risorse, ad esempio larghezza di banda di rete, CPU più veloce e maggiore quantità di memoria. Questo approccio può rivelarsi utile, ma non in tutti casi. Un altro approccio consiste nel migliorare il codice, in modo che vengano usate meno risorse e scambiati meno dati. Considerando il contesto delle applicazioni che supportano le attestazioni e ciò che è sotto il controllo dello sviluppatore, esistono alcuni fattori chiave correlati all'uso di ACS che influiscono sulle prestazioni, vale a dire token e operazioni crittografiche correlate ai token.

Obiettivi

  • Definire gli aspetti che influiscono sulle prestazioni nelle applicazioni che usano ACS.

  • Fornire linee guida per migliorare le prestazioni in relazione a ciascuno di tali fattori.

Dimensioni e crittografia dei token

Le dimensioni e la crittografia dei token sono fattori chiave sotto il controllo dello sviluppatore che influiscono sulle prestazioni delle applicazioni integrate con ACS.

  • Dimensioni dei token. Le dimensioni dei token influiscono sulle prestazioni in due modi diversi. In primo luogo, influiscono sulle prestazioni correlate in qualche misura alla larghezza di banda di rete. Più grandi sono le dimensioni del token, maggiore sarà la larghezza di banda utilizzata, con conseguente rallentamento dei tempi di risposta complessivi. In secondo luogo, più grandi sono le dimensioni del token, maggiore sarà il numero di cicli della CPU necessario per verificare l'integrità ed estrarre le attestazioni presenti nel token. L'elaborazione dei token include l'analisi e la deserializzazione dei token stessi in formato binario per consentirne l'uso da parte del codice. L'elaborazione include anche diverse operazioni di crittografia, ad esempio la convalida della firma e, facoltativamente, la decrittografia. Più grandi sono le dimensioni del token, maggiore sarà il numero di cicli della CPU impiegati per l'elaborazione, con conseguente aumento dell'utilizzo delle risorse e rallentamento dei tempi di risposta complessivi. Le dimensioni del token dipendono da diversi fattori: il formato del token, la crittografia applicata al token e le attestazioni nel token. ACS supporta token SAML, SWT e JWT. In genere un token SWT o JWTJWT è inferiore a un token SAML che contiene una quantità equivalente di informazioni. Per altre informazioni, vedere Formati di token supportati in ACS. Si tenga tuttavia presente che i diversi formati di token sono ottimizzati per differenti protocolli e architetture di applicazioni.

    • I token SWT vengono rilasciati su protocolli WS-Federation, WS-Trust e OAuth WRAP o OAuth 2.0. Questo significa che i token SWT possono essere usati in applicazioni Web nonché in servizi WCF (SOAP) e WCF (REST). WIF non supporta il gestore dei token SWT.

    • I token SAML vengono rilasciati tramite protocolli WS-Trust e WS-Federation. Questo significa che i token SAML possono essere usati in applicazioni Web e servizi WCF (SOAP). WIF supporta sia token SAML 2.0, sia token SAML 1.1. Per altre informazioni su WIF, vedere l'argomento seguente Windows Identity Foundation

    • I token JWT vengono rilasciati su protocolli WS-Federation, WS-Trust e OAuth 2.0. Questo significa che i token SWT possono essere usati in applicazioni Web nonché in servizi WCF (SOAP) e WCF (REST).

    Un fattore che contribuisce in larga misura alle dimensioni del token sono le attestazioni presenti nel token stesso. Maggiore è il numero delle attestazioni, più grandi saranno le dimensioni del token. Nella maggior parte dei casi, le attestazioni presenti nel token sono sotto il controllo dello sviluppatore. Le attestazioni usate da un'applicazione vengono aggiunte, rimosse o modificate dal servizio token di sicurezza ,ad esempio AD FS o ACS. ACS usa i gruppi di regole e le regole per aggiungere, rimuovere o modificare attestazioni in un token. Per altre informazioni, vedere Regole e gruppi di regole.

  • Crittografia. La crittografia e operazioni di crittografia quali la firma, la convalida della firma e la decrittografia influiscono direttamente sulle prestazioni. Le operazioni di crittografia consumano potenza di elaborazione a causa dei complessi algoritmi eseguiti. ACS firma tutti i token rilasciati come garanzia di integrità per far fronte ad attacchi in grado di compromettere i dati. La convalida della firma dei token non è facoltativa. La crittografia dei token è necessaria se un'applicazione relying party è un servizio Web che non usa SSL per crittografare le comunicazioni. I servizi basati su WCF che usano SOAP richiedono token crittografati proof-of-possession con protocollo WS-Trust. La crittografia dei token è necessaria per proteggere le informazioni riservate su un canale non protetto. Tuttavia, nel caso in cui il canale di comunicazione sia crittografato, ad esempio mediante l'uso della crittografia SSL, la crittografia dei token è facoltativa e può essere omessa per favorire un miglioramento delle prestazioni.

Vedere anche

Concetti

Linee guida per la sicurezza di ACS
Linee guida per la gestione dei certificati e delle chiavi