[玩转系统] Microsoft Graph PowerShell 管理员同意
作者:精品下载站 日期:2024-12-14 13:36:35 浏览:18 分类:玩电脑
Microsoft Graph PowerShell 管理员同意
管理员同意的概念可能有点令人困惑,微软官方文档对它的解释也很糟糕。
本文将回答以下问题:
- 管理员同意书的目的是什么?
- 管理员同意如何运作?
- 您如何查看当前的管理员同意设置?
- 如何配置管理员同意?
我们将使用 Easy365Manager 作为用例来回答这些问题。
Easy365Manager 是一个适用于 Active Directory 用户和计算机的插件(版本 1.5 及更高版本),它使用 Microsoft Graph PowerShell 直接从 AD 启用 Office 365 管理。
管理员同意的目的是什么
管理员同意的目的是严格控制 Azure 应用程序(例如 Microsoft Graph PowerShell 或其他 Microsoft 或第三方应用程序)可以执行的操作。
通过委派访问权限,Microsoft Graph PowerShell 应用程序可以在安全上下文中运行 PowerShell 命令。这有两个主要优点:
- 您只能执行您有权执行的操作
- 所采取的任何操作都会使用您的 ID 记录在统一审核日志中
但是,让第三方(或 Microsoft)应用程序在您的安全上下文中运行命令并不是一件容易的事 - 这就是为什么有一个额外的控制层:同意。
同意就像一个白名单,允许身份(例如[email protected])在上行使权限(例如User.ReadWrite.All)资源(例如 Microsoft Graph)。
同意并不授予任何权限。它只允许您使用现有的权限。
同意可以是授予单个用户的用户同意,也可以是管理员授予所有用户的管理员同意。
管理员同意如何运作?
每当你使用 Azure 应用程序(例如 Microsoft Graph PowerShell)时,都需要有人同意该应用程序使用你的权限代表你行事。
该同意可以作为用户同意(您自己同意,假设您有权这样做),也可以作为管理员同意(管理员代表您同意)。
以 Microsoft Graph PowerShell 为例,其完成方式如下:
您可能会注意到这里有一个大问题:
如果管理员已经做出用户同意,则她将不再看到授予管理员同意的选项。
为什么这是个问题?
假设管理员已授予自己管理 Office 365 用户的用户同意书。后来她决定实施管理员同意,让她的全体员工运行一些 PowerShell 脚本来修改用户属性。
由于用户同意阻止了她授予管理员同意的途径 - 并且由于 Azure 门户不包含用于同意管理的 GUI - 她现在不得不使用一些非常讨厌的 PowerShell 来解决这个问题!
继续阅读有关此的更多信息...
您如何查看管理员同意设置?
您当前的应用程序同意设置可通过 Azure 门户和 PowerShell 查看
要使用 Azure 门户查看同意设置,请转到企业应用程序。
然后选择 Microsoft Graph PowerShell 并单击“安全”部分中的“权限”。
(如果您找不到 Microsoft Graph PowerShell,请阅读本文。)
管理员同意将向您显示管理员同意(管理员向所有用户授予的同意)。
用户同意将向您显示授予个人用户的个人同意。
权限列表是只读列表,无法进行修改!
使用 PowerShell 查看当前应用程序同意设置有点乏味:
您需要识别 Microsoft Graph PowerShell 的服务主体 ID,并且需要识别 Microsoft Graph 的服务主体 ID(因为理论上可以将权限分配给其他资源)。
您还需要知道提取信息需要哪些权限,以便您可以连接到适当的范围(阅读本文以获取更多信息。)
这是一个示例脚本,用于获取 Microsoft Graph PowerShell 应用程序的同意设置(在 Microsoft Graph 资源上分配):
Connect-MgGraph -Scopes "DelegatedPermissionGrant.ReadWrite.All Directory.AccessAsUser.All Directory.Read.All"
$MSGraphPS_AppId = "14d82eec-204b-4c2f-b7e8-296a70dab67e"
$MSGraph_AppId = "00000003-0000-0000-c000-000000000000"
$MicrosoftPowerShellGraph_Id = (Get-MgServicePrincipal -All | Where-Object { $_.AppId -eq $MSGraphPS_AppId}).Id
$Microsoftgraph_Id = (Get-MgServicePrincipal -All | Where-Object { $_.AppId -eq $MSGraph_AppId}).Id
Get-MgOauth2PermissionGrant -All | Where-Object { $_.clientId -eq $MicrosoftPowerShellGraph_Id -and $_.ResourceId -eq $Microsoftgraph_Id} | ft PrincipalId,Scope
该脚本的输出将类似于以下内容:
PrincipalId Scope
----------- -----
User.ReadWrite.All Group.ReadWrite.All Domain.Read.All Directory.ReadWrite.All offline_access
10f136c2-55f0-41c4-9c96-6bab410c7c54 DelegatedPermissionGrant.ReadWrite.All Directory.AccessAsUser.All Directory.Read.All openid profile offline_access Directory.ReadWrite.All User.Read email
管理员同意列出时带有空的PrincipalId(因为它们适用于所有人)。
用户同意与标识用户的PrincipalId 一起列出。
如何配置管理员同意?
如之前的流程图所示,当您之前未向自己授予用户同意时,很容易授予管理员同意。
只需连接到具有所需范围的 Microsoft Graph PowerShell,例如:
Connect-MgGraph -Scopes "User.ReadWrite.All,Group.ReadWrite.All"
然后选择“代表您的组织同意”:
但是,如果您已经获得用户同意,则需要使用 PowerShell 配置管理员同意。
这是一个非常麻烦的过程,因为多值管理员同意被写入单值属性。因此,当您应用新的管理员同意书时,任何现有的管理员同意书都会从应用程序中删除。
所以你需要考虑以下几点:
- 确定当前请求中未包含但需要维护的范围
确定已配置了比您正在应用的权限更高的权限的范围。
- 例如,如果您正在应用“User.Read.All”,但已经存在“User.ReadWrite.All”,那么您可能希望保留它。
管理企业应用程序同意的糟糕界面将使许多管理员陷入困境......这根本没有意义:
随着将 Microsoft Graph PowerShell 作为企业应用程序(MSOnline 和 AzureAD 脚本将在 2023 年初被淘汰),所有级别的管理员(而不仅仅是半经验丰富的程序员)都应该可以访问基本脚本权限的管理。
用于管理管理员同意的 PowerShell 脚本
Easy365Manager 版本 1.5 及更高版本基于 Microsoft Graph PowerShell SDK 构建。
为了支持 Office 365 管理委派,我们创建了一个 PowerShell 脚本来设置所需的管理员同意,而无需修改任何现有配置。
只要您注明源页面,请随意修改脚本并发布任何更改。
当然,如果您希望尽可能高效地工作,请考虑测试 Easy365Manager 的 30 天试用版!
- 下载和安装只需几分钟。
- 不需要改变基础设施。
- 与 AD 用户和计算机的集成确保了超级直观的界面。
我们的客户通常可以跳过繁琐的 PowerShell 来执行日历委托等简单任务,从而每月节省数十个小时:
在此下载 30 天试用版。到一天结束时,您的工作效率将会更高!
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[风口福利] 短视频红利新风口!炬焰创作者平台重磅激励来袭
[韩剧] 宝物岛/宝藏岛/金银岛(2025)【全16集】【朴炯植/悬疑】
[电影] 愤怒的牦牛 (2025) 国语中字 4k
[短剧合集] 2025年05月30日 精选+付费短剧推荐56部
[软件合集] 25年5月30日 精选软件26个
[软件合集] 25年5月29日 精选软件18个
[短剧合集] 2025年05月28日 精选+付费短剧推荐38部
[软件合集] 25年5月28日 精选软件37个
[软件合集] 25年5月27日 精选软件26个
[电影] 毒劫 Havoc(2025)【NF1080P超清】【汤姆·哈迪主演】
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[办公模版] office模板合集:包含word、Excel、PowerPoint、Access四类共计2000多个模板
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[音乐] 华语流行伤感情经典歌无损音乐合集(700多首)
[影视] 内地绝版高清录像带 [mpg]
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag