【Azure Entra ID】使用PowerShell脚本导出Entra ID中指定应用下的所有用户信息

news/2024/10/9 21:51:48/文章来源:https://www.cnblogs.com/lulight/p/18455229

问题描述

在Azure Entra ID中,需要导出一个Application 下的用户信息, 包含User的创建时间。

 

问题解答

可以使用PowerShell 脚本来实现, 只需要执行如下脚本:

Connect-AzureAD -AzureEnvironmentName AzureChinaCloud$users = Get-AzureADServiceAppRoleAssignment -ObjectId <your application object id> -all $ture$result = foreach($user in $users){
Get-AzureADUser -ObjectId $user.PrincipalId | Select-Object -Property DisplayName, UserPrincipalName, AccountEnabled, {$_.ExtensionProperty.createdDateTime}, {$_.ExtensionProperty.employeeId}
}$result | export-Csv "yourusersinfo.csv"

说明:

  • 使用 Connect-AzureAD 登录到Azure China Cloud环境,执行后会让你输入Azure用户名和密码
  • 使用 Get-AzureADServiceAppRoleAssignment 获取服务主体应用程序的角色分配,包含User 和 Group 信息。
  • 使用 Get-AzureADUser 从 Microsoft Entra ID 获取用户的信息信息,包含 DisplayName, UserPrincipalName, AccountEnabled,createdDateTime 和 employeeId
  • 如果返回的结果中存在多重对象关系,可以使用 $_.{第一层属性名}.{第二层属性名} 来获取值。如:{$_.ExtensionProperty.createdDateTime}

如果在执行 Connect-AzureAD 时提醒,此指令不识别,表示当前环境中没有安装 Azure AD 模块,可以使用如下命令安装:

if ($null -eq (Get-Module -ListAvailable -Name AzureAD)) {Write-Host "Installing Azure AD module" -ForegroundColor CyanInstall-Module AzureAD -Repository PSGallery -AllowClobber -Force
}

 

执行PowerShell脚本成功后,生产的CSV文件打开,即可以查看应用下的用户信息:

参考资料

Get-AzureADServiceAppRoleAssignment: https://learn.microsoft.com/zh-cn/powershell/module/azuread/get-azureadserviceapproleassignment?view=azureadps-2.0-preview

Get-AzureADUser: https://learn.microsoft.com/zh-cn/powershell/module/azuread/get-azureaduser?view=azureadps-2.0

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/810789.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

中国移动宽带 IPv6 连接到公网,家庭宽带设置服务器(2024年10月)

摘要: 1、中国移动的宽带,已经支持 IPv6,需要宽带光猫上做好设置。 2、需要从 中国移动 的服务器上获取公网 IPv6 地址。操作: 1、确保宽带WAN连接的前缀获取方式:Prefix Delegation 网关的默认登录用户名(user)、密码,在设备的背面有写着。 如果不是,就联系客服,询问…

实验1 现代C++基础编程

任务1: 源代码task1.cpp1 #include <iostream>2 #include <string>3 #include <vector>4 #include <algorithm>5 6 using namespace std;7 8 // 声明9 // 模板函数声明 10 template<typename T> 11 void output(const T &c); 12 13 // 普通…

深度学习实战人脸表情识别【源码+模型+PyQt5界面】

本研究旨在实现一个基于深度学习的人脸表情识别系统,以准确地识别七种常见的人脸表情:惊讶、恐惧、厌恶、开心、悲伤、愤怒和正常。系统流程包括人脸定位和表情识别两个主要步骤。在人脸定位阶段,采用深度学习算法,通过训练一个卷积神经网络(CNN),实现对图像中人脸位置的…

20222303 2024-2025-1 《网络与系统攻防技术》实验一实验报告

1.实验内容 在本周的学习中,重新回顾了栈和堆的概念,还学习了安全漏洞的相关概念,然后聚焦在其中的缓冲区溢出漏洞上,明白了缓冲区溢出的定义及发生的原理,并了解了缓冲区溢出发展历史上的一些经典攻击案例,收获颇丰。 在本次的实验中,我掌握了反汇编与十六进制编程器相…

考核--复习ma

Markdown语法学习 使用#号,后接空格定义标题,几级标题就是几个#。 这是二级标题 这是三级标题 这是四级标题 段落之间使用一个空行分开,不需要段首缩进。 中文字符与英文、数字字符之间使用1个空格间隔,中文标点与英文、数字字符之间不需要space,就像刚刚那样。遇到英文名…

基于深度学习的多焦点图像融合系统【数据集+深度学习模型+源码+PyQt5界面】

基于无监督深度特征提取的多焦点图像融合方法。但只有那些位于景深内的物体才会显得清晰,而超出景深范围的物体则可能看起来较为模糊。本文采用无监督学习策略,用编码器-解码器网络来提取输入图像的特征,并通过基于梯度的方法对图像进行去模糊,从这些深度特征中分析清晰度的…

redis介绍与安装

Redis 简介Redis是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。 Redis与其他 key- value 缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。 Redis不仅仅支持简单的key-value类型的数据,…

VSCode配置Python(记录)

python安装 官网在线安装或者下载离线包(勾选添加path环境变量)python指定版本运行 把对应版本的python.exe复制一下,粘贴改名加个对应版本,因为添加了环境变量的缘故所以可以直接在命令窗中运行运行测试对应项目创建虚拟环境(包管理) tips:当然了,也可以用anaconda管理…

实验2_C语言分支与循环基础应用编程

实验一#include <stdio.h> #include <stdlib.h> #include <time.h> #define N 5 #define N1 397 #define N2 476 #define N3 21 int main() {int cnt;int random_major, random_no;srand(time(NULL));cnt = 0;while(cnt < N) {random_major = rand() % 2;…

The Missing Semester of Your CS Education

from pixiv前言 The missing semester of your CS education计算机设计的初衷就是任务自动化,然而学生们却常常陷在大量的重复任务中,或者无法完全发挥出诸如 版本控制、文本编辑器等工具的强大作用。效率低下和浪费时间还是其次,更糟糕的是,这还可能导致数据丢失或 无法完…

简明逻辑回归算法

逻辑回归是一种用于分类问题的统计方法,尽管名称中包含“回归”,但它主要用于二分类任务。为了更好地理解逻辑回归,我们可以通过一个通俗易懂的例子来解释。 例子:判断是否通过考试 假设你是一名老师,想要根据学生的学习时间来判断他们是否能通过一次考试。我们将“通过考…

《机器学习初步》笔记

第一章 绪论 1.1 引言 机器学习的经典定义:利用经验(数据)改善系统自身的性能 经典的机器学习过程:机器学习最重要的理论模型:PAC(概览近似正确)1.2 基本术语 数据集:一组记录的集合 学习/训练:通过执行某个学习算法,得到模型,学的的模型对应数据的某种潜在规律 示例…