アプリケーション用ログインページ

    「図1 LINE WORKS サービスとクライアント間の OAuth2.0 による SSO」のプロセス 3. で使うアプリケーション用ログインページを作成します。ユーザーがLINE WORKS アプリや Drive エクスプローラーにログインするためにIDとパスワードを入力するページです。

    IdP 側でログイン処理後、Authorization Code を発行して redirect_uri に返します。

    参考

    • LINE WORKS アプリと Drive エクスプローラーの UI ではアプリケーション内でログイン処理を実行しているように見えますが、内部ではアプリ内ブラウザを通じて該当 URL を呼び出しています。そのため、IdP 側で個別にページを作成するのではなく「Web ログインページ」をレスポンシブ型にして共用することを推奨します。

    注意

    • IdP 側でログイン処理を実施後は必ず redirect_uri でリダイレクトしてください。アプリ内ブラウザで動作しているため、リダイレクトが行われないと正常に LINE WORKS のサービス画面に遷移できません。

    Request URL

    https://クライアントドメイン/クライアントログインページ

    LINE WORKS のセキュリティーポリシーにより、port 80 もしくは 443 のみ使用できます。
    作成した Request URL は、Developer ConsoleのSSO 設定ページにて Application Login URL に登録します。

    図10 OAuth 2.0によるアプリケーションログインページURLの登録

    図10 OAuth 2.0によるアプリケーションログインページURLの登録

    HTTP Method

    GET

    Request

    パラメータ タイプ 必須 説明
    response_type String Y レスポンスタイプ
    "code" 固定
    client_id String Y Developer Console で登録した client id
    redirect_uri String Y 認証処理後に Authorization Code を返すURL。URL エンコードされています。
    worksId String N ユーザーが入力した LINE WORKS アカウント ID
    userAgent String Y ユーザーが LINE WORKS アプリからアクセスしているか識別するための値。"LineWorks"固定。
    IdP 側が HttpRequest Header に含まれている userAgent を使用してアクセス元を確認している場合、この値で代替することができる。
    sessionKey String Y LINE WORKS アプリからログインリクエストか検証する際に使用する値

    参考

    • CSRF(Cross-site request forgery) 防止のために使用する state は、パラメーターの代わりに redirect_uri 中に含まれています。
      そのため、IdP 側で authorization code を返す際は redirect_uri にそのまま redirect する必要があります。
    • ログインページへ遷移後 30 分以内に Authorization Code のコールバックがない場合、正常ではないログイン操作とみなされてログインに失敗します。
    • HttpRequest Header の userAgent 値は予告なく変更されることがあります。