我正在尝试设置一个与 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,请参阅以下文章:
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/