命名空间:microsoft.graph
重要
Microsoft Graph /beta 版本下的 API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。
从 servicePrincipal 中删除密钥凭据。 servicePrincipal 可以使用此方法和 addKey 来自动滚动其即将过期的密钥。
注意
创建 servicePrincipal 和 更新 servicePrincipal 作可以继续用于添加和更新具有或不带用户上下文的任何 servicePrincipal 的密钥凭据。
作为此方法请求验证的一部分,在执行作之前,将验证现有密钥的所有权证明。
权限
为此 API 选择标记为最低特权的权限。 只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
| 权限类型 | 最低特权权限 | 更高特权权限 |
|---|---|---|
| 委派(工作或学校帐户) | Application.ReadWrite.All | Directory.ReadWrite.All |
| 委派(个人 Microsoft 帐户) | 不支持。 | 不支持。 |
| 应用程序 | Application.ReadWrite.OwnedBy | Application.ReadWrite.All、Directory.ReadWrite.All |
重要
在具有工作或学校帐户的委托方案中,必须为登录用户分配受支持的Microsoft Entra角色或具有支持的角色权限的自定义角色。 此作支持以下最低特权角色。
- 具有默认用户权限的非管理员成员用户 - 对于他们拥有的应用程序
- 应用程序开发人员 - 对于他们拥有的应用程序
- 云应用程序管理员
- 应用程序管理员
HTTP 请求
可以使用服务主体 ID 或 appId 来寻址服务主体。 id 和 appId 在 Microsoft Entra 管理中心 中的应用注册中分别称为“对象 ID”和“应用程序 (客户端) ID”。
POST /serviceprincipals/{id}/removeKey
POST /serviceprincipals(appId='{appId}')/removeKey
请求标头
| 名称 | 说明 |
|---|---|
| Authorization | 持有者 {token}。 必填。 详细了解 身份验证和授权。 |
| Content-Type | application/json. 必需。 |
请求正文
在请求正文中,提供以下必需属性。
| 属性 | 类型 | 说明 |
|---|---|---|
| keyId | Guid | 密码的唯一标识符。 |
| 证明 | String | 用作现有密钥所有权证明的自签名 JWT 令牌。 必须使用与 servicePrincipal 关联的现有有效证书之一对应的私钥对此 JWT 令牌进行签名。 令牌应包含以下声明:
有关生成此所有权证明令牌的步骤,请参阅 为滚动密钥生成所有权证明令牌。 |
响应
如果成功,此方法返回 204 No content 响应代码。
示例
以下示例演示如何调用此 API。
请求
以下示例显示了一个请求。
POST https://graph.microsoft.com/beta/serviceprincipals/{id}/removeKey
Content-Type: application/json
{
"keyId": "f0b0b335-1d71-4883-8f98-567911bfdca6",
"proof":"eyJ0eXAiOiJ..."
}
响应
以下示例显示了相应的响应。
HTTP/1.1 204 No Content