SSO 认证

注:SSO 认证为 JumpServer 企业版功能。

提示

  • 使用 SSO 对接第三方系统。

1 操作过程

  • 修改 JumpServer 配置文件启用 SSO.
  1. vi /opt/jumpserver/config/config.txt
  1. AUTH_SSO=True
  • 修改完成后保存,重启 JumpServer 即可。

2 使用方法

  • 通过 api 获取任意管理员 token 为其他用户创建免密登录链接。
  1. curl -X POST https://demo.jumpserver.org/api/v1/authentication/auth/ \
  2. -H 'Content-Type: application/json' \
  3. -d '{"username": "admin", "password": "xxxxxx"}'
  1. {"token":"702ec7d22ea24a749140a00a98872e40", ...}

Token 使用方法Private Token 使用方法

  1. curl -X POST https://demo.jumpserver.org/api/v1/authentication/sso/login-url/ \
  2. -H 'Content-Type: application/json' \
  3. -H "Authorization: Bearer 702ec7d22ea24a749140a00a98872e40" \
  4. -d '{"username": "zhangsan", "next": "/luna/"}'
  1. curl -X POST https://demo.jumpserver.org/api/v1/authentication/sso/login-url/ \
  2. -H 'Content-Type: application/json' \
  3. -H "Authorization: Token 937b38011acf499eb474e2fecb424ab3" \
  4. -d '{"username": "zhangsan", "next": "/luna/"}'
  1. Respons:
  2. {
  3. "login_url": "http://demo.jumpserver.org/api/v1/authentication/sso/login/?authkey=779e97cc-cd05-41a7-a3c3-0320896ba309&next=%2Fluna%2F"
  4. }
  5. # 直接访问这个链接即可使用用户的身份免密登陆 luna 页面
  6. # 用户和要登陆页面设置: {"username": "zhangsan", "next": "/luna/"}
  7. # 这里的 zhangsan 是 JumpServer 用户列表里面的用户 username,可以改成其他的用户