1. 认证方式配置

1.1. 结构说明

1.1.1. 通用配置结构说明

字段 类型 说明
reloadUser BOOL 刷新页面时,是否重新执行认证流程(主要用于嵌入模式下与主站的登录用户保持同步)
enableSyncUserAttr BOOL 启用用户属性同步
loginNameMapping STRING 用户名映射
userNameMapping STRING 显示名映射
emailMapping STRING 邮箱映射
mobileMapping STRING 手机号映射
rolesMapping STRING 角色映射
groupsMapping STRING 组映射
orgsMapping STRING 组织架构映射
tenantCodeMapping STRING 企业 ID 映射
tenantNameMapping STRING 企业名称映射
platformSourceId STRING 平台方 ID
enableSessionExpSync BOOLEAN 启用 SSO exp 会话有效期同步
sessionExpSyncMapping STRING 会话有效期映射

1.2. 认证方式接口说明

1.2.1. 获取支持的认证方式列表

获取支持的认证方式列表

请求URL

GET /api/v1/authentication-configs/form-items

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

字段 类型 说明
id STRING 认证方式的唯一键
name STRING 认证方式的名称

接口示例1: 获取支持的认证方式列表

GET /api/v1/authentication-configs/form-items

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": [
    {
      "id": "hengshi",
      "name": "HENGSHI"
    },
    {
      "id": "ldap",
      "name": "LDAP"
    },
    {
      "id": "cas",
      "name": "CAS"
    },
    {
      "id": "saml2",
      "name": "SAML2"
    },
    {
      "id": "oauth2",
      "name": "OAUTH2"
    },
    {
      "id": "dingtalk",
      "name": "钉钉"
    },
    {
      "id": "wechat-work",
      "name": "企业微信"
    },
    {
      "id": "ctr",
      "name": "CTR"
    },
    {
      "id": "yunzhijia",
      "name": "云之家"
    },
    {
      "id": "jwt-param",
      "name": "JWT 请求参数"
    },
    {
      "id": "lark",
      "name": "飞书"
    },
    {
      "id": "qince",
      "name": "勤策"
    }
  ]
}

1.2.2. 获取默认的认证方式

获取默认的认证方式

请求URL

GET /api/v1/authentication-configs/active-auth

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

字段 类型 说明
authType STRING 认证方式的唯一键

接口示例1: 获取默认的认证方式

GET /api/v1/authentication-configs/active-auth

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "authType": "ldap"
  }
}

1.2.3. 编辑默认的认证方式

编辑默认的认证方式

请求URL

PUT /api/v1/authentication-configs/active-auth

请求参数

URL 参数

request body 参数
字段 类型 说明
authType STRING 认证方式的唯一键

说明

返回对象的格式说明

接口示例1: 编辑默认的认证方式

PUT /api/v1/authentication-configs/active-auth

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "authType": "ldap"
  }
}

1.3. ldap配置

1.3.1. ldap配置结构说明

字段 类型 说明
protocol STRING ldap 协议,ldap/ldaps
url STRING 服务器地址
port INT 服务器端口
bindUser STRING 用户名
bindPassword STRING 密码
searchBase STRING 搜索库
query STRING LDAP 查询
其他配置 参考通用配置结构说明

1.3.2. 获取ldap配置

请求URL

GET /api/v1/authentication-configs/ldap

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

参考 ldap配置结构说明

接口示例1: 获取ldap配置

GET /api/v1/authentication-configs/ldap

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "protocol": "ldaps",
    "bindPassword": "test",
    "port": 636,
    "loginNameMapping": "uid",
    "query": "(objectclass=inetOrgPerson)",
    "searchBase": "cn=users,cn=accounts,dc=org",
    "bindUser": "uid=gogs,cn=sysaccounts,cn=etc,dc=org",
    "mobileMapping": "",
    "emailMapping": "",
    "url": "ldap.demo.org",
    "userNameMapping": ""
  }
}

1.3.3. 编辑ldap配置

编辑ldap配置

请求URL

PUT /api/v1/authentication-configs/ldap

请求参数

URL 参数

request body 参数

参考 ldap配置结构说明

说明

返回对象的格式说明

接口示例1: 编辑ldap配置

PUT /api/v1/authentication-configs/ldap

