CAS

  1. 创建配置文件

    {数据目录,默认/data/mingdao}/script/volume/sso/sso.json,内容如下:(注意删除注释,如果挂载后依然出现 404 ,可将内容复制到 json.cn 中验证是否 json 格式不合法

    {
      "mode": "common-cas",
      "name": "cas",
      "cas": {
        "casUrl": "cas 服务器地址",
        "myserviceUrl": "明道云系统地址/orgsso",
        "casValidate": "/cas/serviceValidate",         // 授权路径
        "login": "/login",                             // 登录地址
        "logout": "/logout",                           // 登出地址
        "casParams": {
          "UserId": "{{&user}}",                       // 用户唯一标识,不能为空
          "Name": "{{&attributes.name}}",              // 姓名(仅 autoRegister 为 false 时可空)
          "Email": "{{&user}}@test.com"                // Email(仅 autoRegister 为 false 时可空)
        },
        "autoRegister": true,                          // 当账号不存在时,是否自动创建账号
        "projectId": "明道云组织编号"                   // 从 组织管理 > 组织信息 页面获取
      }
    }
    

    当 autoRegister 设置为 false 时,创建 {数据目录,默认/data/mingdao}/script/volume/sso/extend.json,内容如下:

    {
      "relation": true
    }
    

    {数据目录,默认/data/mingdao}/script/volume/wwwapi/appextensions.json,内容如下:

    {
      "AppSettings": {
        "EnableSsoLogoutRedirect": true
      }
    }
    

    根据 cas 返回结果设置 casParams 中的映射字段,如:

    <cas:serviceResponse xmlns:cas=\"http://www.yale.edu/tp/cas\">
     <cas:authenticationSuccess>
       <cas:user>test</cas:user>
       <cas:attributes>
         <cas:name>Jack</cas:name>
       </cas:attributes>
     </cas:authenticationSuccess>
    </cas:serviceResponse>
    

    则 casParams 的配置为:

    "casParams": {
      "UserId": "{{&user}}",
      "Name": "{{&attributes.name}}",
      "Email": "{{&user}}@test.com"
    }
    
  2. 挂载配置文件

    修改微服务应用对应的 docker-compose.yaml,在 volumes 中增加文件挂载并重启微服务应用。

    - ./volume/sso/sso.json:/usr/local/MDPrivateDeployment/sso/OptionFile/sso.json
    - ./volume/sso/extend.json:/usr/local/MDPrivateDeployment/sso/extend.json  # 仅 autoRegister 为 false 时需要添加此行
    - ./volume/wwwapi/appextensions.json:/usr/local/MDPrivateDeployment/wwwapi/appextensions.json
    
  3. 最后可通过 明道云系统访问地址/orgsso/sso?returnUrl={登录成功跳转地址,可空} 来进行单点登录

results matching ""

    No results matching ""