ダウンロードした ZIP ファイルには Windows のユーザー認証サービスを作成する方法を示す例も含まれています。これは、IBM i でシングル・サインオン機能を提供したい場合は特に便利です。
Windows のエクスプローラーを使って、ダウンロードした .NET ソースコードを見てみます。
App_Code フォルダに進みます (App_Code フォルダは、すべてのソースコードが入っているはずの特別なフォルダです。このフォルダ内のファイルは .NET ランタイムによって自動的にコンパイルされます)。WindowsUserSservices という名前の C# ソースファイルがあるはずです。
このファイルを適当なテキストエディターで開くと、ユーザー認証を行うコードを確認することができます。
では、またエクスプローラーに戻り、サブ・ディレクトリ Controllers に進みます。
では、またエクスプローラーに戻り、サブ・ディレクトリ Controllers に進みます。
UserController.cs という名前のファイルがあるはずです。コントローラーはサービスを Web サービスとして発行します。
RoutePrefix と Route の注釈に注目してください。このコントローラーでサービスを起動するために使用する URL パスが示されています。
例えば、AuthenticateUser サービスを起動するには、次の URL を使用します (ポート番号は IIS で Web アプリケーションを作成した際に指定した番号にします)。
http://localhost:9001/user/authenticate
では、Web ブラウザを使ってこのサービスをテストしてみましょう。
サービスが現在のところ単純な HTTP を利用していることに注意してください。つまり、使用している IIS はワークステーションとは異なるコンピューター上にあり、そのトラフィックは暗号化されていません。
後のセクションで、これを修正し、サービスに HTTPS ポートを構成していきます。
このテストで使用するローカルまたはドメインのユーザー名とパスワード (できれはテスト用のユーザー名とパスワード) を 1 つ選びます。
実際のアカウントを使用する場合は、HTTPS を設定するまでは実際のパスワードを指定しないようにしてください (正しくないパスワードを指定すれば、このテストの目的を果たすことができます)。
Web ブラウザを開き、以下の URL を入力します。
http://localhost:9001/user/authenticate?domain=domain&user=ユーザー名&password=パスワード
例えば、次のようになります。
http://localhost:9001/user/authenticate?domain=SYD&user=tony&password=mysecretpwd
パスワードが正しくない場合、次のような応答が表示されます。