{
    "protocol": "ldaps",
    "url": "ldap.test.org",
    "port": 636,
    "bindUser": "uid=gogs,cn=sysaccounts,cn=etc,dc=org",
    "bindPassword": "gogs",
    "searchBase": "cn=users,cn=accounts,dc=org",
    "query": "(objectclass=inetOrgPerson)",
    "enableSyncUserAttr": false,
    "loginNameMapping": "uid",
    "userNameMapping": "cn",
    "emailMapping": "email",
    "mobileMapping": "mobile",
    "enableSessionExpSync": false
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "protocol": "ldaps",
    "bindPassword": "test",
    "port": 636,
    "loginNameMapping": "uid",
    "query": "(objectclass=inetOrgPerson)",
    "searchBase": "cn=users,cn=accounts,dc=org",
    "bindUser": "uid=gogs,cn=sysaccounts,cn=etc,dc=org",
    "mobileMapping": "",
    "emailMapping": "",
    "url": "ldap.demo.org",
    "userNameMapping": ""
  }
}

1.4. cas配置

1.4.1. cas配置结构说明

字段 类型 说明
protocol STRING cas 协议,CAS10/CAS20/CAS20_PROXY/CAS30/CAS30_PROXY
casServer STRING 服务器地址
其他配置 不支持用户名映射, 其他参考 通用配置结构说明

1.4.2. 获取cas配置

请求URL

GET /api/v1/authentication-configs/cas

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

参考 cas配置结构说明

接口示例1: 获取cas配置

GET /api/v1/authentication-configs/cas

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "casServer": "https://sso.test.org/auth/realms/master/protocol/cas/login",
    "orgsMapping": "orgs",
    "emailMapping": "email",
    "userNameMapping": "username",
    "sessionExpSyncMapping": "",
    "protocol": "CAS30"
  }
}

1.4.3. 编辑cas配置

编辑cas配置

请求URL

PUT /api/v1/authentication-configs/cas

请求参数

URL 参数

request body 参数

参考 cas配置结构说明

说明

返回对象的格式说明

接口示例1: 编辑cas配置

PUT /api/v1/authentication-configs/cas

{
    "protocol": "CAS30",
    "casServer": "https://sso.test.org/auth/realms/master/protocol/cas/login",
    "reloadUser": false,
    "enableSyncUserAttr": true,
    "userNameMapping": "username",
    "emailMapping": "email",
    "mobileMapping": "",
    "rolesMapping": "roles",
    "groupsMapping": "groups"
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "protocol": "CAS30",
    "casServer": "https://sso.test.org/auth/realms/master/protocol/cas/login",
    "reloadUser": false,
    "enableSyncUserAttr": true,
    "userNameMapping": "username",
    "emailMapping": "email",
    "mobileMapping": "",
    "rolesMapping": "roles",
    "groupsMapping": "groups"
  }
}

1.5. saml2配置

1.5.1. saml2配置结构说明

字段 类型 说明
idpMetadataUrl STRING idpMetadataUrl,saml2 server 的 metadata 地址
私钥 STRING 与saml2 server 匹配的私钥
证书 STRING 与saml2 server 匹配的证书
entityID STRING entityID
其他配置 其他参考 通用配置结构说明

1.5.2. 获取saml2配置

请求URL

GET /api/v1/authentication-configs/saml2

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

参考 saml2配置结构说明

接口示例1: 获取saml2配置

GET /api/v1/authentication-configs/saml2

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "idpMetadataUrl": "https://sso.test.org/auth/realms/master/protocol/saml/descriptor",
    "privateKey": "-----BEGIN PRIVATE KEY-----\ntest\ntestJXcQWrQUSB+LZHcDjhBcjKfHbyGmwHDHThz4d1nA2Dzccy78WpamTH\n-----END PRIVATE KEY-----",
    "reloadUser": true,
    "certificate": "-----BEGIN CERTIFICATE-----\ntest\ntest0xOTA0MTAwNzQ5NTdaFw0yOTA0MTAwNzUxMzdaMBwx\n-----END CERTIFICATE-----",
    "entityId": "develop_saml2"
  }
}

1.5.3. 编辑saml2配置

编辑saml2配置

请求URL

PUT /api/v1/authentication-configs/saml2

请求参数

URL 参数

request body 参数

参考 saml2配置结构说明

说明

返回对象的格式说明

接口示例1: 编辑saml2配置

PUT /api/v1/authentication-configs/saml2

