还原软删除的企业应用程序

本文介绍如何在 Microsoft Entra 租户中还原软删除的企业应用程序。 软删除的企业应用程序可以在删除后的前 30 天内从回收站中还原。 30 天时段过后,将永久删除企业应用程序且无法还原。

如果通过 Microsoft Entra 管理中心中的应用注册在其主租户中删除了应用程序注册,则还会删除作为其对应服务主体的企业应用程序。

如果通过 Microsoft Entra 管理中心还原已删除的应用程序注册,则还会还原其对应的服务主体。 因此,可以恢复服务主体以前的配置,但以前的策略(如未还原的条件访问策略)除外。

先决条件

若要还原企业应用程序,需要:

要恢复最近删除的企业应用程序,请执行以下步骤。 有关删除和恢复应用程序的常见问题的详细信息,请参阅删除和恢复应用程序常见问题解答

使用 Microsoft Entra PowerShell 查看可还原的企业应用程序

请确保使用的是 Microsoft Entra PowerShell 模块。

至少需要云应用程序管理员登录。

  1. 运行以下命令以查看最近删除的企业应用程序。

    Connect-Entra -Scopes 'Application.Read.All'
    Get-EntraDeletedServicePrincipal
    

将 ID 替换为要还原的服务主体的对象 ID。

使用 Microsoft Graph PowerShell 查看可还原的企业应用程序

  1. 运行 connect-MgGraph -Scopes "Application.ReadWrite.All"。 至少需要云应用程序管理员登录。

  2. 若要查看最近删除的企业应用程序,请运行以下命令。

    Get-MgDirectoryDeletedItem -DirectoryObjectId <id>
    

将 ID 替换为要还原的服务主体的对象 ID。

使用 Microsoft Graph API 查看可还原的企业应用程序

使用 Graph 浏览器查看和还原最近删除的企业应用程序。 至少需要云应用程序管理员登录。

若要获取租户中已删除企业应用程序的列表,请运行以下查询。

GET https://graph.microsoft.com/v1.0/directory/deletedItems/microsoft.graph.servicePrincipal

从生成的已删除服务主体列表中,记录要还原的企业应用程序的 ID。

或者,如果要获取已删除的特定企业应用程序,请提取已删除的服务主体,并使用以下语法按客户端的应用程序 ID (appId) 属性筛选结果:

https://graph.microsoft.com/v1.0/directory/deletedItems/microsoft.graph.servicePrincipal?$filter=appId eq '{appId}'。 检索已删除的服务主体的对象 ID 后,请继续进行还原。

使用 Microsoft Entra PowerShell 还原企业应用

  1. 若要还原软删除的企业应用程序,请运行以下命令:

    Connect-Entra -Scopes 'Application.ReadWrite.All'
    #get the deleted service principal by filtering by the display name.
    $deletedServicePrincipal = Get-EntraDeletedServicePrincipal -Filter "DisplayName eq 'test-App1-Deleted'"
    
    #assign the value returned to a variable and restore the deleted service principal
    Id = $deletedServicePrincipal.Id
    Restore-EntraDeletedDirectoryObject -Id $deletedServicePrincipal.Id
    

使用 Microsoft Graph PowerShell 还原企业应用

  1. 若要还原企业应用程序,请运行以下命令:

    Restore-MgDirectoryDeletedItem -DirectoryObjectId <id>
    

将 ID 替换为要还原的服务主体的对象 ID。

使用 Microsoft 图形 API 还原企业应用

若要还原企业应用程序,请运行以下查询:

POST https://graph.microsoft.com/v1.0/directory/deletedItems/{id}/restore

将 ID 替换为要还原的服务主体的对象 ID。

客户可以查看软删除的托管标识服务主体,但无法将其恢复或永久删除。

警告

永久删除企业应用程序这一操作不可逆。 应用上存在的任何配置都将丢失。 仔细查看企业应用程序的详细信息,确保仍要对其执行硬删除。

使用 Microsoft Entra PowerShell 永久删除企业应用

若要永久删除软删除的企业应用程序,请运行以下命令:

   Connect-Entra -Scopes 'Application.ReadWrite.All'
   #get the deleted service principal by filtering by the display name.
   $deletedServicePrincipal = Get-EntraDeletedServicePrincipal -Filter "DisplayName eq 'test-App1-Deleted'"

   #assign the value returned to a variable and permanently delete the service principal
   $Id = $deletedServicePrincipal.Id
   Remove-EntraDeletedDirectoryObject -Id $deletedServicePrincipal.Id

使用 Microsoft Graph PowerShell 永久删除企业应用

  1. 若要永久删除软删除的企业应用程序,请运行以下命令:

    Remove-MgDirectoryDeletedItem -DirectoryObjectId <id>
    

使用 Microsoft 图形 API 永久删除企业应用

若要永久删除软删除的企业应用程序,请在 Microsoft Graph 浏览器中运行以下查询。

DELETE https://graph.microsoft.com/v1.0/directory/deletedItems/{object-id}