Connect-AzureAD
Connect-AzureAD -Credential (Get-Credential)
# 这里Credential甚至可以保存在本地,但不推荐
Connect-AzureAD -TenantId 91dde955-43a9-40a9-a406-694cffb04f28
Connect-AzureAD -AzureEnvironmentName AzureChinaCloud # 连接到中国版
目录读取者
或 目录写入者
这两个角色Connect-AzureAD `
-CertificateThumbprint A639157B5BBC31DC007CC014B077F8D70A082122 `
-TenantId 3a6831ab-6304-4c72-8d08-3afe544555dd `
-ApplicationId 1b87e032-fd57-4f67-b2f3-d9ff5e1c583f
# 需要在管理员模式下运行此命令。关于如何创建证书并且安装到AAD,请参考第六讲.
Get-AzureADUser # 获取所有用户
New-AzureADUser # 创建新用户
Set-AzureADUser # 修改用户
Remove-AzureADUser # 删除用户
Get-AzureADGroup # 获取所有组
New-AzureADGroup # 创建组
Add-AzureADGroupMember # 添加成员
Remove-AzureADGroupMember # 删除成员
Set-AzureADGroup # 修改组
Remove-AzureADGroup # 删除组
# 获取所有用户授权过哪些应用程序,分别是什么权限, 必要时可以使用 Remove-AzureADOAuth2PermissionGrant 进行删除
Get-AzureADOAuth2PermissionGrant `
| Where-Object {$_.PrincipalId -ne $null} `
| Select-Object `
@{Name="Client";Expression={(Get-AzureADObjectByObjectId -ObjectIds $_.ClientId).DisplayName}},`
@{Name="Resource";Expression={(Get-AzureADObjectByObjectId -ObjectIds $_.ResourceId).DisplayName}},`
@{Name="User";Expression={(Get-AzureADObjectByObjectId -ObjectIds $_.PrincipalId).DisplayName}},Scope
用Azure平台的 “自动化Automation
”定期或按需执行脚本。
你可以通过邮件 ares@xizhang.com 与我取得联系,也可以关注 code365xyz
这个微信公众号给我留言。
点击这里 或扫码可以访问配套视频教程。
陈希章 2022年2月 于上海
https://docs.microsoft.com/zh-cn/powershell/module/azuread
如果要用应用程序使用这个模块,则需要把对应的企业应用程序(ServicePricipal添加到Directory Read组),可能是因为这个模块不使用标准的 Graph权限,所以通过Graph的授权,即便管理员同意了也是无效的。 不是直接添加应用程序,而是把对应的企业应用程序(其实就是所谓的ServicePrincipal)添加到目录读取者的组。 Add-AzureADDirectoryRoleMember -ObjectId (Get-AzureADDirectoryRole | where-object {$_.DisplayName -eq "Directory Readers"}).Objectid -RefObjectId bf205446-c25d-426c-8a43-d7c7a02d8c23