使用PowerShell恢复Azure AD已删应用报资源未找到错误如何解决
报错原因与操作问题说明
直接无参数运行Restore-AzureADDeletedApplication触发「Resource not found」是必然结果,核心问题是该命令没有默认操作对象,必须指定待恢复目标的唯一标识,常见触发该报错的场景如下:
- 未传入必填的
ObjectId参数:Restore-AzureADDeletedApplication不会自动枚举已删除应用执行恢复,缺少目标对象ID时,服务端无法定位要操作的资源,直接返回资源不存在错误。 - 待恢复应用不在软删除可恢复列表中:Azure AD应用删除后仅保留30天软删除窗口期,超期后会被永久物理删除,无法恢复;若误删的是企业应用(服务主体)而非应用注册对象,也不会出现在已删除应用的查询结果集中。
- 身份上下文不匹配:登录账号不属于目标租户、账号权限不足(未持有全局管理员/应用管理员角色)、跨租户操作时,也会返回该通用权限类报错。
正确恢复操作步骤
- 先完成Azure AD模块身份认证,执行命令后用对应租户的管理员账号完成登录:
Connect-AzureAD - 查询租户下所有软删除状态的应用,确认目标应用存在。可直接拉取全量列表,也可按应用显示名过滤缩小范围,例如查询名为
MyTestApp的已删除应用:# 全量查询已删除应用 Get-AzureADDeletedApplication # 按名称过滤查询 Get-AzureADDeletedApplication -Filter "DisplayName eq 'MyTestApp'" - 从返回结果中复制目标应用对应的
ObjectId字段值,传入恢复命令执行操作:Restore-AzureADDeletedApplication -ObjectId <替换为你复制的目标应用ObjectId>
补充排查点
如果传入ObjectId后仍报相同错误,逐一核对以下项:
- 确认传入的ID是已删除应用注册的ObjectId,而非现存应用、已删除服务主体、其他目录对象的ID
- 确认应用删除时间未超过30天软删除保留期,超期删除的对象无恢复渠道
- 确认当前登录账号在应用所属租户内,且拥有对应应用的管理权限
内容的提问来源于stack exchange,提问作者Saimk_556
相关产品推荐
相关产品推荐

