DeleteIdentityProvider - 解绑外部身份提供商

更新时间:
复制 MD 格式

整体断开工作空间的身份源集成。CustomSSO 会清理共享用户池及相关 SAML、SCIM 资源;只关闭登录或同步时应使用对应开关接口。

接口说明

功能与前提\n 这是整体断开,不是单独关闭登录。CustomSSO 解绑会清理本身份源导入的 AC 用户、远端共享用户池及相关资源、登录发布配置和绑定,因此 SAML、SCIM 都受影响;不会删除用户在 Azure 等外部平台创建的企业应用。先检查用户与 Team 的引用,存在引用时拒绝解绑。\n 请求受理后返回 DISCONNECTING,通过 GetIdentityProvider 查询:绑定不存在(IdentityProviderNotFound)才表示清理完成;列表也应不再出现此绑定。DISCONNECT_FAILED 表示可能已部分清理,不能恢复为全新未配置;可按返回状态重试。绑定本就不存在时接口返回无绑定的占位结果而不创建新资源;正在进行的解绑任务可返回当前绑定。不要用本接口替代 loginEnabled=false、syncEnabled=false 或删除单枚 Token。\n\n## 请求与示例\nDELETE /workspaces/{workspaceId}/identity-providers/{identityProviderType}\n 调用约定:按目标 Workspace 的地域调用,使用有相应 Workspace 身份源资源权限的 AK/STS 身份。下文示例中的 ws-example、URL、证书和 Token 均为占位值,需替换为真实值。请求体示例表示公开 API 的 body 参数内容,不是后端直连接口额外的 body 包装。返回示例只展示业务部分,外层还包括 requestId、success、code、message、httpStatusCode;排障请保留 requestId,不记录密钥。业务任务异步不意味着 HTTP 请求长连接等待完成。\ntext\nDELETE /workspaces/ws-example/identity-providers/CustomSSO\n\n\n## 返回示例\njson\n{\n "data": {\n "workspaceId": "ws-example",\n "identityProviderType": "CustomSSO",\n "status": "DISCONNECTING"\n }\n}\n\n\n## 错误与处理\n 错误处理:400 InvalidParameter 表示参数或当前配置前提不满足;404 IdentityProviderNotFound 表示没有匹配类型的绑定。同步调用上游失败可能返回 503 IdentityProviderProvisioningUnavailable;保留请求 ID 排查,不把读取失败解释为未配置。实际鉴权和 Workspace 不存在错误沿用公共错误处理。\n409 IdentityProvider.Disconnect.Conflict:该身份源用户仍属于 Team,先解除引用。409 IdentityProviderOperationConflict:当前状态不允许解绑。404 IdentityProviderNotFound:有外部绑定但类型不匹配。异步失败可能部分清理,不能只凭首次响应宣称完成。\n\n## 调用关系与使用边界\n 如只需关闭某项能力:关闭 SAML 登录使用 UpdateIdentityProvider 的 loginEnabled=false;关闭 SCIM 使用 UpdateIdentityProviderSCIM 的 syncEnabled=false;撤销单枚 Token 使用 DeleteIdentityProviderSCIMCredential。只有整体断开集成时才调用本接口。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。

  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。

  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:

    • 对于必选的资源类型,用前面加 * 表示。

    • 对于不支持资源级授权的操作,用全部资源表示。

  • 条件关键字:是指云产品自身定义的条件关键字。

  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。

操作

访问级别

资源类型

条件关键字

关联操作

agentcore:DeleteIdentityProvider

delete

*IdentityProvider

