powershell - MS Flow - "Get-manager"在我的批准流程中不起作用

标签 powershell azure azure-active-directory

我正在尝试设置一个与 Sharepoint 在线假期日历配合使用的 Flow。

我想知道你们中是否有人可以提示我作为 MS Flow 开发人员的正确方向。论坛的活跃程度不一致,有时我必须等待很长时间才能得到答案。

所以我的协议(protocol)是这样的 - 我有一个流程设置,按照其中的逻辑,它应该可以正常工作,但是有一个名为“获取管理器”的步骤,它无法从 Azure AD 管理器字段获取 sid(此我的 Azure AD 中的字段不为空)。

我的流程如下: see this screenshot

我在安装了最新 Azure 模块的 Powershell 中尝试了此命令:

获取 AzureRmADUser -UserPrincipalName

并且它没有返回我尝试过的任何用户的电子邮件。因此,我怀疑 Azure AD 设置可能缺少某些内容,但我不确定。

最佳答案

如果您想使用 powershell 获取 azure ad 用户的管理员信息,您可以直接调用 Graph API,因为 PowerShell 本质上包装了 API,只是以简化的界面将它们呈现给您。有关如何从Powershell调用Azure Active Directory Graph Api,请参阅以下文章:

https://blogs.technet.microsoft.com/paulomarques/2016/03/21/working-with-azure-active-directory-graph-api-from-powershell/

并使用Get a user's manager API :

GET https://graph.windows.net/myorganization/users/XXXXXX/$links/manager?api-version=1.6

这是结果:

PS C:\Users\v-nany>  $tenant = "testbasic1.onmicrosoft.com"
PS C:\Users\v-nany>  $token = GetAuthToken -TenantName $tenant
PS C:\Users\v-nany> $authHeader = @{
>>    'Content-Type'='application\json'
>>    'Authorization'=$token.CreateAuthorizationHeader()
>> }
PS C:\Users\v-nany> $uri = "https://graph.windows.net/myorganization/users/<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="b5c1d0c6c1dbd4dbccc0f5c1d0c6c1d7d4c6dcd6849bdadbd8dcd6c7dac6dad3c19bd6dad8" rel="noreferrer noopener nofollow">[email protected]</a>/$links/m
anager?api-version=1.6"
PS C:\Users\v-nany> $ManagerInfo = Invoke-RestMethod -Uri $uri –Headers $authHeader –Method Get –Verbose
VERBOSE: GET
https://graph.windows.net/myorganization/users/<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="36425345425857584f4376425345425457455f55071859585b5f554459455950421855595b" rel="noreferrer noopener nofollow">[email protected]</a>//manager?api-version=1.6 with
0-byte payload
VERBOSE: received 1240-byte response of content type
application/json;odata=minimalmetadata;streaming=true;charset=utf-8
PS C:\Users\v-nany> $ManagerInfo


odata.metadata                 : https://graph.windows.net/myorganization/$metadata#directoryObjects/@Element
odata.type                     : Microsoft.DirectoryServices.User
objectType                     : User
objectId                       : 9e6efc2c-69b7-4da2-8ef5-9c8624e76a52
deletionTimestamp              :
accountEnabled                 : True
signInNames                    : {}
assignedLicenses               : {}
assignedPlans                  : {}
city                           :
companyName                    :
country                        :
creationType                   :
department                     :
dirSyncEnabled                 :
displayName                    : NANYU
facsimileTelephoneNumber       :
givenName                      :
immutableId                    :
isCompromised                  :
jobTitle                       :
lastDirSyncTime                :
mail                           :
mailNickname                   : testnanyu1222
mobile                         :
onPremisesSecurityIdentifier   :
otherMails                     : {}
passwordPolicies               :
passwordProfile                : @{password=; forceChangePasswordNextLogin=True; enforceChangePasswordPolicy=False}
physicalDeliveryOfficeName     :
postalCode                     :
preferredLanguage              :
provisionedPlans               : {}
provisioningErrors             : {}
proxyAddresses                 : {}
refreshTokensValidFromDateTime : 2017-04-03T07:03:00Z
showInAddressList              :
sipProxyAddress                :
state                          :
streetAddress                  :
surname                        :
telephoneNumber                :
usageLocation                  :
userPrincipalName              : <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="15617066617b747b6c602427272755617066617774667c76243b7a7b787c76677a667a73613b767a78" rel="noreferrer noopener nofollow">[email protected]</a>
userType                       : Member

如果我误解了您的需求,请随时告诉我。

关于powershell - MS Flow - "Get-manager"在我的批准流程中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43547878/

相关文章:

PowerShell设置高级NTFS权限

c# - 确定控制台应用程序是从命令行还是从 Powershell 运行

powershell - 压缩存档错误: Cannot access the file because it is being used by another process

Azure 应用程序网关无法上传 pfx 证书

azure - 如何将自定义属性传递到 Azure AD 应用程序中的重定向 URL?

azure - 如何在 Azure Cloud shell 中运行 PowerBI REST API

sql - cosmos db查询与空数组的自连接

azure - 动态Azure服务应用程序是否支持交换插槽

Azure 经典与新门户 : how do I assign a user to an API in the NEW portal?

azure - 如何通过代码创建Azure AD租户