シングル サインオンが有効な場合のAPIからのサインアウト

シングル サインオン(SSO)が有効になっている場合は、一連のAPI要求を実行して、グリッド管理APIまたはテナント管理APIからサインアウトする必要があります。

タスク概要

必要な場合、組織のシングル ログアウト ページからログアウトするだけでStorageGRID APIからサインアウトできます。または、StorageGRIDからシングル ログアウト(SLO)を実行することもできます。その場合、有効なStorageGRID Bearerトークンが必要です。

手順

  1. 署名されたログアウト要求を生成するには、cookie "sso=true"をSLO APIに渡します。
    curl -k -X DELETE "https://$STORAGEGRID_ADDRESS/api/v3/authorize" \
    -H "accept: application/json" \
    -H "Authorization: Bearer $MYTOKEN" \
    --cookie "sso=true" \
    | python -m json.tool
    
    ログアウトURLが返されます。
    {
        "apiVersion": "3.0",
        "data": "https://adfs.example.com/adfs/ls/?SAMLRequest=fZDNboMwEIRfhZ...HcQ%3D%3D",
        "responseTime": "2018-11-20T22:20:30.839Z",
        "status": "success"
    }
  2. ログアウトURLを保存します。
    export LOGOUT_REQUEST='https://adfs.example.com/adfs/ls/?SAMLRequest=fZDNboMwEIRfhZ...HcQ%3D%3D'
  3. 要求をログアウトURLに送信し、SLOを実行してStorageGRIDに再びリダイレクトします。
    curl --include "$LOGOUT_REQUEST"
    302応答が返されます。リダイレクト先はAPIのみのログアウトには適用されません。
    HTTP/1.1 302 Found
    Location: https://$STORAGEGRID_ADDRESS:443/api/saml-logout?SAMLResponse=fVLLasMwEPwVo7ss%...%23rsa-sha256
    Set-Cookie: MSISSignoutProtocol=U2FtbA==; expires=Tue, 20 Nov 2018 22:35:03 GMT; path=/adfs; HttpOnly; Secure
    
  4. StorageGRID Bearerトークンを削除します。

    StorageGRID Bearerトークンを削除すると、SSOを使用しない場合と同様の動作となります。cookie "sso=true"が指定されていない場合、SSOの状態に影響を及ぼすことなくユーザがStorageGRIDからログアウトされます。

    curl -X DELETE "https://$STORAGEGRID_ADDRESS/api/v3/authorize" \
    -H "accept: application/json" \
    -H "Authorization: Bearer $MYTOKEN" \
    --include

    204 No Content応答に、ユーザがサインアウトしたことが示されます。

    HTTP/1.1 204 No Content