Il Central Authentication Service (CAS) può fare l'autorizzazione?

7

Ho alcune applicazioni web che sto cercando di collegare tramite CAS, ma sono un po 'confuso riguardo all'autorizzazione, che ho letto CAS non dovrebbe fare. Tuttavia, vedo qualcosa di simile ai gruppi, ma non so cosa siano.

Comunque, il mio scenario è piuttosto comune, ed è il seguente:

Dobbiamo limitare l'accesso a ciascuna delle nostre app che supporteranno SSO. All'interno di ciascuna delle nostre app, ci sono ruoli. Questi ruoli vengono utilizzati per impedire a determinati utenti di accedere a varie parti del sito. Inoltre, gli utenti amministratori dovrebbero poter assegnare agli utenti l'accesso alle app di cui sono amministratori. Inoltre, un amministratore di un sistema potrebbe non essere un amministratore di un altro sistema. È possibile soddisfare tutti questi scenari con CAS? O dovrei guardare un tipo di SSO completamente diverso?

- per spiegare -

CAS - link :

Central Authentication Service project, more commonly referred to as CAS. CAS is an authentication system originally created by Yale University to provide a trusted way for an application to authenticate a user. CAS became a Jasig project in December 2004.

    
posta Bradford 27.09.2011 - 19:55
fonte

4 risposte

7

No, CAS è solo un servizio di autenticazione , ma puoi sicuramente imporre un'autorizzazione utilizzando il meccanismo , che è la base per fare l'autenticazione per il tuo CAS.

Supponiamo, se stai utilizzando LDAP per autenticare gli account per CAS. Quindi, per il requisito come il tuo .....

Puoi creare UserGroup in LDAP e assegnare rispettivi ID utente ai loro gruppi.

Ora, nell'applicazione web si mantiene il login tramite CAS che in caso di successo contatta l'LDAP (o qualsiasi altro meccanismo di autenticazione al back-end) e recupera gli UserGroup assegnati all'utente.

Ora, sulla base degli UserGroup recuperati, puoi consentire / impedire l'accesso alle funzionalità dell'app Web.

    
risposta data 28.09.2011 - 16:02
fonte
4

Prima di tutto: CAS - link :

Central Authentication Service project, more commonly referred to as CAS. CAS is an authentication system originally created by Yale University to provide a trusted way for an application to authenticate a user. CAS became a Jasig project in December 2004.

Secondo: no, non penso che possa fare l'autorizzazione. Lo usiamo qui e abbiamo un sistema diverso per fare l'autorizzazione dopo che CAS ha autenticato alcuni utenti.

    
risposta data 27.09.2011 - 21:14
fonte
3

La risposta breve è No, non è compito di CAS fare Autorizzazione, si suppone solo di Autenticazione.

Detto questo, ci sono molti modi per usare CAS in uno scenario di autenticazione / autorizzazione. Sto lavorando a una soluzione così personalizzata proprio ora. Credo che ci siano modi per fare un po 'di magia di sicurezza primaverile per aggirarlo, ma il modo in cui l'ho implementato adesso è semplicemente quello di proteggere le mie app utilizzando un filtro dei ruoli personalizzato, che controlla la presenza di ruoli esistenti passati al applicazione utilizzando la lib del client CAS per java. Quindi tutto ciò che devo fare per proteggere le mie app in Tomcat è includere il jar del client CAS, il mio jar filtro personalizzato e specificare quali risorse proteggere nel mio web.xml.

Sentiti libero di chiedere se hai bisogno di ulteriore assistenza.

    
risposta data 28.09.2011 - 13:02
fonte
2

CAS esegue solo l'autenticazione. L'autorizzazione spetta al fornitore di servizi. Con le versioni precedenti di CAS, è possibile utilizzare l'endpoint SAML validate per ottenere attributi da CAS. Con il nuovo server jasig-CAS 4.0, puoi ottenere attributi dal protocollo CAS 3.0.

Ciò significa ancora che l'autorizzazione è valida per il servizio, ma il servizio è in grado di richiedere attributi da CAS, quindi non deve mai toccare l'archivio LDAP, il database, ecc. impedendo che l'accesso diretto al servizio di directory interna possa sembrare come un grosso problema sulla tua rete interna, ma considera il caso in cui il fornitore di servizi è una terza parte. CAS consente agli utenti di autenticarsi con te e tu scegli di consentire gli attributi rilevanti al fornitore di servizi (ad esempio le appartenenze ai gruppi). Il servizio è responsabile per l'applicazione di tali ruoli, ma in definitiva controlli l'accesso.

    
risposta data 19.07.2014 - 21:41
fonte

Leggi altre domande sui tag