OPTiM Store へ SAML Service Provider としての登録を行うためのAPIです。
OPTiM Store では、OpenID Connect Client Setup と同じような方法で、SAML SP 登録を受け付けています。
Content-Type: application/json
key | type | description |
---|---|---|
software_statement | String | Software Statement AttributesのJSONを署名したJWT形式の文字列 |
{
"software_statement": "eyJhbGciOiJSUzI1NiIsImtpZCI6InU2N1BXM1JjMFRvM3RfNGZQejNDd2IwZnV4SUNYWGhJOFN3Qm5hazRDNlEifQ.eyJ0b2tlbl9lbmRwb2ludF9hdXRoX21ldGhvZCI6ImNsaWVudF9zZWNyZXRfYmFzaWMiLCJncmFudF90eXBlcyI6ImNsaWVudF9jcmVkZW50aWFscyIsImNsaWVudF9uYW1lIjoiT3B0aW0gU3RvcmUgQ29udHJhY3QjMTIzNDUifQ.aBu83V3iJrYpH6yZdBdEfERvJxCAdOKtHaIiELLCWVaY9iqNP8yiAfm2sXePG1WaPm2K_RPBc_03s-vJSwDr_opgt8Va5pSLLW90JQ-hLXZIav0yu2NF3ZWCOP0ku5hzpOopOHP2gLXMAA1Bt1FcqQTwH6TBgPWIe1zbvtQe4UgxQncmyllvlvmvGygmrPaUGS0GNMr_kbkP1yccwlb3C30Kea5Ljsc-Y4nsFCw81r90Dm-hoe3Ox8Jrjq9P5KC7Z_Cqj5CGmff3pCQIT3gjU677cSgJr7F-W0Xi15970Xlv_z4rUmNqTKQHOQgkCMj7VxTRO03ajf7KqjtmB8VkJw"
}
key | type | description |
---|---|---|
iss | string | リクエスト発行者 (issuer) の識別子です。御社サービスの Contract Start API Endpoint URL となります。 |
aud | string | リクエスト受信者 (audience) の識別子です。OPTiM Store の SAML Service Provider Registration API Endpoint となります。 |
entity_id | string | SP Entity ID です。省略すると後述の callback_url を entity_id として扱います。 |
nameid_format | string | persistent か email を指定可能です。ただし Email をユーザー識別子として用いるとセキュリティ上の問題を引き起こしやすくなるため、persistent の利用を強く推奨します。 |
callback_url | string | OPTiM Store で認証されたユーザーが御社サービスにリダイレクトされて返される際の Callback Endpoint URL です。 |
iat | integer | リクエスト生成日時 (issued_at) を示す Unix Timestamp です。 |
exp | integer | リクエストの有効期限 (expires_at) を示す Unix Timestamp です。 |
{
"iss": "https://your-service.example.com/contract/api",
"aud": "https://store-xyz-api.optim.co.jp/api/idp/saml/register",
"entity_id": "https://your-service.example.com/optim-store",
"nameid_format": "persistent",
"callback_url": "https://your-service.example.com/optim-store/callback",
"iat": 1464053706,
"exp": 1464054306
}
正常なリクエストである場合、OPTiM Store から下記に従ったレスポンスが返却されます。 idp_metadata には SAML IdP Metadata XML が含まれます。
その他の属性値は idp_metadata に含まれる値と同じなので、無視していただいても構いませんし、IdP Metadata XML を Parse する代わりに JSON から必要なパラメータを取得していただいても構いません。
このレスポンスを元に、御社サービス側テナントを OPTiM Store SAML IdP テナントと関連付けてください。
201 Created
key | type | description |
---|---|---|
entity_id | string | IdP Metadata の entityID の値 |
single_sign_of_service | object | IdP Metadata の SingleSignOnService の値 |
nameid_format | string | IdP Metadata の NameIDFormat の値 |
certificate | string | IdP Metadata の X509Certificate の値 |
idp_metadata | string | SAML IdP Metadata (XML形式) |
{
"entity_id": "https://store-xyz-federation.optim.co.jp/saml2/:tenant_id/assertion",
"single_sign_of_service": {
"binding": "http_redirect",
"location": "https://store-xyz-federation.optim.co.jp/saml2/:tenant_id/assertion"
},
"nameid_format": "persistent",
"certificate": "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----\n",
"idp_metadata": "\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n\u003cmd:EntityDescriptor xmlns:md=\"urn:oasis:names:tc:SAML:2.0:metadata\"..."
}