IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Sécurité Java Discussion :

API JNDI requete AD com.sun.security.auth


Sujet :

Sécurité Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 37
    Par défaut API JNDI requete AD com.sun.security.auth
    Bonjour,

    J'utilise l'API JNDI pour me connecter à un server LDAP depuis un PC WinXP et rechercher des informations sur un user.
    pour celà je procede comme celà:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Hashtable<String, String> env = new Hashtable<String, String>();
    env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
    env.put(Context.PROVIDER_URL, ldap://localhost:389);
    env.put(Context.SECURITY_AUTHENTICATION,"GSSAPI GSS-SPNEGO External Digest-MD5" );
    env.put(Context.SECURITY_PRINCIPAL,adDomain+"\\"+adLogin);
    env.put(Context.SECURITY_CREDENTIALS, adPassword);
    context = new InitialDirContext(env);
    Parmetre JVM :
    -Dsun.security.krb5.debug=true
    -Djavax.security.auth.useSubjectCredsOnly=false

    A l'execution le constructeur new InitialDirContext(env) me renvoie l'exception suivante:

    Config name: C:\WINDOWS\krb5.ini
    java.lang.SecurityException: Unable to locate a login configuration
    at com.sun.security.auth.login.ConfigFile.<init>(Unknown Source)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at java.lang.Class.newInstance0(Unknown Source)
    at java.lang.Class.newInstance(Unknown Source)
    at javax.security.auth.login.Configuration$3.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.login.Configuration.getConfiguration(Unknown Source)
    at sun.security.jgss.LoginConfigImpl$1.run(Unknown Source)
    at sun.security.jgss.LoginConfigImpl$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.security.jgss.LoginConfigImpl.<init>(Unknown Source)
    at sun.security.jgss.GSSUtil.login(Unknown Source)
    at sun.security.jgss.krb5.Krb5Util.getTicket(Unknown Source)
    at sun.security.jgss.krb5.Krb5InitCredential$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.security.jgss.krb5.Krb5InitCredential.getTgt(Unknown Source)
    at sun.security.jgss.krb5.Krb5InitCredential.getInstance(Unknown Source)
    at sun.security.jgss.krb5.Krb5MechFactory.getCredentialElement(Unknown Source)
    at sun.security.jgss.krb5.Krb5MechFactory.getMechanismContext(Unknown Source)
    at sun.security.jgss.GSSManagerImpl.getMechanismContext(Unknown Source)
    at sun.security.jgss.GSSContextImpl.initSecContext(Unknown Source)
    at sun.security.jgss.GSSContextImpl.initSecContext(Unknown Source)
    at com.sun.security.sasl.gsskerb.GssKrb5Client.evaluateChallenge(Unknown Source)
    at com.sun.jndi.ldap.sasl.LdapSasl.saslBind(Unknown Source)
    at com.sun.jndi.ldap.LdapClient.authenticate(Unknown Source)
    at com.sun.jndi.ldap.LdapCtx.connect(Unknown Source)
    at com.sun.jndi.ldap.LdapCtx.<init>(Unknown Source)
    at com.sun.jndi.ldap.LdapCtxFactory.getUsingURL(Unknown Source)
    at com.sun.jndi.ldap.LdapCtxFactory.getUsingURLs(Unknown Source)
    at com.sun.jndi.ldap.LdapCtxFactory.getLdapCtxInstance(Unknown Source)
    at com.sun.jndi.ldap.LdapCtxFactory.getInitialContext(Unknown Source)
    at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
    at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
    at javax.naming.InitialContext.init(Unknown Source)
    at javax.naming.InitialContext.<init>(Unknown Source)
    at javax.naming.directory.InitialDirContext.<init>(Unknown Source)
    at com.sg.rampart.common.offlineupdate.util.UserEmailsChecker.main(UserEmailsChecker.java:104)
    Caused by: java.io.IOException: Unable to locate a login configuration
    at com.sun.security.auth.login.ConfigFile.init(Unknown Source)
    ... 40 more
    Toute aide serait vivement appreciée

  2. #2
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut
    Salut,

    essaie de renseigner la variable

    -Djava.security.auth.login.config=ton_fichier_de_config_jaas
    aussi

  3. #3
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 37
    Par défaut
    Citation Envoyé par Madfrix Voir le message
    Salut,

    essaie de renseigner la variable



    aussi
    @Madfrix, Merci pour ta réponse je n'ai pas de fichier de config jaas.
    1- Comment le créé?
    2- Quel est son interet?

    PS: Je debute avec l'API JNDI donc n'a aucune idée de comment ça marche. Je lis et implemente en parallele pour voir comment celà fonctionne. Avant de l'inclure dans mon projet.

  4. #4
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 37
    Par défaut
    PS: Je ne me connecte pas au LDAP avec "JXplorer" mais j'y arrive avec
    "Active Directory Explorer" sysinternals

Discussions similaires

  1. Réponses: 10
    Dernier message: 19/04/2011, 15h17
  2. Réponses: 2
    Dernier message: 21/11/2010, 00h23
  3. [JAXP] com.sun.xml.parser.ValidatingParser
    Par yolepro dans le forum Format d'échange (XML, JSON...)
    Réponses: 7
    Dernier message: 05/11/2008, 15h36
  4. Problème de jar avec l'API Java d'open Office (com.sun.star)
    Par mazizou dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 27/05/2008, 16h13
  5. sun\security\util\Debug.class
    Par oddev dans le forum Sécurité
    Réponses: 1
    Dernier message: 10/10/2005, 00h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo