Alla ricerca di un approccio per implementare il controllo degli accessi basato sugli attributi (ABAC)

8

Stiamo cercando di implementare il controllo degli accessi basato sugli attributi. Mentre siamo venduti sulla filosofia, ci sono due argomenti che sembrano spuntare:

  • Porteranno a problemi di prestazioni significativi? Soprattutto se cerchiamo un accesso a grana fine. Immagino di essere alla ricerca di una guida strutturata per trovare il giusto equilibrio.
  • Sono disponibili PEP in grado di implementare XACML? I miei colleghi che hanno controllato IBM e Oracle non si sentono molto a proprio agio dal fatto che sia ancora pronto per l'azienda.
posta raghu 28.03.2014 - 18:53
fonte

1 risposta

14

Dichiarazione di non responsabilità: lavoro per Axiomatics, il principale fornitore di ABAC / XACML.

Sono felice di sentirti vendere sulla filosofia di ABAC. Se non lo hai già fatto, controlla le seguenti risorse (ti risparmierò i collegamenti commerciali):

Ora, per quanto riguarda le tue domande direttamente:

  • Ciò porterà a problemi di prestazioni significativi, specialmente se cerchiamo un accesso a grana fine? Quando pianifichi e architetti una soluzione ABAC, i due punti principali che vuoi considerare e che possono influire maggiormente sulle prestazioni sono il collegamento di comunicazione PEP-PDP (dove PEP è il punto di applicazione che protegge le vostre applicazioni e PDP è il punto decisionale che elabora le richieste di autorizzazione e valuta le politiche di autorizzazione) e il PDP ai collegamenti PIP (dove il PIP o il punto informativo della politica è il ponte verso fonti di attributi, ad esempio LDAP, database, servizi Web). La valutazione politica di per sé non è affatto costosa. Se l'accesso è a grana fine o no, non inciderà necessariamente sulle prestazioni. Ciò che sarà, tuttavia, è come hai esposto il servizio di autorizzazione (il PDP). Se esponi come servizio SOAP, introduci la latenza di un servizio SOAP. Se lo esponi tramite un protocollo binario, ad es. Apache Thrift quindi le prestazioni sono molto migliori. Allo stesso modo, se hai bisogno di recuperare 10 attributi da 10 fonti diverse e se ogni sorgente ha una latenza lunga, le prestazioni saranno scarse. Tuttavia, puoi sempre scegliere di raggruppare le ricerche degli attributi, consolidare le origini degli attributi e memorizzare i valori degli attributi. La linea di fondo è sì che ABAC può funzionare correttamente se architettato correttamente. Per fare un esempio, PayPal utilizza il controllo degli accessi basato sugli attributi e le loro prestazioni vanno bene. Alcune delle più grandi aziende Fortune 50 utilizzano tutte ABAC e allo stesso tempo hanno requisiti di prestazioni rigorosi. Lo schema seguente illustra tutti i 6 punti in cui è possibile migliorare le prestazioni.
    • come vengono caricate le policy in memoria (1)
    • come vengono valutate le politiche (2): se si crea una buona struttura politica, è possibile eliminare rapidamente fino al 90% di una politica di autorizzazione prima di valutarla completamente.
    • come vengono prelevati i valori degli attributi da PIP (3). Questo è il punto principale da considerare come precedentemente affermato. Esistono diverse tecniche per ridurre l'impatto sulle prestazioni di questa integrazione
    • in che modo le decisioni di autorizzazione possono essere memorizzate nella cache sul lato PEP (4).
    • in che modo le richieste di autorizzazione possono essere raggruppate insieme in una richiesta di decisioni multiple: ciò consente di risparmiare roundtrip tra PEP e PDP (5)
    • infine, e forse la cosa più importante, come comunicano PEP e PDP, come accennato in precedenza. Basta scegliere il protocollo che funziona meglio per te (embedded, binary, SOAP ...) (6)
  • SonodisponibiliPEPingradodiimplementareXACML?Sì,certochecisono.DiversifornitoricomeAxiomatics(probabilmentenonipiùgrandicomeOracleoIBM)eleimplementazioniopensourcefornisconoPEP.Guardacomeesempioquesto elenco . Ci sono anche integrazioni con componenti pronti all'uso. Ad esempio, Fedora fornisce quelli per il suo sistema operativo. Ce n'è uno per SAP. Axiomatics fornisce uno per i database SQL (Oracle, SQL Server ...). Si può anche proteggere CMS come SharePoint e Liferay. Controlla anche il progetto OpenAZ .

I tuoi colleghi hanno esaminato solo IBM e Oracle? I giocatori principali non sono sicuramente quei due, ma piuttosto i piccoli venditori e la comunità open source.

Come ha recentemente affermato Gartner, l'ABAC è la strada da percorrere. Prevedono che il 70% delle organizzazioni adotterà l'ABAC entro il 2020. Ora è un buon momento per iniziare.

    
risposta data 31.03.2014 - 09:30
fonte

Leggi altre domande sui tag