- - PR -
JSPでユーザIDを取得
1
| 投稿者 | 投稿内容 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2003-01-15 12:45
お世話になっております。
JSPでクライアントのログインIDを取得することはできないでしょうか? ASPの「Request.ServerVariables("LOGON_USER")」と同じことができればいいのですが、Java経験がないもので実現方法が示せず困っています。 ご教示宜しくお願い致します。 | ||||||||
|
投稿日時: 2003-01-16 01:44
>JSPでクライアントのログインIDを取得することはできないでしょうか?
ログインIDって何のことでしょうか? ServletAPIの認証の仕組みを使うなら request.getRemoteUser() で認証後のユーザ名を返すというのもありますが。。。 | ||||||||
|
投稿日時: 2003-01-16 09:43
実際の利用環境を書いてませんでした。すみません。
ActiveDirectoryドメイン環境でJSPを使用しイントラ構築をします。 (Webサーバ:IIS5、APサーバ:Cosminexus) ブラウザからアクセスしてきたユーザのログオンIDを自動取得し 利用可能機能を制御させます。つまり、Webページでの認証フォーム なしでユーザを識別したいということです。 ご教示いただいたgetRemoteUser、何となくいい感じのような気が しますがいかんせん初心者なもので実行あるのみで試してみます。 何かコメントありましたら宜しくお願い致します。 | ||||||||
|
投稿日時: 2003-01-17 00:53
JavaのWebアプリケーションの認証の仕組みでは、
BASIC認証、DIGEST認証、FORM認証などに対応しています。 ユーザID、パスワード、ロールの情報などの情報は、 通常、RDBやLinuxユーザなどをひっぱってこれるらしいです。 web.xmlとサーバー側の設定を書くだけで、 簡単にシングルサインオンの仕組みが実現できます。 が、ActiveDirectoryですよね。 イチイチBASIC認証とかしたくないですよね。 IISなどで、そういうAPIが用意されてればいけそうな気もしますが、 どうするもんでしょう? | ||||||||
|
投稿日時: 2003-01-17 10:17
getRemoteUser色々試してみましたが、常にNullが返ってきてしまいます。
Win2000認証でそのユーザIDを取得するなんて一般的にやらないのでしょうかね。 とりあえず時間がないのでフレームをASPのServerVariablesでユーザID取得して その情報をターゲットのJSPページに渡すような手法で実現することにします。 (ホントはJavaのみでやってみたかったのですが...) 色々試行錯誤することにより随分と勉強させていただきました。 みやもさんありがとうございます。 | ||||||||
|
投稿日時: 2003-01-17 11:20
私自身、使ったことがないので、詳しいことは
わからないのですが、 JAAS (Java Authentication And Authorization Service) というのがあります。 LDAPやNTのログイン認証などのOS固有の機構にとらわれない 仕組みになっていて、これを使って認証機能を作ったりできるようです。 何号か前のJavaWorldで読んだ覚えがあります。 去年の、8月号だったかなぁ。 こういうのを利用したりするんでしょうか・・・? | ||||||||
|
投稿日時: 2003-01-17 12:02
unibon です。こんにちわ。
これは http://www.microsoft.com/JAPAN/developer/library/jpiis/core/iiabasc.htm#challenge の「統合 Windows 認証」を使われているのだと思います。
この仕組みだと ASP 側では認証できていますが、 JSP 側では認証できていないですが、 ASP のサーバと JSP のサーバの間で認証の情報をやりとりしていれば大丈夫だと思います。 しかし、もしもそのような情報がサーバ同士でやりとりされていないと ダメ(認証になっていない)でしょう。 | ||||||||
1
