6.2. 请求登录链接
用户存在后,您可以使用 API 请求调用来生成带有内置 SSO 令牌的 URL:
curl -X POST -d "provider_key=YOUR_PROVIDER_KEY&username=USERNAME&expires_in=60" https://YOUR_ADMIN_PORTAL.3scale.net/admin/api/sso_tokens.xml
此调用中有 2 个参数:username,用于指定您要请求令牌的人员和 expires_in,这是令牌的有效秒数(默认值为 10 分钟)。
您还可以传递额外的参数 redirect_url,该位置在成功登录后重定向用户。这个参数应该采用百分比编码。XML 响应将包含一个 URL,其中包含了一个 secret 令牌:
<?xml version="1.0" encoding="UTF-8"?> <sso_url> https://YOUR_DEVELOPER_PORTAL/session/create?expires_at=1365087501&token=Q0dNWGtjL2h2MnloR11yWmNwazVZY0NhenlabnBoRUNaNUlyWjZaVG8wMnBGdVNhT0VGN1NUb3FRc1pwSnRrclBZSTIwOUFwRkVTc3NuK1JTbjUrMEE9PS0tY1ZrOGFldzFJNkxna1hrQzQyZ0NGQT09--712f2990ac9248ab4b8962be6467fb149b346000 </sso_url>
注意
您可以传递 user_id 或 username 来标识 3scale 用户。通常,您的系统和 3scale 门户的用户名相同。在这种情况下,使用用户名应该很容易,因为它不需要将任何附加信息存储在您的一端。但是,如果您需要以任何方式向 URL 进行某种对和机器进程,您可能需要更好地关闭 user_id。