添加第三方认证源

最近更新时间:2026-03-19 02:07:38

我的收藏

1. 接口描述

接口请求域名: tcb.tencentcloudapi.com 。

添加身份认证源。在指定云开发环境下创建一个新的身份认证源,支持 OAuth 2.0、OIDC、SAML 2.0 等标准协议,以及自定义登录和邮箱登录等多种认证方式。
创建时需指定身份源协议类型(ProviderType)并配置对应的协议连接参数(Config)。若身份源 ID 已存在将返回错误。
限制:一个环境最大可允许加入20个认证源。

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:AddProvider。
Version String 公共参数,本接口取值:2018-06-08。
Region String 公共参数,详见产品支持的 地域列表
EnvId String 云开发环境 ID,用于唯一标识当前操作所属的云开发环境。
示例值:lowcode-123
Name LocalizedMessage 身份源的显示名称,支持国际化多语言配置。用户在登录页面看到的身份源名称将使用该字段,建议根据实际业务场景填写易于识别的名称,例如:企业微信、GitHub 等。
ProviderType String 身份源协议类型,决定该身份源使用何种认证协议与第三方平台对接。可选值:
OAUTH:标准 OAuth 2.0 协议
OIDC:OpenID Connect 协议
SAML:SAML 2.0 协议
WX_MICRO_APP:微信小程序登录
WX_QRCODE_MICRO_APP:微信小程序扫码登录
WX_CLOUDBASE_MICRO_APP:云开发托管小程序登录
WX_MP:微信公众号网页授权登录
WX_OPEN:微信开放平台扫码登录
WX_WORK_INTERNAL:企业微信自建应用登录
WX_WORK_AGENT:企业微信代开发应用登录
WX_WORK_THIRD_PARTY:企业微信第三方应用登录
WX_WORK_THIRD_PARTY_ASSOCIATION:企业微信第三方应用关联登录
CUSTOM:自定义登录
EMAIL:邮箱登录
示例值:WX_WORK_INTERNAL
Id String 身份源的唯一标识符,用于在系统内区分不同的身份源。格式要求:2~32 位,仅支持小写英文字母和数字,不可包含空格或特殊字符。若不填写,系统将自动生成。例如:github、google。
示例值:github
Picture String 身份源图标的访问地址,将展示在登录页的身份源按钮上。建议使用 64×64 像素的 SVG 格式图片以保证清晰度,支持 HTTP/HTTPS 公网可访问的图片链接。
示例值:http://xxx
Homepage String 身份源对应的官方主页地址。该信息将在用户查看自己的第三方账号绑定列表时展示,帮助用户识别已绑定的身份源来源。例如 GitHub 身份源可填写:https://github.com。
示例值:https://github.com
Config ProviderConfig 身份认证源协议连接配置,包含与第三方平台对接所需的核心参数,如 ClientId、ClientSecret、授权端点、Token 端点、回调地址、Scope、SAML Metadata、请求和响应参数映射等。不同 ProviderType 对应不同的配置项要求。
TransparentMode String 是否开启透传登录模式。可选值:TRUE(开启)、FALSE(关闭)、UNSPECIFIED(默认为 FALSE,企业微信代开发应用 WX_WORK_AGENT 类型默认为 TRUE)。开启后,平台不会持久化存储用户数据,仅将第三方身份源返回的用户信息透传给业务方,适用于不希望平台留存用户数据的场景。注意:开启透传模式时,ReuseUserId 将自动设为 TRUE,AutoSignUpWithProviderUser 将自动设为 FALSE。
示例值:"TRUE"
Description LocalizedMessage 身份源的详细描述信息,支持国际化多语言配置。可用于向用户说明该身份源的用途或使用场景,例如:谷歌授权登录。
ReuseUserId String 是否直接复用第三方身份源的用户 ID 作为平台的用户 ID。可选值:TRUE(直接复用,适用于已有用户体系迁移场景)、FALSE(不复用,由平台生成独立用户 ID)、UNSPECIFIED(默认为 FALSE,但当 TransparentMode 为 TRUE 时自动设为 TRUE)。注意:开启后需确保第三方用户 ID 的唯一性,避免 ID 冲突。
示例值:"FALSE"
On String 身份源的启用状态。可选值:TRUE(启用,用户可通过该身份源登录)、FALSE(禁用,登录入口将被隐藏,已有绑定关系不受影响)、UNSPECIFIED(默认为 TRUE)。
示例值:"TRUE"
AutoSignInWhenEmailMatch String 是否开启邮箱自动关联登录。可选值:TRUE(开启)、FALSE(关闭)、UNSPECIFIED(默认为 FALSE)。开启后,若第三方身份源返回的邮箱与系统中已有用户的邮箱一致,则自动将该第三方账号与已有用户关联并完成登录,无需用户手动绑定。
示例值:"TRUE"
AutoSignInWhenPhoneNumberMatch String 是否开启手机号自动关联登录。可选值:TRUE(开启)、FALSE(关闭)、UNSPECIFIED(默认行为等同 TRUE)。开启后,若第三方身份源返回的手机号与系统中已有用户的手机号一致,则自动将该第三方账号与已有用户关联并完成登录,无需用户手动绑定。注意:该字段默认行为(UNSPECIFIED)与 AutoSignInWhenEmailMatch 不同,手机号匹配在未显式关闭时默认生效。
示例值:"TRUE"

3. 输出参数

参数名称 类型 描述
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 添加谷歌认证源

添加谷歌认证源

输入示例

POST / HTTP/1.1
Host: tcb.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: AddProvider
<公共请求参数>

{
    "EnvId": "env-123",
    "Name": {
        "Message": "谷歌"
    },
    "ProviderType": "OAUTH",
    "Id": "google",
    "Picture": "https://qcloudimg.tencent-cloud.cn/raw/f3c2d4c33223231e42135df51723a59c.svg",
    "Config": {
        "ClientId": "example",
        "ClientSecret": "example",
        "Scope": "openid profile email",
        "AuthorizationEndpoint": "https://accounts.google.com/o/oauth2/v2/auth",
        "TokenEndpoint": "https://oauth2.googleapis.com/token",
        "UserinfoEndpoint": "https://www.googleapis.com/oauth2/v3/userinfo",
        "TokenEndpointAuthMethod": "CLIENT_SECRET_BASIC",
        "RequestParametersMap": {
            "RegisterUserType": "externalUser"
        }
    },
    "TransparentMode": "FALSE",
    "Description": {
        "Message": "GitHub OAuth身份认证"
    },
    "On": "TRUE",
    "AutoSignInWhenEmailMatch": "TRUE",
    "AutoSignInWhenPhoneNumberMatch": "TRUE"
}

输出示例

{
    "Response": {
        "RequestId": "7a3a7e6b-7982-4acd-bb52-206d6e57f2b7"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
AuthFailure CAM签名/鉴权错误。
FailedOperation 操作失败。
InvalidParameter 参数错误。
InvalidParameterValue 参数取值错误。
ResourceInUse 资源被占用。
ResourceNotFound 资源不存在。
UnauthorizedOperation 未授权操作。