当我们不需要使用某个Azure Active Directory(以下简称AAD)的时候,我们可以删除它,这个时候Azure会对当前的AAD包含的内容进行检查,

在所有的检查项目中有一个名叫“企业应用”,有很多人在删除AAD的时候都被这一项挡住了去路却不知道该怎么解决,下面我们来看一下该如何对症下药。

通常这一项的检查不通过有两种情况:

1.Azure DevOps:在点击解决连接后,你可能会看到一个名叫“Azure DevOps”的企业应用,这是在你注册Azure DevOps的时候自动注册的,而且默认情况下你无法直接通过门户删除。这个时候我们需要使用PowerShell的Azure AD组件来删除:

首先注册一个AAD管理员用户,注意不是当前操作删除的这个微软账户,你需要注册一个AAD用户,然后赋予这个用户管理员权限;

在本地打开PowerShell,注意这里需要Windows的PowerShell,不能是跨平台的PowerShell Core,使用管理员权限执行以下命令:

Install-Module -Name AzureAD

安装完成后,执行以下命令:

Remove-AzureADServicePrincipal -ObjectId [AzureDevOps ObjectId]

ObjectId可以从应用的属性里面获取,执行完毕后你应该能够看到Azure DevOps已经被删除了。

2.Managed Identity:如果在删除Azure DevOps后仍然无法删除AAD,而且你应该会注意到在企业应用这一项的检查是先变成通过后在“Azure AD Domain Service”这一项检查后又变为不通过,这个时候就是因为当前AAD中还有未删除的Managed Identity。

1.点击解决链接,切换过滤选项到“Managed Identity”,你会看到当前AAD下面未删除的系统管理的标识,理论上系统管理标识是会在资源删除的同时被删除,但是有时候系统并不会自动删除它们(多发生于订阅迁移到了另一个AAD内),这个时候你需要手动删除。

2.对于Azure WebApp类的标识,你需要在新的AAD内禁用原有标识后重新启用标识来删除原有的标识,直接删除资源并不会删除标识

3.对于SQL Server,当开启AAD验证后也会自动注册标识,而且在门户内禁用原有AAD管理员重新配置新的管理员并没有用,这个时候需要用到Azure CLI,最方便的当然是打开门户内的Cloud Shell,选择Bash后,执行以下命令:

az sql server update --assign_identity --resource-group [Your-RG-Name] --name [Your-SQLServer-Name]

这个命令会更新原有的系统分配标识,更新后原有的标识被删除。

现在你应该可以顺利通过检查删除当前AAD了,祝大家Azure旅途愉快。

解决删除Azure Active Directory的Enterprise Applications异常的更多相关文章

  1. 【Azure API 管理】解决API Management添加AAD Group时遇见的 Failed to query Azure Active Directory graph due to error 错误

    问题描述 为APIM添加AAD Group时候,等待很长很长的时间,结果添加失败.错误消息为: Write Groups ValidationError :Failed to query Azure ...

  2. 简化 Web 应用程序与 Windows Azure Active Directory、ASP.NET 和 Visual Studio 的集成

    大家好! 今天的博文深入讨论我们今天推出的开发人员工具和框架中的一些新功能.我们通过与 ASP.NET 和 Visual Studio 团队合作开发了一些重大的增强功能,让开发人员能够轻松使用 Win ...

  3. [Windows Azure] What is Windows Azure Active Directory?

    What is Windows Azure Active Directory? Windows Azure Active Directory is a service that provides id ...

  4. Azure Active Directory Connect是如何协助管理员工作的?

    TechTarget中国原创] 应用基于云的Microsoft Azure Active Directory,管理员们可以将本地Active Directory整合到Windows Server中.通 ...

  5. 使用 Azure Active Directory 管理 Azure 中的 HPC Pack 群集

    Microsoft HPC Pack 2016 支持在 Azure 中部署 HPC Pack 群集的管理员将其与 Azure Active Directory (Azure AD) 集成. 请按照本文 ...

  6. 【Azure Developer】使用 adal4j(Azure Active Directory authentication library for Java)如何来获取Token呢

    问题描述 使用中国区的Azure,在获取Token时候,参考了 adal4j的代码,在官方文档中,发现了如下的片段代码: ExecutorService service = Executors.new ...

  7. Azure Active Directory Connect密码同步问题

    这几天一直在弄O365与本地域账号的密码同步问题.由于微软即将用Azure Active Directory Connect(以下简称AADC)这个同步工具替代之前的DirSync,所以我也研究了下这 ...

  8. Windows Azure Active Directory (3) China Azure AD增加新用户

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的China Azure. 本文是对笔者之前的文档:Windows Azure Active ...

  9. Windows Azure Active Directory (4) China Azure AD Self Password Reset

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China. 在开始本章内容之前,请读者熟悉笔者之前写的文档: Windows ...

随机推荐

  1. websockets & auto close & bug & solution

    websockets & auto close & bug & solution WS 连接总是被关闭 ??? refs https://wdd.js.org/websocke ...

  2. list.add(int index, E element)和list.addAll(list1)

    List.add(int index, E element): 在列表的指定位置插入指定元素(可选操作).将当前处于该位置的元素(如果有的话)和所有后续元素向右移动(在其索引中加 1). 参数:ind ...

  3. IDEA如何快速查看类中的属性和方法?

    在idea中,当需要快速的查看一个类的所有属性和方法时,直接去代码中查看,就显得非常的麻烦,idea是有快捷键的,可显示所有的属性和方法,方法如下. 打开一个类,使用快捷键ALT+7,就可以在左侧看到 ...

  4. vmware-install.pl 如何安装?

    首先在虚拟机上安装vnware-tools工具,如图(工具为vmware workstation):  成功   但是系统屏幕大小并没有适应虚拟机,所以下边这行提示很重要. 打开左侧边栏的VMware ...

  5. Django框架-模型层3/数据传输/Ajax

    目录 一.orm查询优化 1.only与defer 2.select_related与prefatch_related 二.模型层choices参数 三.MTV与MVC模型 1.MVC 2.MTV 3 ...

  6. Vue框架:vue-cookies组件

    目录 一.vue-cookies简介 二.vue-cookies安装与配置 三.vue-cookies的使用 一.vue-cookies简介 vue-cookies组件是vue框架用来操作浏览器coo ...

  7. Git 命令将电脑上的文件上传到 Github

    1.在电脑上安装 Windows 版 Git下载地址:https://git-scm.com/downloads2.使用 Git GUI 生成 SSH Key 3.将 SSH Key 添加到 Gith ...

  8. 后端程序员之路 20、python复习

    Welcome to Python.orghttps://www.python.org/ 怎么用最短时间高效而踏实地学习 Python? - 知乎https://www.zhihu.com/quest ...

  9. 力扣496. 下一个更大元素 I

    原题 1 class Solution: 2 def nextGreaterElement(self, nums1: List[int], nums2: List[int]) -> List[i ...

  10. 前端学习 node 快速入门 系列 —— 初步认识 node

    其他章节请看: 前端学习 node 快速入门 系列 初步认识 node node 是什么 node(或者称node.js)是 javaScript(以下简称js) 运行时的一个环境.不是一门语言. 以 ...