SAML Request

SSO 利用ユーザーが LINE WORKS にアクセスすると、IdP に SAML Request を送信します。

参考

  • SAML 2.0 による SSO 「2. Create and pass SAML request (redirect).」の処理です。

注意

  • SAML Request は Deflate + Base64 でエンコードされています。
  • IMAP/CalDAV API で SAML Request が渡される場合は Base64 エンコードのみとなります。

SAML Request Body {#saml-request-body}

<?xml version="1.0" encoding="UTF-8"?><saml2p:AuthnRequest    xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"     AssertionConsumerServiceURL="{ACS URL}"     ID="{LINE WORKS認証システムで発行する ID}"     IssueInstant="{Request生成日時}"     ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"     ProviderName="worksmobile.com"     Version="2.0">    <saml2:Issuer        xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">worksmobile.com</saml2:Issuer>    <saml2p:NameIDPolicy Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"/></saml2p:AuthnRequest>

SAML Request の各項目は下記の通りです。

ParameterTypeDescription
AuthnRequest AssertionConsumerServiceURLStringACS URL
LINE WORKS が SAML Response を受け取る URL
AuthnRequest IDStringLINE WORKS が発行する ID
SAML Response 生成時に使用
AuthnRequest IssueInstantDate(UTC)SAML Request 生成日時
AuthnRequest ProtocolBindingString固定値: "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
AutnnRequest ProviderNameString固定値: "worksmobile.com"
IssuerString固定値: "worksmobile.com"

SAML Request Example {#saml-request-body-example}

<?xml version="1.0" encoding="UTF-8"?><saml2p:AuthnRequest    xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol"     AssertionConsumerServiceURL="https://auth.worksmobile.com/acs/company.com"     ID="bemkplgpdoemkhjmncgmbcdibglpngclfombpmed"     IssueInstant="2018-02-14T03:33:49.999Z"     ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"     ProviderName="worksmobile.com"     Version="2.0">    <saml2:Issuer        xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">worksmobile.com</saml2:Issuer>    <saml2p:NameIDPolicy Format="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"/></saml2p:AuthnRequest>