• ベストアンサー

echo \$USER について

このコマンドをCGIにのせて、どうにかユーザーIDを取り出そうと思ったのですが、 何もかえってきませんでした。もしかすると、WEBアプリケーションからはだれが使用してるか分からないからですか? パソコンのユーザーIDをCGI上に表示したいなと思っています。(パソコンにログインするときにでるIDです.) 質問の仕方がへたですいません。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • urakids
  • ベストアンサー率77% (7/9)
回答No.4

>ちなみに現在CGIもJAVASCRIPTも使ってます。 >ということはできるという意味でしょうか? >それとも、ログイン管理をするために新しくWEBアプリを使うためのユーザーIDを作ったりする必要があるということですか? パソコンにログインしているユーザー名を取得する事は出来ますが、 ちょいと手間です。 まず、JavaScriptを埋め込んだHTMLまたはcgiを作り JavaScriptでログインユーザー名を取得し、 それを、目的のcgiにリンクで引数として渡すなどをすれば 取得は出来ます。 やり方としては以上なんですが、 一段階噛ましておかないといけないので少し手間なわけです。 また、ブラウザによってはJavaScriptの動作のON/OFFが出来るブラウザもあるので 絶対に取得出来る保証もありません。 なので絶対に取得されたい場合は上記にお話しされている >ログイン管理をするために新しくWEBアプリを使うためのユーザーIDを作ったりする必要があるということですか? の方が安全かもしれません。

kenpanch7
質問者

お礼

ありがとうございました。 Javascriptについては、うといですがいろいろ調べて試してみたいと思います。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • urakids
  • ベストアンサー率77% (7/9)
回答No.3

間違っていたらごめんなさい。 web上からcgiを見に来ているパソコンのUIDを知りたい訳ですよね? もしそうでしたら、ログイン管理などをすればわかるかも知れませんが、 単体だけでは難しいというか、無理ですよ。 cgiとJavaScriptや、vbscriptなんかを使えば出来ますけど。

kenpanch7
質問者

補足

そうですか、無理ですか分かりました。ちなみに現在CGIもJAVASCRIPTも使ってます。ということはできるという意味でしょうか?それとも、ログイン管理をするために新しくWEBアプリを使うためのユーザーIDを作ったりする必要があるということですか?

全文を見る
すると、全ての回答が全文表示されます。
  • t-okura
  • ベストアンサー率75% (253/335)
回答No.2

CGI がどんなユーザ権限で実行されているか知りたいのですね。 $ENV{USER} を表示すればよいです。 OS コマンドが使えるのであれば $USER = `/usr/bin/id`; で取り出してもよいです。 また、 open OUT, '>', 'test.txt'; print OUT "Hello\n"; close OUT; で、ファイルを作成し、FTP で作成したファイルの所有者を 見てもよいと思います。CGI をアップロードできるのだから FTP できますよね。

kenpanch7
質問者

補足

ご返答ありがとうございます. 実際にやってみると、USERIDはWWWRUNでした。ようするに個人を特定することはできない? ということでしょうか。CGI上にPC使用者の名前あるいは、IDを表示したかったのですが、なかなかうまくいかないです. いま、LDAPというものを調べていますが、方向性はあってると思いますか?

全文を見る
すると、全ての回答が全文表示されます。
  • urakids
  • ベストアンサー率77% (7/9)
回答No.1

echo \$USER だけでは判らない事、多々といった感じですが。 まず、perlにechoといったコマンドはありません。 なのでまず動かなくて当たり前です。 そして\$USERが何を指しているのかわからないのですが、 普通だと$USERのリファレンスを参照しているので、 やはり期待に添える物はとれないかと思います。

kenpanch7
質問者

補足

