2017-04-21 48 views
1

我正在嘗試設置一個Flow與Sharepoint在線度假日曆一起使用。MS Flow - 「Get-manager」在我的批准流程中不起作用流

我想知道你們中的任何一個人是否可以像MS Flow開發那樣向我提示正確的方向。論壇不一致,有時我需要等待一段時間才能得到答案。

所以我的處理是這樣的 - 我有一個流程設置,並通過它的邏輯它應該工作正常,但有一個步驟稱爲「獲取經理」,它無法從Azure AD經理字段獲取sid這個字段在我的Azure AD中不是空的)。

我的流程是這樣的: see this screenshot

我在PowerShell中嘗試這個命令安裝最新的Azure的模塊:

GET-AzureRmADUser -UserPrincipalName

,並沒有返回的電子郵件我嘗試過的任何用戶。所以我懷疑可能有些東西缺少Azure AD設置,但我不完全確定。

+0

你的獲得經理的任務是做什麼的? –

+0

它檢索在Sharepoint Online度假日曆中創建項目的用戶的經理電子郵件。然後,流程進行,否則,如果沒有提供電子郵件,則停止。 – Joe111

回答

0

如果您想使用powershell獲取azure廣告用戶的管理員信息,則可以直接調用Graph API,因爲PowerShell基本上封裝了API,只是在簡化的界面中將它們呈現給您。請參考以下文章,如何從Powershell的調用Azure的活動目錄圖形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/[email protected]/$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/[email protected]//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    : [email protected] 
userType      : Member 

如果我誤解了你的要求,請隨時告訴我。

+0

現在我只是在我運行這個後得到一個空行,雖然SID在Azure AD中。我錯過了什麼嗎? – Joe111

+0

您是否正確設置了clientId && tenant與上面的代碼?使用像fiddler這樣的工具來檢查是否有錯誤發生。 –