{
  "idpMetadataUrl": "https://sso.test.org/auth/realms/master/protocol/saml/descriptor",
  "privateKey": "-----BEGIN PRIVATE KEY-----\ntest\ntestJXcQWrQUSB+LZHcDjhBcjKfHbyGmwHDHThz4d1nA2Dzccy78WpamTH\n-----END PRIVATE KEY-----",
  "reloadUser": true,
  "certificate": "-----BEGIN CERTIFICATE-----\ntest\ntest0xOTA0MTAwNzQ5NTdaFw0yOTA0MTAwNzUxMzdaMBwx\n-----END CERTIFICATE-----",
  "entityId": "develop_saml2"
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "idpMetadataUrl": "https://sso.test.org/auth/realms/master/protocol/saml/descriptor",
    "privateKey": "-----BEGIN PRIVATE KEY-----\ntest\ntestJXcQWrQUSB+LZHcDjhBcjKfHbyGmwHDHThz4d1nA2Dzccy78WpamTH\n-----END PRIVATE KEY-----",
    "reloadUser": true,
    "certificate": "-----BEGIN CERTIFICATE-----\ntest\ntest0xOTA0MTAwNzQ5NTdaFw0yOTA0MTAwNzUxMzdaMBwx\n-----END CERTIFICATE-----",
    "entityId": "develop_saml2"
  }
}

1.6. oauth2配置

1.6.1. oauth2配置结构说明

字段 类型 说明
key STRING Client ID
secret STRING Client Secret
authorizationBaseUrl STRING Authorize 接口
accessTokenEndpoint STRING Token 接口
profileUrl STRING User-info 接口
logoutUrl STRING Logout 接口
afterLogoutUriParamName STRING Logout 接口拼接 Redirect URI
originUrlDeliveryMethod STRING 原始 url 传递方式
scope STRING scope
其他配置 其他参考 通用配置结构说明

1.6.2. 获取oauth2配置

请求URL

GET /api/v1/authentication-configs/oauth2

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

参考 oauth2配置结构说明

接口示例1: 获取oauth2配置

GET /api/v1/authentication-configs/oauth2

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "profileUrl": "http://test:3000/sso/oauth2/user-info",
    "enableSyncUserAttr": true,
    "originUrlDeliveryMethod": "url",
    "loginNameMapping": "",
    "authorizationBaseUrl": "http://test:3000/sso/oauth2/authorize",
    "enableSessionExpSync": false,
    "afterLogoutUriParamName": "",
    "secret": "1",
    "emailMapping": "",
    "accessTokenEndpoint": "http://test:3000/sso/oauth2/token",
    "userNameMapping": "",
    "appendRedirectUri": true,
    "reloadUser": true,
    "groupsMapping": "",
    "logoutUrl": "http://test:3000/sso/oauth2/logout",
    "mobileMapping": "",
    "rolesMapping": "",
    "key": "1"
  }
}

1.6.3. 编辑oauth2配置

编辑oauth2配置

请求URL

PUT /api/v1/authentication-configs/oauth2

请求参数

URL 参数

request body 参数

参考 oauth2配置结构说明

说明

返回对象的格式说明

接口示例1: 编辑oauth2配置

PUT /api/v1/authentication-configs/oauth2

{
  "key": "1",
  "secret": "1",
  "authorizationBaseUrl": "http://test:3000/sso/oauth2/authorize",
  "accessTokenEndpoint": "http://test:3000/sso/oauth2/token",
  "profileUrl": "http://test:3000/sso/oauth2/user-info",
  "logoutUrl": "http://test:3000/sso/oauth2/logout",
  "loginNameMapping": "",
  "userNameMapping": "",
  "emailMapping": "",
  "mobileMapping": "",
  "rolesMapping": "",
  "groupsMapping": "",
  "appendRedirectUri": true,
  "originUrlDeliveryMethod": "url",
  "reloadUser": true,
  "enableSyncUserAttr": true,
  "enableSessionExpSync": false
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "profileUrl": "http://test:3000/sso/oauth2/user-info",
    "enableSyncUserAttr": true,
    "originUrlDeliveryMethod": "url",
    "loginNameMapping": "",
    "authorizationBaseUrl": "http://test:3000/sso/oauth2/authorize",
    "enableSessionExpSync": false,
    "afterLogoutUriParamName": "",
    "secret": "1",
    "emailMapping": "",
    "accessTokenEndpoint": "http://test:3000/sso/oauth2/token",
    "userNameMapping": "",
    "appendRedirectUri": true,
    "reloadUser": true,
    "groupsMapping": "",
    "logoutUrl": "http://test:3000/sso/oauth2/logout",
    "mobileMapping": "",
    "rolesMapping": "",
    "key": "1"
  }
}

1.7. 钉钉配置

1.7.1. 钉钉配置结构说明

字段 类型 说明
appKey STRING AppKey
appSecret STRING AppSecret
CorpId STRING corpId
ssoSecret STRING SSOsecret
dtLoginType STRING 登录方式:authCode(授权码模式,小程序免登录) ,qrConnect(扫码模式,网页端扫码登录)
schedulerPeriod STRING 同步频率(单位为分钟,0为不同步)
其他配置 其他参考 通用配置结构说明

