
企業内においてWebシステムを使用するのですが、イントラとしても、インターネットとしても使用できるようにしないといけません。。。インターネットとして使用する場合は手持ちの端末にインターネット回線につなげるという形なのですが、これではインターネット環境さえあれば誰でもアクセルできることになってしまいます。。。
ここでWebシステムにアクセスした際、端末名またはログインしたWindowsユーザ名を取得してサーバ側で判断しようと思ったのですが、インターネットにおいてサーバ側ではクライアントのこれらの情報を取得することができません。
なんとか他の方法を考えたいのですが、浮かびません。。。例えば、ショートカット(URL)にパラメータをつけて渡すとか、そういう安易な方法しか思い浮かびません。。。さすがにこの場合はショートカットを見るだけでわかってしまう為、使えないのですが、もうちょっとだけでいいので高度に特定の端末からしかアクセスできないようにする方法はないでしょうか??本当に困っています。助けてください。。。
No.1ベストアンサー
- 回答日時:
社内でも社外でも使いたいのですね。
ASPはやったことないので違うかもしれませんが、、、、
本当にWebのプログラム内で端末の情報は拾えませんでした???
また、WEBサーバがApacheであれば.htaccess によるアクセス制限もできます。
(htaccessで検索してください)
裏技ですが、使用する人(社員)にはあらかじめcookieを渡しておいて(特定の端末にのみcookieデータをあらかじめ設定しておく)、
そのcookieデータを持っている人のみをアクセス可能にする、
という制御はJavaScriptで可能だと思います。
ただし、cookieの配布とかの運用ルールが必要になります。
社外から使う場合は、セキュリティ管理/個人情報保護とかもあるので、
もっと注意すべきですが、、、
Cookieを使用することにしました!!!他の方からも回答がありましたが、クライアント認証もログイン画面も存在します。。。さらにセキュリティを強化しろとの命令で。。。ありがとうございました!!!!
No.4
- 回答日時:
端末固定でしたら、クライアント証明書が確実だと思います。
参考URLにある、「プライベート認証局」が参考になるでしょうか。参考URL:http://www.ippsas.jp/lineup/option.html
No.3
- 回答日時:
一番楽なのはサーバ側の設定で匿名アクセスのチェックを外して、基本認証か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" -->
ログイン中です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Global.asaについて
-
windows統合認証とform認証の併用
-
特定の端末からのみWebシステム...
-
えきねっとのログイン画面はどこ?
-
コネクション・セッション・ト...
-
submitボタンにvalue属性の値で...
-
VBAで一時中断したプログラムの...
-
VB.NET 画面遷移
-
画面遷移が不正ですと表示されます
-
ASP.NET(VB)でのデータグリッド...
-
セッションIDを取得したい
-
getParameterで値が取得できず...
-
PDFのウィンドウが二重に開いて...
-
複数の aspx で一つのクラスの...
-
ACCESS2010 WEBブラウザーコン...
-
EXCEL2010でセルが編集中かを判...
-
プレビュー画面にツールバーを...
-
HTMLボタンの文字色を変え...
-
PageLoadの後にJavascript実行...
-
ロストフォーカスイベントとそ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHPからWindowsログインユーザ...
-
えきねっとのログイン画面はどこ?
-
特定の端末からのみWebシステム...
-
VBAでHTTPログイン
-
ログインフラグがわかりません。
-
Enterキーでログイン
-
XMLHTTPを用いて認証が必要なUR...
-
セッション管理について(同時...
-
phpmyadminでDBが作成できない。
-
戻るボタンで、ログイン中を維...
-
VB6.0でIEをコントロールする
-
windows統合認証とform認証の併用
-
ページが参照された時にログイ...
-
フォレストページを使ってる人...
-
ユーザー環境変数の一覧
-
Global.asaについて
-
VB6)「DoEvents」について。(...
-
ASP.NETで作成されたログインペ...
-
ユーザIDの変更不可の理由
-
INPUTにnameがない場合のsubmit
おすすめ情報