Maison > Java > javaDidacticiel > le corps du texte

Un guide pour implémenter l'authentification unique avec Java JAAS

PHPz
Libérer: 2024-02-24 14:04:33
avant
642 Les gens l'ont consulté

Java JAASでシングルサインオンを実装するためのガイド

Comment utiliser le guide d'enregistrement des points de production réels Java JAAS. Dans le texte principal, je suis un guide général et je suis JAAS, comment organiser et utiliser JAAS, et depuis lors, j'utilise la technique pour l'utilisation réelle de divers éléments. Si vous êtes débutant, vous ne pourrez pas lire le texte.

Configurer l'authentification unique

L'authentification unique (SSO) est un mécanisme qui vous permet d'utiliser le même nom d'utilisateur et le même mot de passe pour vous connecter à plusieurs applications. JAAS vous permet d'utiliser diverses méthodes pour configurer SSO. La méthode la plus courante consiste à utiliser Kerberos. Kerberos est un système d'authentification distribué permettant d'authentifier les utilisateurs sur un réseau. Kerberos permet aux utilisateurs de se connecter une seule fois et d'accéder à toutes les autres applications du même domaine Kerberos.

Processus d'authentification et d'autorisation utilisant JAAS

Le processus d'authentification et d'autorisation à l'aide de JAAS comprend les étapes suivantes :

  1. L'utilisateur se connecte à l'application.
  2. L'application utilise JAAS pour authentifier les utilisateurs.
  3. Après une authentification réussie, l'application utilise JAAS pour obtenir les informations d'autorisation de l'utilisateur.
  4. Sur la base des informations d'autorisation, l'application détermine les opérations que l'utilisateur est autorisé à effectuer.

L'exemple de code ci-dessous est un code permettant d'authentifier un utilisateur à l'aide de JAAS.

import javax.security.auth.Subject;
import javax.security.auth.login.LoginContext;

public class JAASAuthentication {

public static void main(String[] args) {
// ログインコンテキストを作成します。
LoginContext loginContext = new LoginContext("LoginModule");

// ログインします。
loginContext.login();

// サブジェクトを取得します。
Subject subject = loginContext.getSubject();

// サブジェクトに含まれるプリンシパルをすべて表示します。
for (Principal principal : subject.getPrincipals()) {
System.out.println(principal.getName());
}

// ログアウトします。
loginContext.loGout();
}
}
Copier après la connexion

L'exemple de code suivant utilise JAAS pour récupérer les informations d'autorisation utilisateur.

import javax.security.auth.Subject;
import javax.security.auth.login.LoginContext;
import javax.security.auth.authorization.Policy;
import javax.security.auth.authorization.PolicyProvider;

public class JAASAuthorization {

public static void main(String[] args) {
// ログインコンテキストを作成します。
LoginContext loginContext = new LoginContext("LoginModule");

// ログインします。
loginContext.login();

// サブジェクトを取得します。
Subject subject = loginContext.getSubject();

// ポリシープロバイダーを取得します。
PolicyProvider policyProvider = PolicyProvider.getPolicyProvider();

// ポリシーを取得します。
Policy policy = policyProvider.getPolicy(subject, null);

// ポリシーに含まれるパーミッションをすべて表示します。
for (Permission permission : policy.getPermissions()) {
System.out.println(permission.getName());
}

// ログアウトします。
loginContext.logout();
}
}
Copier après la connexion
>Jetez un œil aux études/techniques de haut niveau de la dernière année/2018/2019 target="_blank">Attendez-vous au coût >>>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:lsjlt.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!