Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe...

23
http:// www . esup -portail. org Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry

Transcript of Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe...

Page 1: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

http://www.esup-portail.org

Le mécanisme de Single Sign-On CAS

(Central Authentication Service)

ESUP Portail – groupe SSO - Pascal Aubry

Page 2: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

• Généralités

• Fonctionnement de base– Tickets utilisés– URLs utilisées– Premier accès à une application– Accès suivants à la même application– Accès à une autre application

• Fonctionnement multi-tiers– Tickets utilisés– Premier accès à un mandataire– Accès suivants à un mandataire– Avec session entre mandataire et service

Plan

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 3: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Généralités

• Sous forme de servlets java• Ne traite que l’authentification

(mais extensions à priori aisées)• S’intègre dans uportal sans développement• Utilisé par différentes universités américaines• Fonctionnalité de proxy très intéressante• Nombreuses bibliothèques clientes

– perl, java, pl-sql, PHP, …

• Modules apache et pamTable des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 4: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Fonctionnement de base

• Similaire aux autres mécanismes de SSO, mais– Utilisation de tickets opaques

– Sécurité accrue

• Pas de fonctionnement multi-tier– Nécessite un « contact » direct entre l’application ayant besoin

d’authentification et le navigateur web

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 5: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Tickets utilisés

• TGC : Ticket Granting Ticket (Cookie)– Valable pour un utilisateur

– Cookie de session privé et protégé (https)du serveur CAS vers le navigateur

– Permet d’obtenir les ST

– Évite les ré-authentifications (rejouable)

• ST : Service Ticket– Valable pour un service et un utilisateur

– Authentifie une personne, pour une application (une URL)

– À usage unique (non rejouable)Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 6: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

URLs utilisées

• /Login : connexion, HTTPS– En cas de succès, positionnement du TGC– Permet d’éviter une ré authentification

• /Logout : déconnexion, HTTP(S)– Suppression du TGC– Suppression des références de l’utilisateur

au niveau du serveur CAS

• /Validate (ou /serviceValidate), HTTP(S)– Passage du ST pour validation– Retour de l’identifiant de l’utilisateur– Invalidation du ST

navigateursweb

applications

Page 7: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Premier accèsà une application

serveur CAS

client web

application 1base

d’authentification

premier accès

(sans S

T ni sessio

n applicative)formulaire

d’authentification

ID appli 1

redirection (GET)

ID appli 1

ID appli 1

pas de TGC

Sans TGC, l’utilisateur doit s’authentifier auprès du serveur CAS

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 8: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Premier accèsà une application

serveur CAS

client web

application 1base

d’authentification

authentification

redirection(GET)

ST

TGCaccès avec ST

ST

demande de validationST

TGC

demanded’authentification

(HTTPS)

ID appli 1

user

password

Le ST doit être validé par le serveur CAS

ST

TGC

identification

Le TGC (rejouable) est stocké par le navigateur

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 9: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Premier accèsà une application

serveur CAS

client web

application 1base

d’authentification

authentification

redirection(GET)

ST

TGCaccès avec ST

ST

demande de validationST

TGC

identificationcréation d’une session

applicative

ID session 1

page web

ID session 1demande

d’authentification(HTTPS)

ID appli 1

user

password

ID session 1identification

L’identificateur de session est stocké sur le navigateur

TGC

identification

Le ST (non rejouable) est supprimé

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 10: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Accès suivantsà la même application

serveur CAS

client web

application 1base

d’authentification

TGC

ID session 1

ID session 1identification

page webaccès avec sessio

n applicative

ID session 1

Les applications gèrent ensuite leurs propres sessions

TGC

identification

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 11: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Accès à uneautre application

serveur CAS

client web application 2

based’authentification

premier accès(sans ST ni session applicative)

redirection (GET)ID appli 2

TGC

ID session 1

ID appli 2

accès avec TGC

TGC

TGC

identification

ST

Le TGC est connu, un nouveau ST est généré

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 12: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Accès à uneautre application

serveur CAS

client web application 2

based’authentification

premier accès(sans ST ni session applicative)

redirection (GET)ID appli 2

TGC

ID session 1

ID appli 2

accès avec TGC

TGC

redirection (GET)

ST

accès avec STST

demande de validationST

TGC

identification

ST

Le ST doit être validé par le serveur CAS

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 13: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Accès à uneautre application

serveur CAS

client web application 2

based’authentification

premier accès(sans ST ni session applicative)

redirection (GET)ID appli 2

TGC

ID session 1

ID appli 2

accès avec TGC

TGC

redirection (GET)

ST

accès avec STST

demande de validationST

identification

page webID session 2

création d’une session applicative

ID session 2identification

ID session 2

TGC

identification

Le ST (non rejouable) est supprimé

