BASIC認証マニュアル | ||||||||||||||||
はじめに) | ||||||||||||||||
BASIC認証管理プログラムpasswd.exeを利用することにより、BASIC認証にてログインしたユーザの追加情報をXcuteに引き渡すことができます。 BASIC認証を利用することにより、他のシステム(XCute以外)などでログインしたユーザの共通認証や、XCuteの複数のプロジェクト間において共通認証を行うことができます。 |
||||||||||||||||
本文) | ||||||||||||||||
BASIC認証のしくみ | ||||||||||||||||
一般的にBASIC認証は、以下のしくみにより成り立っています。 ・ブラウザが、WWWサーバに対してリクエストを出す。 ・WWWサーバはリクエストを受けたページが認証が必要であることをブラウザに通知。 ・ブラウザは、認証ダイアログを表示し、ユーザからのID,パスワードを受け取る。 ・受け取ったID、パスワードをふくめて、再度、WWWサーバにリクエストを出す。 ・WWWサーバは、引き渡されたID、パスワードが正当であればブラウザに結果を返す。 ・以後、ブラウザは該当のページに対するリクエストは全てID,パスワードをセットする。 |
||||||||||||||||
このように、認証にかかわる作業はすべてブラウザとWWWサーバ間の仕事です。 BASIC認証管理プログラムは、認証用IDとパスワード、Xcuteに引き渡す追加項目の管理を行うためのプログラムです。 | ||||||||||||||||
BASIC認証管理プログラムの下準備 | ||||||||||||||||
BASIC認証管理プログラムを利用するにあたって、以下の設定を行ってください。 |
||||||||||||||||
Program files\xcute\proles.ini --------- PasswdAdminUser= <---- 初期はadminが設定されているが、それを削除 |
||||||||||||||||
これにより、http://localhost/procgi/passwd.exe をブラウザから開くことにより、BASIC認証管理プログラムを開くことができます。 | ||||||||||||||||
![]() |
||||||||||||||||
これにより、http://localhost/procgi/passwd.exe をブラウザから開くことにより、BASIC認証管理プログラムを開くことができます。 さてここで、管理者用のユーザを登録しましょう。ここでは,「admin」というユーザを管理者にすることとします。 |
||||||||||||||||
![]() |
||||||||||||||||
BASIC認証管理プログラムの利用を管理者に限定するため、以下の設定を行います。 | ||||||||||||||||
Program files\xcute\proles.ini --------- PasswdAdminUser=admin <---- 管理者ユーザ(admin)を設定 |
||||||||||||||||
以上で、BASIC認証管理プログラムの初期設定は完了です。 | ||||||||||||||||
Webサーバの設定 | ||||||||||||||||
設定は、ディレクトリ単位で認証をかけ、認証をかけたディレクトリのサブディレクトリ(子)のディレクトリに対しても、認証が有効になります。 これを前提として以下、解説します。 |
||||||||||||||||
・例1 Xcuteで複数のプロジェクトが動作していて、それらの認証を1本化したい。 http://localhost/procgi/procgi.exe?P=project1 http://localhost/procgi/procgi.exe?P=project2 など複数のプロジェクトがあるが、同一のディレクトリのXcuteに対して共通認証を行う場合は、C:\InetPub\procgiに対して、以下の.htaccessファイルをおきます。 (.htaccessファイルの内容は変更する必要はありません。以後、ここで示す.htaccessファイルを利用します。) |
||||||||||||||||
.htaccess ----- AuthType Basic AuthName "Xcute system user" AuthUserFile /InetPub/procgi/initial/.htuserdb <Limit GET POST PUT> (上記ファイルが、passwd.exeにて生成されたパスワードDB) order deny,allow allow from all Require valid-user </Limit> <LimitExcept GET POST PUT> order deny,allow deny from all </LimitExcept> |
||||||||||||||||
![]()
|
||||||||||||||||
BASIC認証管理プログラムで作成した、「admin」ユーザでログインできるはずです。 さらに利用するユーザを、BASIC認証管理プログラムにて追加し、お試しください。 |
||||||||||||||||
・例2 Xcuteで複数の公開フォルダを利用している。おのおのに認証をかけたい。 http://localhost/procgi/procgi.exe?P=project1 http://localhost/demo/procgi.exe?P=project2 このように、公開フォルダが別々であるXcuteに、個別に認証をかけるには、 C:\InetPub\procgi\ 直下に、.htaccessファイルをおきます。 つぎに、C:\InetPub\demo\ 直下に以下の.htaccessをおきます。 パスワードDBの参照先を.htaccessを書き換えることにより変更し、おのおののフォルダに対して個別認証が可能になります。 ユーザの追加削除は、それぞれ以下より行います。 http://localhost/procgi/passwd.exe http://localhost/demo/passwd.exe |
||||||||||||||||
.htaccess ----- AuthType Basic AuthName "Xcute system user" AuthUserFile /InetPub/demo/initial/.htuserdb <Limit GET POST PUT> (パスワードDBの位置を変更) order deny,allow allow from all Require valid-user </Limit> <LimitExcept GET POST PUT> order deny,allow deny from all </LimitExcept> |
||||||||||||||||
ユーザによるパスワードの変更 | ||||||||||||||||
admin権限がない(proles.ini の PasswdAdminUser で指定されていないユーザ)が、 http://localhost/procgi/passwd.exe を利用した場合、そのユーザのパスワードをユーザ自身が変更できます。 | ||||||||||||||||
![]() |
||||||||||||||||
ごくシンプルな画面が表示されていますが、この画面のデザインは変更できます。 \InetPub\procgi\passwd_form.htm が、この入力画面です。 \InetPub\procgi\passwd_comp.htm が、パスワード変更後の確認画面です。 エラー画面のProWebErr.htm と同一のフォーマットですので簡単に変更できます。 |
||||||||||||||||
ログイン情報の取得 | ||||||||||||||||
登録したユーザの、ユーザ情報や、現在ログインしているユーザを取得するには、ひな型シートのR1C2セルに以下の記述をします。 | ||||||||||||||||
USERID=R4C5,1 | ||||||||||||||||
USERID=セットするセル,要素番号 という形式になっており、要素番号は以下の通りです。 | ||||||||||||||||
要素番号 | 取得できる情報 | |||||||||||||||
1 | ログイン名 | |||||||||||||||
2 | 名前 | |||||||||||||||
3 | 部署名 | |||||||||||||||
4 | 権限 | |||||||||||||||
5 | メモ | |||||||||||||||
![]()
|
||||||||||||||||
BASIC認証管理プログラムにおいて、testユーザは以下のように登録されています。 | ||||||||||||||||
以上 | ||||||||||||||||
以上 |