-1

我無法從PowerShell分配TokenLifetimePolicy Azure AD應用程序策略。我有一個錯誤BadRequestMessage: Open navigation properties are not supported on OpenTypes.Property name: 'policiesAzure Active Directory中的可配置令牌生命週期

我試圖從Configurable token lifetimes in Azure Active Directory

下面

見截圖,在AzureAD cmdlet的Add-AzureADApplicationPolicy任何有用的鏈接和解決方案,歡迎

enter image description here

+1

爲什麼截圖如果文本會更好的可讀性和可能節省空間?另外該命令被切斷。因爲這是你的命令可能不正確。 – Seth

+0

我會仔細檢查您在命令中使用的對象ID是否正確。對於應用程序,請轉到[Azure門戶](https://portal.azure.com)以及可以使用「Get-AzureADPolicy」的策略。 –

+0

@Seth你的評論如何回答了這個問題。以爲我們只在這裏發佈問題或答案。一張圖片勝過千言萬語,命令只接受兩個參數,'Id'和'RefObjectId',它們都已通過 –

回答

0

我使用New-AzureADPolicy cmdlet並設置了-IsOrganizationDefault $true而不是$false。效果需要一段時間才能看到它。所以請等待大約30分鐘到一個小時(我不知道準確的時間)。之後,您的新政策將被創建和應用。還要記住,這是PowerShell,因此cmdlet中沒有空格。

例子:

New-AzureADPolicy -Definition @('{"TokenLifetimePolicy":{"Version":1,"AccessTokenLifetime":"02:00:00","MaxInactiveTime":"02:00:00","MaxAgeSessionSingleFactor":"02:00:00"}}') -DisplayName "PolicyScenario" -IsOrganizationDefault $true -Type "TokenLifetimePolicy" 

多層線路版:

New-AzureADPolicy -Definition @(
    ' 
     { 
      "TokenLifetimePolicy": 
       { 
        "Version": 1, 
        "AccessTokenLifetime": "02:00:00", 
        "MaxInactiveTime": "02:00:00", 
        "MaxAgeSessionSingleFactor": "02:00:00" 
       } 
     } 
    ' 
    ) -DisplayName "PolicyScenario" -IsOrganizationDefault $true -Type "TokenLifetimePolicy" 

微軟可能會解決問題與IsOrganizationDefault $true。在這個問題上閱讀更多:Azure AD Configurable Token Lifetimes not being Applied

0

實現令牌到期時間B2C門戶是否創建了應用程序?

假設答案是肯定的,則預期此行爲: 微軟有2個授權終點V1和V2。

B2C門戶創建V2應用程序。從powershell令牌生存期設置可能只適用於V1應用程序。

b2c刀片上有一些設置可以更改此設置。

另一種選擇是從azure活動目錄刀片(與b2c刀片相對)創建應用程序。然後你可以使用PowerShell設置令牌生存時間。

0

我爲我的客戶測試了這一點。由於沒有使用最新版本的PowerShell,我偶爾會遇到類似問題。

get-module 

最新版本2.0.0.114在時刻AzureADPreview(V2) Instructions to download here

有與-IsOrganizationDefault $真正的問題,因爲賽斯指出。

我發現的另一個問題是在您的系統上安裝了多個版本的PowerShell,並加載了錯誤的版本,但沒有更新的版本。上週五我打了這個 - 我必須擦拭一切並重新安裝 - 然後修復它。

此外 -

之間有一個區別:

Add-AzureADApplicationPolicy 

Add-AzureADServicePrincipalPolicy 

一個是一個應用程序對象,而另一個爲ServicePrincipal。如果您正在將其應用於基於SAML的應用程序,則應將其應用於ServicePrincpal。

注意:應用程序對象和servicePrincipal對象有不同的ObjectID。不要讓這些困惑。對於一個實驗,對你的應用程序運行在兩個CMDS:

Get-AzureADServicePrincipal -SearchString <name of app> 
Get-AzureADApplication -SearchString <name of app> 

如果你抓錯了對象ID - 不走,當你去申請政策

這些政策的順序是:ServicePrincipal - >應用 - >租戶(組織)