ページの先頭行へ戻る
Interstage Mobile Application Server V1.3.0 アプリケーション開発ガイド
FUJITSU Software

3.5.3.4 認証情報の付与

ログイン後、クライアントアプリケーションがIMAPSサーバ以外のサーバにアクセスする場合、認証情報を受け渡せます。この機能はIMAPSサーバの認証機構と業務サーバとの間でSSOのような振る舞いをおこないたい場合に便利です。SSOのような振る舞いとは以下のような動作を指します。
  • IMAPSサーバで認証していない場合、クライアントからのアクセスはエラーとなる。
  • IMAPSサーバで認証済の場合、クライアントからのアクセスは成功する

このような振る舞いを実現するためには、以下のようにします。
  • クライアントからアクセスする業務サーバ上のサーバアプリケーションに、認証モジュールを組み込む
  • クライアントアプリケーションはIMAPSで認証し、業務サーバにアクセスする際には認証情報を付与してアクセスする
使用例
using Windows.Web.Http;
using Windows.Web.Http.Filters;
・
・

    private async void connectionFunc() {
        string url = "https://サーバアドレス:ポート";
        HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, new Uri(url));
        try
        {
            LoginManager lm = new LoginManager();
            lm.setRequestAuth(request);
            HttpBaseProtocolFilter hbpf = new HttpBaseProtocolFilter();
            hbpf.AllowUI = false;   // ユーザー資格情報の入力を求めるプロンプトを表示しない.
            HttpClient httpClient = new HttpClient(hbpf);
            HttpResponseMessage response = await httpClient.SendRequestAsync(request);
            lm.checkServerTimeout(response);
        }
        catch (IMAPSAuthTimeOutException e)
        {
            // ログアウト処理の実装を行うことを推奨します。
        }
        catch (例外キャッチ)
        {
            // キャッチした例外の内容に応じて、例外処理を実装します。
        }
    }