Question

Quelqu'un peut-il élaborer les différents?

J'utilise actuellement NTLMSSP.Authenticaten (JCIFS) mais ne semble pas en mesure de faire GetPassword (). Il revient toujours nul

Était-ce utile?

La solution

Il existe une différence.

Avec Kerberos, vous devrez demander à votre administrateur de domaine un nom principal de service (SPN) pour votre application Web. Il s'agit essentiellement d'une entrée dans le répertoire Active avec une clé cryptographique qui permettra à votre application Web décoder les demandes d'authentification.

Avec Ntlm, vous n'avez pas besoin de la coopération de votre administrateur. Votre application Web obtiendra des informations du client (c.-à-d. Browser) qu'il peut utiliser pour tenter une connexion à un contrôleur de domaine. Les informations du client n'incluent pas le mot de passe de l'utilisateur - ce serait trop peu sûr. Au lieu de cela, le filtre NTLM reçoit un défi du contrôleur de domaine, le transmet au client. Le client hache le mot de passe avec le défi de créer une réponse. Lorsque cette réponse est renvoyée au contrôleur de domaine en tant que demande de connexion, le contrôleur de domaine indiquera au filtre JCIFS si le mot de passe était correct ou non.

Certaines classes JCIFS ont une méthode GetPassword, car elle vous permet de créer directement la demande de connexion à partir d'un nom d'utilisateur et d'un mot de passe. Si vous utilisez cette approche, ainsi que la définition du mot de passe, vous pouvez le récupérer. Mais ce n'est pas l'approche utilisée lorsque vous laissez le navigateur s'authentifier pour vous, vous ne pourrez donc pas récupérer le mot de passe réel.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top