7.1. Aperçu de sessions

7.1.1. Gestionnaire d'authentification
7.1.2. Gestionnaire de sessions

Une session de bureau est un groupe de services ou d'applications associé à un jeton d'authentification et contrôlé par le gestionnaire de sessions. Les sessions de bureau résident sur un serveur Sun Ray et peuvent être dirigées vers n'importe quel client Sun Ray ou Oracle Virtual Desktop Client. Du point de vue de l'utilisateur, une session de bureau est en général une instance d'un bureau d'O/S.

Les sessions peuvent être dans l'un des deux états suivants : Connecté ou Déconnecté.

Les sessions peuvent être regroupées en deux catégories :

7.1.1. Gestionnaire d'authentification

Le gestionnaire d'authentification implémente les stratégies choisies pour l'identification et l'authentification des utilisateurs sur les clients de bureau à l'aide de composants enfichables appelés modules. Il vérifie ainsi l'identité des utilisateurs et implémente les stratégies d'accès au site définies par l'administrateur. Il offre également une piste de vérification des actions réalisées par les utilisateurs disposant de droits d'administrateur pour les services Sun Ray. Ce gestionnaire n'est pas visible pour les utilisateurs.

L'interaction entre le gestionnaire d'authentification et le client est illustré dans Figure 7.1, « Interaction entre les gestionnaires d'authentification et de sessions » et fonctionne comme suit :

  1. Un utilisateur accède à un client.

  2. Le client envoie les informations du jeton de l'utilisateur au gestionnaire d'authentification et demande l'accès. Si l'utilisateur insère une carte à puce dans le client, le type et l'ID de la carte servent de jeton. Dans le cas contraire, l'adresse Ethernet du client est utilisée comme pseudo-jeton.

  3. Selon la stratégie définie par l'administration du système, le gestionnaire d'authentification accepte ou refuse la demande d'accès.

  4. Si cette dernière est acceptée, le gestionnaire d'authentification indique au gestionnaire de sessions de démarrer une session X Windows et l'écran de connexion s'affiche. Oracle Solaris 10 les implémentations utilisent le gestionnaire d'affichage dtlogin. Oracle Linux et Oracle Solaris 11 les implémentations utilisent le gestionnaire d'affichage gdm ou le gestionnaire d'affichage GNOME (GDM).

Figure 7.1. Interaction entre les gestionnaires d'authentification et de sessions

Diagramme illustrant l'interaction entre les gestionnaires d'authentification et de sessions

Si aucun serveur Sun Ray est trouvé pour fournir une session (reportez-vous à la section Chapitre 2, Planification d'un environnement réseau Sun Ray), le client envoie une requête en diffusion à tout gestionnaire d'authentification présent sur le sous-réseau.

7.1.2. Gestionnaire de sessions

Le gestionnaire de sessions interagit avec le gestionnaire d'authentification et dirige les services vers l'utilisateur final. Un service est une application pouvant établir une connexion directe avec le client Sun Ray. De telles applications peuvent inclure le contrôle audio ou vidéo ou le contrôle des serveurs X ou des périphériques du client. Par exemple, l'application de mail habituelle n'est pas un service car elle est accessible via un Xserver plutôt que directement.

Il est utilisé au démarrage pour les services, pour la gestion de l'espace écran et en tant que rendez-vous pour le gestionnaire d'authentification.

Le gestionnaire de sessions suit les sessions et les services en mappant les premières vers les seconds et en connectant les services adéquats à un client spécifique ou en les en déconnectant. Pour l'authentification, le gestionnaire de sessions s'en remet exclusivement aux gestionnaires d'authentification autorisés répertoriés dans le fichier /etc/opt/SUNWut/auth.permit.

La séquence suivante décrit le déroulement du processus (démarrage, fin et redémarrage) :

  1. Après l'authentification du jeton d'un utilisateur, le gestionnaire d'authentification détermine s'il existe une session pour ce jeton. S'il n'y en a pas, le gestionnaire d'authentification demande au gestionnaire de sessions d'en créer une puis démarre les services appropriés pour la session en fonction de la stratégie d'authentification en vigueur. La création d'une session nécessite habituellement le démarrage d'un processus Serveur X pour la session.

  2. Quand les services ont démarré, ils se joignent de manière explicite à la session en contactant le gestionnaire de sessions.

  3. Le gestionnaire d'authentification informe le gestionnaire de sessions que la session associée au jeton va être connectée à un client de bureau. Le gestionnaire de sessions informe ensuite chaque service de la session qu'il doit se connecter directement au client.

  4. L'utilisateur peut alors interagir avec la session. Le gestionnaire de sessions sert d'intermédiaire dans le contrôle de l'espace écran entre les services concurrents d'une session et leur signale les changements d'allocation de l'espace.

  5. Lorsque l'utilisateur retire sa carte à puce ou appuie sur Maj + Pause dans une session NSCM, ou effectue un cycle d'alimentation du client ou lorsqu'il est inactif pendant plus longtemps que le délai d'inactivité avant verrouillage de l'écran, le gestionnaire d'authentification détermine que la session associée à ce jeton doit être déconnectée de ce client. Il le signale au gestionnaire de sessions qui, à son tour, indique à tous les services de la session et à tous les périphériques USB de se déconnecter.

  6. Lorsque l'utilisateur réinsère la carte à puce ou se connecte de nouveau à une session NSCM, le gestionnaire d'authentification demande au gestionnaire de sessions de créer une nouvelle session temporaire et s'en sert alors pour authentifier l'utilisateur. C'est ce qu'on appelle l'authentification du hot desking à distance. Une fois l'utilisateur authentifié, le client de bureau est connecté directement à la session de l'utilisateur.

Note

La RHA ne s'applique ni au mode Kiosk anonyme ni aux lecteurs de jetons. Vous pouvez configurer Sun Ray Software de sorte qu'il désactive cette stratégie de sécurité.

Le gestionnaire de sessions n'est consulté que si l'état d'une session change ou si d'autres services sont ajoutés. Lorsque le jeton d'un utilisateur n'est plus mappé avec un client (par exemple, lorsqu'une carte est retirée), le gestionnaire de sessions déconnecte les services du client, mais ces services restent actifs sur le serveur. Par exemple, les programmes connectés au serveur X continuent à fonctionner bien que leur sortie ne soit pas visible. Le démon du gestionnaire de sessions doit fonctionner en continu. Vous pouvez vérifier qu'il fonctionne en utilisant la commande ps et en recherchant utsessiond.

Si le gestionnaire d'authentification s'arrête, le gestionnaire de sessions déconnecte toutes les sessions autorisées et leur demande de s'authentifier de nouveau. Ces services sont déconnectés mais toujours actifs. Si le gestionnaire de sessions est interrompu, il redémarre automatiquement. Chaque service contacte le gestionnaire de sessions et demande à être rajouté à une session donnée.