- ベストアンサー
特定の端末からのみWebシステムにアクセスできるように・・・
企業内においてWebシステムを使用するのですが、イントラとしても、インターネットとしても使用できるようにしないといけません。。。インターネットとして使用する場合は手持ちの端末にインターネット回線につなげるという形なのですが、これではインターネット環境さえあれば誰でもアクセルできることになってしまいます。。。 ここでWebシステムにアクセスした際、端末名またはログインしたWindowsユーザ名を取得してサーバ側で判断しようと思ったのですが、インターネットにおいてサーバ側ではクライアントのこれらの情報を取得することができません。 なんとか他の方法を考えたいのですが、浮かびません。。。例えば、ショートカット(URL)にパラメータをつけて渡すとか、そういう安易な方法しか思い浮かびません。。。さすがにこの場合はショートカットを見るだけでわかってしまう為、使えないのですが、もうちょっとだけでいいので高度に特定の端末からしかアクセスできないようにする方法はないでしょうか??本当に困っています。助けてください。。。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
社内でも社外でも使いたいのですね。 ASPはやったことないので違うかもしれませんが、、、、 本当にWebのプログラム内で端末の情報は拾えませんでした??? また、WEBサーバがApacheであれば.htaccess によるアクセス制限もできます。 (htaccessで検索してください) 裏技ですが、使用する人(社員)にはあらかじめcookieを渡しておいて(特定の端末にのみcookieデータをあらかじめ設定しておく)、 そのcookieデータを持っている人のみをアクセス可能にする、 という制御はJavaScriptで可能だと思います。 ただし、cookieの配布とかの運用ルールが必要になります。 社外から使う場合は、セキュリティ管理/個人情報保護とかもあるので、 もっと注意すべきですが、、、
その他の回答 (3)
- sakamaro
- ベストアンサー率44% (4/9)
端末固定でしたら、クライアント証明書が確実だと思います。参考URLにある、「プライベート認証局」が参考になるでしょうか。
お礼
実はクライアント証明書はすでに使っています。。。セキュリティにうるさく、他の方法でもって上に命令されまして。。。
- hequil
- ベストアンサー率65% (242/372)
一番楽なのはサーバ側の設定で匿名アクセスのチェックを外して、基本認証かWindows認証でアクセスを許可する方法です。 これならプログラムは全く修正する必要がありません。 ASP側で対策するならログイン認証 → セッション変数にログイン情報記憶 あとは全ページの先頭でセッション変数をチェックしてログインがされていなければ Response.Redirect でログインページに飛ばせば良いかと思います。 適当なサンプルで申し訳ないですが、大体こんな感じかと ※インデントに全角スペース使ってます。 '-- login.asp (ログインページ) <% If Request.Form("txtPwd") = "CorrectPassword" Then Session.Contents("loginchk") = True Response.Redirect "default.asp" Else Response.Write "パスワードが違います<br>" End If %> <form action="login.asp" method="post"> パスワード:<input type="password" name="txtPwd" value=""><br> <input type="submit"> </form> '-- loginchk.asp <% If Not Session.Contents("loginchk") Then Response.Redirect "login.asp" End If %> '--- default.asp (認証して表示させたいページなど) <!-- #include file="loginchk.asp" --> ログイン中です。
お礼
実はこの方法も、クライアント認証も行っています。。。丁寧な回答ありがとうございました!!!!
- mangetsu_k
- ベストアンサー率40% (33/81)
イントラでしたらクライアントのIPで制御できます。 ですが、インターネット経由のアクセスは、固定IPを持っていないと難しいです。 IDとパスワードを入力させる形式ではダメなんでしょうか?
お礼
ログイン画面はすでにあります。ついでにクライアント認証も。。。更にセキュリティを強化しろとのことで今回の質問をしました。ありがとうございました!!!
お礼
Cookieを使用することにしました!!!他の方からも回答がありましたが、クライアント認証もログイン画面も存在します。。。さらにセキュリティを強化しろとの命令で。。。ありがとうございました!!!!