(目录对象) 还原已删除的项

命名空间:microsoft.graph

重要

Microsoft Graph /beta 版本下的 API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。

从已删除的项还原最近 删除的目录对象。 支持以下类型:

如果意外删除项目,可完全还原该项目。 这不适用于永久删除的安全组。 此外,还原应用程序不会自动还原关联的服务主体。 必须调用此 API 才能显式还原已删除的服务主体。

最近删除的项目最多可保留 30 天。 30 天后,该项目将永久删除。

此 API 可用于以下国家级云部署

全局服务 美国政府 L4 美国政府 L5 (DOD) 由世纪互联运营的中国

权限

下表显示了对每种受支持的资源类型调用此 API 所需的最低特权权限。 请遵循 最佳做法 来请求最低特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考

支持的资源 委派(工作或学校帐户) 委派(个人 Microsoft 帐户) 应用程序
administrativeUnit AdministrativeUnit.ReadWrite.All 不支持。 AdministrativeUnit.ReadWrite.All
application Application.ReadWrite.All 不支持。 Application.ReadWrite.OwnedBy
certificateBasedAuthPki PublicKeyInfrastructure.Read.All 不支持。 PublicKeyInfrastructure.Read.All
certificateAuthorityDetail PublicKeyInfrastructure.Read.All 不支持。 PublicKeyInfrastructure.Read.All
externalUserProfile ExternalUserProfile.ReadWrite.All 不支持 ExternalUserProfile.ReadWrite.All
Group.ReadWrite.All 不支持。 Group.ReadWrite.All
pendingExternalUserProfile PendingExternalUserProfile.ReadWrite.All 不支持 PendingExternalUserProfile.ReadWrite.All
servicePrincipal Application.ReadWrite.All 不支持。 Application.ReadWrite.OwnedBy
user User.DeleteRestore.All 不支持。 User.DeleteRestore.All

重要

在具有工作或学校帐户的委托方案中,必须为登录用户分配受支持的Microsoft Entra角色或具有支持的角色权限的自定义角色。 此操作支持以下最低特权角色。

  • 还原已删除的应用程序或服务主体: 应用程序管理员云应用程序管理员混合标识管理员
  • 若要还原已删除的用户: 用户管理员。 但是,若要还原具有特权管理员角色的用户,请执行以下操作:
    • 在委派方案中,必须为应用分配 Directory.AccessAsUser.All 委托权限,并且还必须为调用用户分配更高的特权管理员角色,如 谁可以执行敏感操作?中所述。
    • 在仅应用方案中,除了被授予 User.ReadWrite.All 应用程序权限外,还必须为应用分配更高特权的管理员角色,如 谁可以执行敏感操作?中所述。
  • 还原已删除的组:组管理员。 但是,若要还原可分配角色的组,必须为调用用户分配 特权角色管理员 角色。

HTTP 请求

POST /directory/deleteditems/{id}/restore

请求标头

名称 说明
Authorization 持有者 {token}。 必填。 详细了解 身份验证和授权
Content-type application/json

请求正文

在请求正文中,提供参数的 JSON 表示形式。

下表列出了调用此操作时所需的参数。

参数 类型 说明
autoReconcileProxyConflict 布尔值 可选参数。 指示Microsoft Entra ID是否应在还原软删除的用户(其一个或多个代理地址当前用于活动用户)时删除任何冲突的代理地址。 仅用于还原软删除 的用户。 此参数的默认值为 false
newUserPrincipalName String 要添加到还原用户的新 userPrincipalName 可选。

响应

如果成功,此方法在响应正文中返回 200 OK 响应代码和 directoryObject 对象。

示例

请求

POST https://graph.microsoft.com/beta/directory/deleteditems/46cc6179-19d0-473e-97ad-6ff84347bbbb/restore

响应

注意:为了提高可读性,可能缩短了此处显示的响应对象。

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/beta/$metadata#directoryObjects/$entity",
  "@odata.type":"#microsoft.graph.group",
  "id":"46cc6179-19d0-473e-97ad-6ff84347bbbb",
  "displayName":"SampleGroup",
  "groupTypes":["Unified"],
  "mail":"example@contoso.com",
  "mailEnabled":true,
  "mailNickname":"Example",
  "securityEnabled":false,
  "visibility":"Public"
}

请求

POST https://graph.microsoft.com/beta/directory/deleteditems/78bf875b-9343-4edc-9130-0d3958113563/restore
Content-Type: application/json

{
  "autoReconcileProxyConflict": true
}

响应

注意:为了提高可读性,可能缩短了此处显示的响应对象。

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#users/$entity",
    "@odata.type": "#microsoft.graph.user",
    "id": "78bf875b-9343-4edc-9130-0d3958113563",
    "businessPhones": [],
    "displayName": "SampleUser",
    "givenName": "Sample",
    "jobTitle": "Product Marketing Manager",
    "mail": "sampleuser@contoso.com",
    "mobilePhone": "+1 425 555 0109",
    "officeLocation": "18/2111",
    "preferredLanguage": "en-US",
    "surname": "Vance",
    "userPrincipalName": "sampleuser@contoso.com"
}

请求

POST https://graph.microsoft.com/beta/directory/deleteditems/78bf875b-9343-4edc-9130-0d3958113563/restore
Content-Type: application/json

{
  "newUserPrincipalName": "johndoe@contoso.com"
}

响应

注意:为了提高可读性,可能缩短了此处显示的响应对象。

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#directoryObjects/$entity",
    "@odata.type": "#microsoft.graph.user",
    "id": "78bf875b-9343-4edc-9130-0d3958113563",
    "businessPhones": [],
    "displayName": "SampleUser",
    "givenName": "Sample",
    "mobilePhone": "+1 425 555 0109",
    "officeLocation": "18/2111",
    "preferredLanguage": "en-US",
    "surname": "Vance",
    "userPrincipalName": "johndoe@contoso.com"
}