Le TGC permet ensuite l’accès à d’autres applications sansré-authentificationToutes les redirections sont transparentes pour l’utilisateur

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 14: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Le fonctionnement multi-tiers

• Possibilité pour une application (mandataire) d’interroger une autre application (service)

• Aucun lien n’est nécessaire entre le navigateur et l’application tiers

• Possibilité de chaîner les mandataires

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 15: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Tickets utilisés

• TGC : Ticket Granting Ticket

• ST : Service Ticket

• PGT : Proxy Granting Ticket– Valable pour un utilisateur

– Envoyé par le serveur CAS à une appli proxy CAS

– Permet d’obtenir les PT

– Évite les ré-authentifications des applications (rejouable)

• PT : Proxy Ticket– Valable pour un service et un utilisateur

– Équivalent du ST pour les mandataires

– Utilisé pour les services n’ayant pas de lien avec le navigateur

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 16: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Premier accèsà un mandataire

serveur CAS

client web application 1(mandataire)

based’authentification

premier accès(sans ST ni session applicative)

redirection (GET)ID mand.

TGC

ID mand.

accès avec TGC

TGCredirection (GET)

ST

accès avec STST

application 2(service)

demande de validation

ST

TGC

identification

ST

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 17: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Premier accèsà un mandataire

serveur CAS

client web application 1(mandataire)

based’authentification

premier accès(sans ST ni session applicative)

redirection (GET)ID mand.

TGC

ID mand.

accès avec TGC

TGCredirection (GET)

ST

accès avec STST

application 2(service)

demande de validation

ST

identificationPGT id

PGT id

PGT

Le PGT est envoyé à travers un canal chiffré séparé pour assurer l’identité du mandataire

TGC

identification

PGT

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 18: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Premier accèsà un mandataire

serveur CAS

client web application 1(mandataire)

based’authentification

premier accès(sans ST ni session applicative)

redirection (GET)ID mand.

TGC

ID mand.

accès avec TGC

TGCredirection (GET)

ST

accès avec STST

application 2(service)

demande de validation

ST

TGC

identification

PGT

identification

PGT

PGT

Le PGT est stocké sur le mandataireIl permet d’obtenir un PT

demande de PT PGTID appli 2

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 19: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Premier accèsà un mandataire

serveur CAS

client web application 1(mandataire)

based’authentification

premier accès(sans ST ni session applicative)

redirection (GET)ID mand.

TGC

ID mand.

accès avec TGC

TGCredirection (GET)

ST

accès avec STST

application 2(service)

demande de validation

ST

TGC

identification

PGT

identification

PGT

PGT

demande de PT PGTID appli 2

Accèsavec PT

PT

PT

PT

Le PT doit être validé par le serveur CAS

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 20: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Premier accèsà un mandataire

serveur CAS

client web application 1(mandataire)

based’authentification

premier accès(sans ST ni session applicative)

redirection (GET)ID mand.

TGC

ID mand.

accès avec TGC

TGCredirection (GET)

ST

accès avec STST

application 2(service)

demande de validation

ST

TGC

identification

PGT

identification

PGT

PGT

demande de PT PGTID appli 2

Accèsavec PT

PT

PT

PT

demande de validationPT

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 21: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

Premier accèsà un mandataire

serveur CAS

client web application 1(mandataire)

based’authentification

premier accès(sans ST ni session applicative)

redirection (GET)ID mand.

TGC

ID mand.

accès avec TGC

TGCredirection (GET)

ST

accès avec STST

application 2(service)

demande de validation

ST

TGC

identification

PGT

identification

PGT

PGT

demande de PT PGTID appli 2

Accèsavec PT

PT

PT

demande de validationPT

identification

ID sessionidentification

création d’une session applicativepage web

ID session

ID session

Toutes les redirections sont transparentes pour l’utilisateur

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 22: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

application 2(service)

Accès suivantsà un mandataire

serveur CAS

client web application 1(mandataire)

based’authentification

TGC

ID session

identification

ID session 1

ID sessionidentification

page web

PT

Accèsavec PT

PT

demande de validationPT

demande de PT

PGT

ID appli 2

PGT

TGC

identification

PGT

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO

Page 23: Http:// Le mécanisme de Single Sign-On CAS (Central Authentication Service) ESUP Portail – groupe SSO - Pascal Aubry.

application 2(service)

Avec session entre mandataire et service

serveur CAS

client web application 1(mandataire)

based’authentification

TGC

ID session 1

ID session 1

ID session 1identification

page web

ID session 2identification

accès avecsession applicative

ID session 2

ID session 2

PGT

Les mandataire gèrent ensuite leurs propres sessions avec les services

TGC

identification

PGT

Table des matièresAccueilLe mécanisme SSO CAS – groupe SSO