SSO登录功能使用

1. 什么是单点登录?

单点登录(Single Sign-On,简称 SSO)是一种身份验证解决方案。

单点登录允许用户在多个相互信任的应用系统中,只需登录一次即可访问所有关联的系统。

  • 传统模式:访问 A 系统要登一次,访问 B 系统要再登一次,用户需要记住多套账号密码。

  • SSO 模式:用户只需在统一的认证中心(IdP)登录一次,即可无缝切换至所有授权的应用。

2. BMC单点登录使用

2.1 创建单点登录Token

URL:https://device_ip/UI/Rest/SSOHandler

操作类型:POST

请求参数:

响应说明:

字段 字段说明 类型
ret 返回状态码 0表示正常返回 String
token String(可选)

请求体示例:

{
    "username": "test3",
    "password": "Admin@90000",
    "ip": "76.76.16.199",
    "logtype": "local",
    "function": "addtoken"
}

响应体示例:

{
    "token": "3f0761709d3c1cb9e935132d0c2035e8f2eb5754f35427079a3f85ece5342a76",
    "ret": "0"
}

2. 通过SSO token登录web

URL:https://device_ip/UI/Rest/SSOHandler

操作类型:GET

请求参数说明

参数 参数说明 类型 必选/可选
token String (1, 128) 可选
redirect String (“index”, “console”) 可选
kvmmode String (“dedicate”, “share”) 可选
openWay 或 openway String (“html5”, “java”) 可选
lang String (1-6位数字和字母) 可选
prefix String (“/v1/bmcPage/#/home”) 可选

请求示例:

https://{device_ip}/UI/Rest/SSOHandler?redirect=index&lang=zh&openway=html5&token=3f0761709d3c1cb9e935132d0c2035e8f2eb5754f35427079a3f85ece5342a76

3. SSO会话

  • 创建sso token后,60秒后token过期

  • 开启SSO会话IP校验,开启后sso 登录ip必须与创建sso token的ip参数保持一致

URL: /redfish/v1/SessionService

操作类型:PATCH

修改属性**:Oem/{OemIdentifier}/ValidateSsoClient**

请求示例:

{
    "Oem":{
        "openUBMC":{
            "ValidateSsoClient": true
        }
    }
}