お返事ありがとうございました。 説明不足で申し訳ありません。 my $test =`echo $USER` と実際は記述しております。 私の中では、環境変数の$ENV{'$USER'}という感じかなという位置づけです。 test.plの中にmy $test =`echo $USER` の記述をすると、ユーザーIDが 帰ってきますが、CGIの中にかくと、値がかえってきませんでした。 もし何か、他にいいアイディアがあれば、お願いします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • WebサーバとWebアプリケーション。セッションID、ユーザーID、パスワードを管理するのはどっち?

    セッションIDを習ったとき、 私の記憶ではセッションIDを管理するのはWebサーバと習いました。 普通、このOKWaveのようにログインを要するようなWebページは ログイン時に渡されたユーザーIDとパスワードを セッションIDに紐付ける形でサーバ側で管理することによって、 このセッションIDを通して、同一ユーザーと見なすということだったと思います。 しかし、ここでひとつ疑問が出ました。 ログイン時に、「自分は誰か、正しいユーザーか」ということを通信先に教えるために ユーザーIDとパスワードを入れますよね? でもここでユーザーIDとパスワードがほしいのはWebサーバではなく、 ユーザー情報を持っているWebアプリケーションではないのか?と考えました。 しかし、私はセッションIDはWebサーバが管理すると習ったように記憶しています。 ということは、 ・セッションIDはWebサーバが管理する ・ユーザーIDとパスワードはWebアプリケーションが管理する ということでいいのでしょうか? つまり、セッションIDとユーザーIDの対応表はWebアプリケーション側で実装し、 クライアントのリクエストから呼び出されるWebアプリケーションのプログラムは 「この呼び出した相手のセッションIDを教えてください」と Webサーバに聞くようなプログラムにしなければならないという認識で合っているのでしょうか? よく分かってないので、聞きたいことが非常に伝わりにくいかと思いますが、 よろしくお願いします。 長い上、お粗末な文章を最後まで読んでいただきありがとうございました

  • Windows ユーザーID

    WindowsXPで前回ログインのユーザーIDが自動で表示、パスワード入力画面になるように設定してるのですが、ユーザーが変わり、前任者データを引き継がせるためにユーザーアカウントを変更して使用しているのですが、ログインするときのユーザーID名称が変更前のユーザーIDが表示されてしまいます。打ち直せばログインできるのですが、変更後のユーザーIDが自動で表示できるようにはできないでしょうか。よろしくお願いします。

  • クッキー方式のユーザー認証でユーザー名を表示させるには

    クッキーとセッションIDを使用したユーザー認証を使用しています。 ユーザー名を各ページに表示したいと思っています。CGIの場合は$ENV{'REMOTE_USER'}と表示すればID名がしっかり表示されるのですが、SSIで呼び出してHTMLなどに表示しようとしても出来ません。 【使用した簡単なスクリプト】 -------------- id-viewer.cgi ----------- #!/usr/local/bin/perl print "Content-type: text/plain\n\n"; print "$ENV{'REMOTE_USER'}\n"; --------------------------------------- 表示させたいHTMLに <!--#exec cgi="id-viewer.cgi"--> と明記 しかし何にも表示されませんでした。ためしに基本認証で実験した場合にはHTMLでもしっかりと表示されました。 どうぞよろしくお願いいたします。

    • 締切済み
    • CGI
  • ユーザ名は何ですか?

    WEBからアプリケーションサーバにアクセスし、そこから別のファイルサーバにアクセスを使用とした場合ユーザ名はアプリケーションサーバのログインユーザでは無いのですか?ファイルサーバ上のセキュリティログをみるとユーザ名は、アプリケーションサーバ名になっています。 元々ユーザ名という考え方は間違っているのでしょうか?

  • IEにてログインユーザーが同じになる現象

    あるウェブアプリケーションがあり、ログイン認証機能を実装しています。 1.IEのウィンドウを2つ開きます(それぞれ別のプロセスとして起動=セッションは別で管理されるはず) ※2つのウィンドウを仮に、ウィンドウAとウィンドウBとします。 2.ウィンドウAにてウェブアプリケーションにアクセスし、ユーザXでログインします。 3.次にウィンドウBにて同じウェブアプリケーションにアクセスし、ユーザYでログインします。 4.ウィンドウAにてアドレスバーにあるURLをクリックして選択状態にし、Enterを押すとログインしているユーザ名がユーザXからユーザYとなります。 ※本アプリケーションでは、ログイン状態の間ログインしているユーザ名を表示している 5.ウィンドウAにてリンク等をクリックして画面遷移すると、ユーザ名がユーザYからユーザXに戻ります。以降の操作はずっとユーザXのまま 製造中のアプリケーションで以上のような現象が発生しているのですが、これはIEのバグでしょうか。それともアプリケーション側に問題があるのでしょうか。 ウェブアプリケーションはJava + Apache + Tomcatで実装しています。

  • CGI::Sessionでのユーザとの紐付け方法

    【できていること】 Cookieの発行 Cookieへのデータの書き込みと参照 【ここから質問】 ログイン認証があるWebアプリケーションにおいて、セッション情報(ID)とユーザ情報はどのように紐付けているのでしょうか? (ログイン成功時に生成するセッションIDとユーザ情報の紐付け情報をどこにどのように保持するのかがわかりません) Cookie(クライアント側)はセッションIDのみを保持しておいて、サーバ側で紐付け情報を保持するのだと思うのですが、CGI::Sessionではセッション生成時に作成されるcgise_XXXXファイルに書き込むのでしょうか?(そのメソッドか、具体例があれば教えてください) それとも紐付け専用のテーブルを用意しておくのでしょうか、もしくは、ユーザ情報のテーブルにあらかじめセッション情報を格納するカラムでも用意しておくのでしょうか。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • 実際にログインしたユーザー名にならない…

    ご存じの方がいらしたらぜひ教えて下さい。 管理者権限を付与しているユーザーでログインした WindowsXP Professional (SP2)のパソコンから、 Windows2000サーバーの共有ファイルをエクスプローラで 開いている状態のまま、Windows2000サーバー側でコマンド プロンプトからNET SESSIONコマンドをたたいて接続ユーザーを 確認して見ると、ユーザー名が"ADMINISTRATOR"と表示されています。 実際にXP側でログインしているユーザー名が表示されるのでは? と思うのですが何故なのでしょうか?(質問1) というのは、他の同種OSのパソコンから管理者権限を付与している ユーザー(先の説明にあるユーザーとは別のユーザ)でログインした 場合は"ADMINISTRATOR"で表示されなくてログインしたユーザー名で 表示されるからです。 サーバー側の共有フォルダのセキュリティを設定する上では ログインしたユーザー名で繋がって欲しいのですが、それはどう すればよろしいのでしょうか?(質問2) 宜しくお願い致します。

  • ユーザー認証についての質問

    こんにちは。5dai@perl初心者です。 お仕事でCGIユーザー認証を作成することになりました。 比較的よくあるもので、ブラウザ上でユーザー名、パスワードを入力してログインボタンを押して 認証させ、ログインページを表示させます。 又、管理者がログインすると、ユーザー登録、削除やパスワード変更が 行なえるようにするつもりです。 cgiをPerlでやろうと思うのですが、やり方としてはWeb Server機のOSがSolarisなので、 Unix機に付属しているdbmをリスト(ユーザー名、パスワード)の記憶域として利用しようと思います。 そこでちょっと質問です。 1.CGIでの認証は、どのような方法が一番多いのでしょうか??   今回は、ブラウザ ←→ WEBサーバー ←→ cgi(perl) ←→ dbm 2.又、perlでよく利用するサイト(サンプルがある)があれば教えてください。   できれば、ユーザー認証のサンプルがあれば・・・。 もし、表現が変なところがあれば遠慮なく指摘して下さい。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • ユーザーについておしえてください

    Red Hat7.2でPerlとProFTPDとapacheを入れました。 useraddで作ったユーザーに、ユーザーによってそれぞれいろいろ制限を与えたいのですが… 1. /home/ユーザー名 に作られるディレクトリの容量制限(ディスクスペース:ジオシティなら12MBまでのような) 2. telnetでログインしたときのコマンド制限(許可してもいいだろうと思われるコマンドと、これは許可しない方がいいコマンド) 3. 第3者であるユーザーからは見えると好ましくないLinuxのディレクトリの制限 4. ユーザーによってCGIを許可するかどうか 以上についてどうすればいいか詳しく教えて頂けないでしょうか?経験者の方の意見は参考にさせて頂きます。

  • ホームページにユーザー登録機能を設置したいのですが

    ユーザー登録機能のあるHPを作成したのですが全く分かりません・・・。現在windowsXPでApacheサーバーを動かしてWEB公開しています。(CGIは使える環境) ユーザーが自分でIDとパスワードを作成してログインできるシステムにしたいのですが どなたかご指導よろしくお願いしますm(_ _)m

    • ベストアンサー
    • HTML
このQ&Aのポイント
  • 妊娠検査薬で陽性反応が出たものの、初診の段階で胎嚢が小さめであり、卵黄嚢も確認できていない状況です。
  • また、胎嚢近くの出血や胎嚢の形状にも問題があり、先生からは「もしもの時」の説明がされました。
  • 次回の検査まで不安な時間が続き、育っていく可能性や赤ちゃんの安全について心配しています。
回答を見る