1.7.2. 获取钉钉配置

请求URL

GET /api/v1/authentication-configs/dingtalk

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

参考 钉钉配置结构说明

接口示例1: 获取oauth2配置

GET /api/v1/authentication-configs/dingtalk

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "enableSyncUserAttr": true,
    "corpId": "test-corp-id",
    "dtLoginType": "authCode",
    "ssoSecret": "",
    "appKey": "test-app-key",
    "appSecret": "test-app-secret",
    "schedulerPeriod": 0
  }
}

1.7.3. 编辑钉钉配置

请求URL

PUT /api/v1/authentication-configs/dingtalk

请求参数

URL 参数

request body 参数

参考 钉钉配置结构说明

说明

返回对象的格式说明

接口示例1: 编辑钉钉配置

PUT /api/v1/authentication-configs/dingtalk

{
  "appKey": "test-app_key",
  "appSecret": "test-app-secret",
  "corpId": "test-corp-id",
  "ssoSecret": "",
  "schedulerPeriod": 0,
  "dtLoginType": "authCode",
  "enableSyncUserAttr": true
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "appKey": "test-app_key",
    "appSecret": "test-app-secret",
    "corpId": "test-corp-id",
    "ssoSecret": "",
    "schedulerPeriod": 0,
    "dtLoginType": "authCode",
    "enableSyncUserAttr": true
  }
}

1.7.4. 同步钉钉组织

请求URL

PUT /api/v1/authentication-configs/dingtalk/sync

请求参数

URL 参数

request body 参数

参考 钉钉配置结构说明

说明

返回对象的格式说明

接口示例1: 同步钉钉组织

PUT /api/v1/authentication-configs/dingtalk/sync

{
  "appKey": "test-app_key",
  "appSecret": "test-app-secret",
  "corpId": "test-corp-id",
  "ssoSecret": "",
  "schedulerPeriod": 0,
  "dtLoginType": "authCode",
  "enableSyncUserAttr": true
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "appKey": "test-app_key",
    "appSecret": "test-app-secret",
    "corpId": "test-corp-id",
    "ssoSecret": "",
    "schedulerPeriod": 0,
    "dtLoginType": "authCode",
    "enableSyncUserAttr": true
  }
}

1.8. 企业微信配置

1.8.1. 企业微信配置结构说明

字段 类型 说明
key STRING 企业ID
agentId STRING AgentId
secret STRING Secret
wcwLoginType STRING 登录方式:oauth2(授权码模式,小程序免登录) ,qrConnect(扫码模式,网页端扫码登录)
其他配置 其他参考 通用配置结构说明

1.8.2. 获取企业微信配置

请求URL

GET /api/v1/authentication-configs/wechat-work

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

参考 企业微信配置结构说明

接口示例1: 获取企业微信配置

GET /api/v1/authentication-configs/wechat-work

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "agentId": "test-agent-id",
    "enableSyncUserAttr": true,
    "wcwLoginType": "oauth2",
    "secret": "test-secret",
    "key": "test-key"
  }
}

1.8.3. 编辑企业微信配置

请求URL

PUT /api/v1/authentication-configs/wechat-work

请求参数

URL 参数

request body 参数

参考 企业微信配置结构说明

说明

返回对象的格式说明

接口示例1: 编辑企业微信配置

PUT /api/v1/authentication-configs/wechat-work

{
  "agentId": "test-agent-id",
  "enableSyncUserAttr": true,
  "wcwLoginType": "oauth2",
  "secret": "test-secret",
  "key": "test-key"
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "agentId": "test-agent-id",
    "enableSyncUserAttr": true,
    "wcwLoginType": "oauth2",
    "secret": "test-secret",
    "key": "test-key"
  }
}

1.9. JWT配置

1.9.1. JWT配置结构说明

字段 类型 说明
tokenName STRING JWT Token 名称
checkSignAlgorithm STRING 验签算法
checkSignKey STRING 验签密钥
signKey STRING 签名密钥
decryptMethod STRING 解密方法
decryptAlgorithm STRING 解密算法
decryptKey STRING 解密密钥
encryptKey STRING 加密密钥
groovy script STRING groovy script
其他配置 其他参考 通用配置结构说明

1.9.2. 获取JWT配置

请求URL

GET /api/v1/authentication-configs/jwt-param

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

参考 JWT配置结构说明

接口示例1: 获取JWT配置