acs:agentcore:{#regionId}:{#accountId}:workspace/{#workspaceId}/identityProvider/{#identityProviderType}

无 无

请求语法

DELETE /workspaces/{workspaceId}/identity-providers/{identityProviderType} HTTP/1.1

路径参数

名称

类型

必填

描述

示例值

workspaceId

string

是

工作空间 ID。

ws-123456

identityProviderType

string

是

待解绑的外部身份提供商类型。可选值:DingTalk、Feishu,取值必须与当前绑定的类型一致。

DingTalk

请求参数

名称

类型

必填

描述

示例值

clientToken

string

否

暂不支持

暂不支持

返回参数

名称

类型

描述

示例值

object

code

string

业务状态码。

SUCCESS

data

object

解绑操作受理后的外部身份提供商绑定信息。

configuration

object

SAML 实际配置只在 GetIdentityProvider 按需回读;SCIM 查询和准备返回实际接收状态及 URL。

bindingType

string

HTTP-Redirect 或 HTTP-POST;手填时必填,查询返回短名称。

HTTP-Redirect

entityId

string

手填时必填,非空且不超过 2048 字符;已有配置不支持更换。与 SP 查询的我方 Entity ID 不同。

https://idp.example.com/entity

loginUrl

string

手填时必填,为绝对 HTTPS URL,不含用户凭据和片段。

https://idp.example.com/sso

ssoStatus

string

实际开关值 Enabled 或 Disabled,不等同 AC 保存的 loginEnabled 期望值。

Enabled

identityProviderType

string

外部身份提供商类型。可选值:DingTalk、Feishu。

DingTalk

protocol

string

当前仅支持 SAML;未保存有效配置时可不返回。不支持用 OIDC 占位初始化。

SAML

saml

object

输入支持 XML 与完整手填二选一。查询返回标准化配置,不回显原始 XML;未配置时可省略。

bindingType

string

HTTP-Redirect 或 HTTP-POST;手填时必填,查询返回短名称。

HTTP-Redirect

entityId

string

手填时必填,非空且不超过 2048 字符;已有配置不支持更换。与 SP 查询的我方 Entity ID 不同。

https://idp.example.com/entity

loginUrl

string

手填时必填,为绝对 HTTPS URL,不含用户凭据和片段。

https://idp.example.com/sso

x509Certificates

array

手填时必填非空数组,使用 PEM X.509 证书文本;校验当前有效期,去重后最多 2 张。

["-----BEGIN CERTIFICATE-----\\nMIICwDCCAaigAwIBAgIULlsHLfcADyBax5ZtFlj+YGzZVo0wDQYJKoZIhvcNAQEL\\nBQAwGjEYMBYGA1UEAwwPaWRwLmV4YW1wbGUuY29tMB4XDTI2MDEwMTAwMDAwMFoX\\nDTM2MDEwMTAwMDAwMFowGjEYMBYGA1UEAwwPaWRwLmV4YW1wbGUuY29tMIIBIjAN\\nBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAto0DN0W1CrPRzK9QZ9A1aApb4Lg8\\noGlp2c0PbN3LokXe/HzwxCMXx65IDnrenttxzTwp9BgUnUN/3LRzWaOL2UQ/vNYN\\nW9LFLkI1T64UPyI7eyi28YlALhb41xkYhEp7rz+MjqifBzVZeTDUxBYtbK2hAhbY\\nEL1+udwsXEx0KB7xuQ/rbI2OKeqAEAD1tfYg7T/SM2wrXNYhx+o1HtchM4/0I8Ok\\nkk27JQ4y3ofzC5sTySmFF1Y7XcpSd+5WSyazedhkAieo8AB01DkJV6nnKfH8sH0E\\nBsnH3FP8FhqCLrIeEkjX9B9OcIRLGjiZqx4u/ryW1QhMldnv+pFfNjWy/wIDAQAB\\nMA0GCSqGSIb3DQEBCwUAA4IBAQC1hSQG8AwtGOoX2gKBK4Hi5XBrBreij8WlLTUW\\nld0FINQ0Rg84f/27CjDthywj6wgxCesCuOVFhpxQa1UacsP/Gcai1aKABtLWImca\\nWECRYK5gDkwhTMFKM9mXA26hH1l4v/UR2iTpEK9H78egC4W7bs2LDTpPryuaNKTq\\nP2O0tMbNkAHB8yecz5LxHXnxadL9Egow25g2RClvpifWqDnuS9TSbKkIWLcPLjoc\\nJj2K9ILpBwhXiXi/BiSgyYTLiYvVvih9vX4s+hKGZNJc0j92YLiOHDF0XH1oxgdV\\njfTmRiedeb2VZJZElptD92z0AqFR7z2d5B+OqpPA2gjuMLV5\\n-----END CERTIFICATE-----"]

string

一张有效 PEM X.509 签名证书;示例为 idp.example.com 的公开测试证书,实际接入须替换为外部 IdP 的证书。

-----BEGIN CERTIFICATE-----\nMIICwDCCAaigAwIBAgIULlsHLfcADyBax5ZtFlj+YGzZVo0wDQYJKoZIhvcNAQEL\nBQAwGjEYMBYGA1UEAwwPaWRwLmV4YW1wbGUuY29tMB4XDTI2MDEwMTAwMDAwMFoX\nDTM2MDEwMTAwMDAwMFowGjEYMBYGA1UEAwwPaWRwLmV4YW1wbGUuY29tMIIBIjAN\nBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAto0DN0W1CrPRzK9QZ9A1aApb4Lg8\noGlp2c0PbN3LokXe/HzwxCMXx65IDnrenttxzTwp9BgUnUN/3LRzWaOL2UQ/vNYN\nW9LFLkI1T64UPyI7eyi28YlALhb41xkYhEp7rz+MjqifBzVZeTDUxBYtbK2hAhbY\nEL1+udwsXEx0KB7xuQ/rbI2OKeqAEAD1tfYg7T/SM2wrXNYhx+o1HtchM4/0I8Ok\nkk27JQ4y3ofzC5sTySmFF1Y7XcpSd+5WSyazedhkAieo8AB01DkJV6nnKfH8sH0E\nBsnH3FP8FhqCLrIeEkjX9B9OcIRLGjiZqx4u/ryW1QhMldnv+pFfNjWy/wIDAQAB\nMA0GCSqGSIb3DQEBCwUAA4IBAQC1hSQG8AwtGOoX2gKBK4Hi5XBrBreij8WlLTUW\nld0FINQ0Rg84f/27CjDthywj6wgxCesCuOVFhpxQa1UacsP/Gcai1aKABtLWImca\nWECRYK5gDkwhTMFKM9mXA26hH1l4v/UR2iTpEK9H78egC4W7bs2LDTpPryuaNKTq\nP2O0tMbNkAHB8yecz5LxHXnxadL9Egow25g2RClvpifWqDnuS9TSbKkIWLcPLjoc\nJj2K9ILpBwhXiXi/BiSgyYTLiYvVvih9vX4s+hKGZNJc0j92YLiOHDF0XH1oxgdV\njfTmRiedeb2VZJZElptD92z0AqFR7z2d5B+OqpPA2gjuMLV5\n-----END CERTIFICATE-----

status

string

状态。CONFIGURED(配置已受理,等待开通用户池)、SYNCING(正在同步组织成员)、SYNCED(组织成员同步完成)、READY(绑定已生效)、SYNC_FAILED(组织成员同步失败)、UPDATING(正在更新配置)、UPDATE_FAILED(更新配置失败)、DISCONNECTING(正在解绑)、DISCONNECT_FAILED(解绑失败)。

READY

workspaceId

string

工作空间 ID。

ws-123456

httpStatusCode

integer

HTTP 状态码。

200

message

string

响应消息。请求失败时返回错误描述。

success

requestId

string

请求 ID。

request-123456

success

boolean

请求是否成功。

示例

正常返回示例

JSON格式

{
  "code": "SUCCESS",
  "data": {
    "configuration": {
      "bindingType": "HTTP-Redirect",
      "entityId": "https://idp.example.com/entity",
      "loginUrl": "https://idp.example.com/sso",
      "ssoStatus": "Enabled"
    },
    "identityProviderType": "DingTalk",
    "protocol": "SAML",
    "saml": {
      "bindingType": "HTTP-Redirect",
      "entityId": "https://idp.example.com/entity",
      "loginUrl": "https://idp.example.com/sso",
      "x509Certificates": [
        "-----BEGIN CERTIFICATE-----\\nMIICwDCCAaigAwIBAgIULlsHLfcADyBax5ZtFlj+YGzZVo0wDQYJKoZIhvcNAQEL\\nBQAwGjEYMBYGA1UEAwwPaWRwLmV4YW1wbGUuY29tMB4XDTI2MDEwMTAwMDAwMFoX\\nDTM2MDEwMTAwMDAwMFowGjEYMBYGA1UEAwwPaWRwLmV4YW1wbGUuY29tMIIBIjAN\\nBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAto0DN0W1CrPRzK9QZ9A1aApb4Lg8\\noGlp2c0PbN3LokXe/HzwxCMXx65IDnrenttxzTwp9BgUnUN/3LRzWaOL2UQ/vNYN\\nW9LFLkI1T64UPyI7eyi28YlALhb41xkYhEp7rz+MjqifBzVZeTDUxBYtbK2hAhbY\\nEL1+udwsXEx0KB7xuQ/rbI2OKeqAEAD1tfYg7T/SM2wrXNYhx+o1HtchM4/0I8Ok\\nkk27JQ4y3ofzC5sTySmFF1Y7XcpSd+5WSyazedhkAieo8AB01DkJV6nnKfH8sH0E\\nBsnH3FP8FhqCLrIeEkjX9B9OcIRLGjiZqx4u/ryW1QhMldnv+pFfNjWy/wIDAQAB\\nMA0GCSqGSIb3DQEBCwUAA4IBAQC1hSQG8AwtGOoX2gKBK4Hi5XBrBreij8WlLTUW\\nld0FINQ0Rg84f/27CjDthywj6wgxCesCuOVFhpxQa1UacsP/Gcai1aKABtLWImca\\nWECRYK5gDkwhTMFKM9mXA26hH1l4v/UR2iTpEK9H78egC4W7bs2LDTpPryuaNKTq\\nP2O0tMbNkAHB8yecz5LxHXnxadL9Egow25g2RClvpifWqDnuS9TSbKkIWLcPLjoc\\nJj2K9ILpBwhXiXi/BiSgyYTLiYvVvih9vX4s+hKGZNJc0j92YLiOHDF0XH1oxgdV\\njfTmRiedeb2VZJZElptD92z0AqFR7z2d5B+OqpPA2gjuMLV5\\n-----END CERTIFICATE-----"
      ]
    },
    "status": "READY",
    "workspaceId": "ws-123456"
  },
  "httpStatusCode": 200,
  "message": "success",
  "requestId": "request-123456",
  "success": true
}

错误码

访问错误中心查看更多错误码。

变更历史

更多信息,参考变更详情。