Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

Windows ログオンユーザー名の取得について

現在サーブレットを使って開発を行っています。

クライアントの Windows ログオンユーザ名を調べ、アクセス制限したいのですが、取得方法が分かりません。
PHP ではできるそうなのですが、Java でもできるのでしょうか?

分かる人いたら教えてください。宜しくお願いします。

10

回答

100086

閲覧

10件の回答

評価

0

PHPでそんなことができるんですか?

評価

0

会社の先輩が作った社内のシステムは PHP なんですが、ユーザ名を調べて実際に制御しています。
やり方は分かりませんが、、、

評価

0

やりたいことがいまいち見えないのですが・・・

1.ログイン画面にて「ユーザ名」「パスワード」を入力
2.Windowsアカウントの中にあるユーザ名を検索
3.見つかった場合はパスワードによるチェック
4.問題ない場合はログイン・・・

上記のような動きをしたいということなのでしょうか?

あとPHPでできるというのはActive DirectoryによるLDAP認証とかではなくということでしょうか?
PHPでできるといってもできることは限られそうですが・・・・

評価

0

外部のライブラリを作れば、なんとでもなるとは思いますが…。

評価

0

System.getenv( "USERNAME" );
で取得できるユーザ名で良いのかな?
dos窓で set コマンドを実行すれば System.getenv で取得できる環境変数の一覧が判ります。

評価

0

すいません、初心者なのでよく分かりませんが PHP では「LOGON_USER」で Windows ログインユーザ名が取得できるようです。

やりたい事は、「java で Windows ログオン ID 取得したい」です。
Web ページでの認証フォームなしでユーザを識別したいということです。

評価

0

System.out.println( System.getProperty( "user.name" ) );

これでいいのでしょうか?

評価

0

ダメみたいです。。。

もう少し調べてみて出来ないようだったら認証フォームを作る事にします。

皆さん、ありがとうございました!

評価

0

追加です。

サーブレットで、
System.out.println(System.getProperty("user.name"));
を実行すると常に tomcat を実行しているサーバのユーザ名が返ってくるようです。

評価

0

Windowsのログインユーザ名は、httpでつないだサーバでは取れませんよ。
それは認証をかけてgetRemoteUser()しているとか、
クライアントのIPアドレスを見るとか、ではないんでしょうか?

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。