GET /api/v1/authentication-configs/jwt-param

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "checkSignKey": "4415e5cf-aa28-46af-83e8-fff",
    "enableSyncUserAttr": true,
    "loginNameMapping": "",
    "tokenName": "",
    "enableSessionExpSync": false,
    "emailMapping": "",
    "decryptMethod": "",
    "platformSourceId": "",
    "userNameMapping": "",
    "sessionExpSyncMapping": "",
    "groupsMapping": "",
    "checkSignKeyBase64Encoded": false,
    "decryptKey": "",
    "checkSignAlgorithm": "HS256",
    "mobileMapping": "",
    "decryptAlgorithm": "",
    "tenantNameMapping": "企业名称",
    "tenantCodeMapping": "tenantCode",
    "rolesMapping": ""
  }
}

1.9.3. 编辑JWT配置

请求URL

PUT /api/v1/authentication-configs/jwt-param

请求参数

URL 参数

request body 参数

参考 JWT配置结构说明

说明

返回对象的格式说明

接口示例1: 编辑 JWT 配置

PUT /api/v1/authentication-configs/jwt-param

{
  "checkSignAlgorithm": "HS256",
  "checkSignKey": "4415e5cf-aa28-46af-83e8-fffff",
  "checkSignKeyBase64Encoded": false,
  "decryptMethod": "",
  "decryptAlgorithm": "",
  "decryptKey": "",
  "enableSyncUserAttr": true,
  "loginNameMapping": "",
  "userNameMapping": "",
  "emailMapping": "",
  "mobileMapping": "",
  "rolesMapping": "",
  "groupsMapping": "",
  "tenantCodeMapping": "",
  "tenantNameMapping": "企业名称",
  "platformSourceId": "tenantCode",
  "enableSessionExpSync": false,
  "sessionExpSyncMapping": "",
  "tokenName": ""
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "checkSignAlgorithm": "HS256",
    "checkSignKey": "4415e5cf-aa28-46af-83e8-fffff",
    "checkSignKeyBase64Encoded": false,
    "decryptMethod": "",
    "decryptAlgorithm": "",
    "decryptKey": "",
    "enableSyncUserAttr": true,
    "loginNameMapping": "",
    "userNameMapping": "",
    "emailMapping": "",
    "mobileMapping": "",
    "rolesMapping": "",
    "groupsMapping": "",
    "tenantCodeMapping": "",
    "tenantNameMapping": "企业名称",
    "platformSourceId": "tenantCode",
    "enableSessionExpSync": false,
    "sessionExpSyncMapping": "",
    "tokenName": ""
  }
}

1.9.4. 生成密钥

请求URL

PUT /api/v1/authentication-configs/jwt-param/generate-key

请求参数

URL 参数

request body 参数

参考 JWT配置结构说明

说明

返回对象的格式说明

接口示例1: 生成密钥

PUT /api/v1/authentication-configs/jwt-param/generate-key

{
  "checkSignAlgorithm": "HS256",
  "checkSignKeyBase64Encoded": false
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "enableSyncUserAttr": true,
    "checkSignKey": "9604218ba98c4011a068cdb2ef78fe7d",
    "checkSignKeyBase64Encoded": false,
    "checkSignAlgorithm": "HS256",
    "signKey": "9604218ba98c4011a068cdb2ef78fe7d"
  }
}

1.10. 飞书配置

1.10.1. 飞书配置结构说明

字段 类型 说明
appId STRING App ID
appSecret STRING App Secret
其他配置 其他参考 通用配置结构说明

1.10.2. 获取飞书配置

请求URL

GET /api/v1/authentication-configs/lark

请求参数

URL 参数

request body 参数

说明

返回对象的格式说明

参考 飞书配置结构说明

接口示例1: 获取飞书配置

GET /api/v1/authentication-configs/lark

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "enableSyncUserAttr": true,
    "appId": "test-app-id",
    "appSecret": "test-app-secret"
  }
}

1.10.3. 编辑飞书配置

请求URL

PUT /api/v1/authentication-configs/lark

请求参数

URL 参数

request body 参数

参考 飞书配置结构说明

说明

返回对象的格式说明

接口示例1: 编辑 飞书 配置

PUT /api/v1/authentication-configs/lark

{
  "appId": "cli_a250f4d4963cd00d",
  "appSecret": "lMJTeOaIe9TCADmDYcYKwYMbvUIaeMtS",
  "enableSyncUserAttr": true
}

返回

{
  "version": "",
  "code": 0,
  "msg": "success",
  "data": {
    "enableSyncUserAttr": true,
    "appId": "test-app-id",
    "appSecret": "test-app-secret"
  }
}

results matching ""

    No results matching ""

    登录/登出 数据科学-笔记