質問

誰かが違うことを詳しく説明できますか?

現在、ntlmssp.authenticaten(jcifs)を使用していますが、getPassword()を実行できないようです。常にnullを返します

役に立ちましたか?

解決

違いがあります。

Kerberos, 、Webアプリのサービスプリンシパル名(SPN)をドメイン管理者に尋ねる必要があります。基本的に、これは、Webアプリが認証要求をデコードできるようにする暗号化キーを備えたActive Directoryのエントリです。

ntlm, 、管理者の協力は必要ありません。 Webアプリは、クライアント(すなわち、ブラウザ)から、ドメインコントローラーへのログオンを試みるために使用できる情報を取得します。クライアントからの情報には、ユーザーのパスワードが含まれていません。それはあまりにも安全ではありません。代わりに、NTLMフィルターはドメインコントローラーからチャレンジを取得し、クライアントに渡します。クライアントは、応答を作成するためにチャレンジでパスワードをハッシュします。この応答がログオン要求としてドメインコントローラーに送信されると、ドメインコントローラーは、パスワードが正しいかどうかをJCIFSフィルターに伝えます。

一部のJCIFクラスには、ユーザー名とパスワードからログオン要求を直接作成できるため、GetPassWordメソッドがあります。そのアプローチを使用する場合は、パスワードを設定するだけでなく、取得できます。ただし、これはブラウザに認証されるときに使用されるアプローチではないため、実際のパスワードを取得することはできません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top