使用IdentityServer3 作為授權伺服器,如果沒有設置證書,而且client又沒有設置AccessTokenType = AccessTokenType.Reference,則獲取token的時候伺服器會報錯,設置證書即可,或者設置AccessTokenType = AccessToken ...
使用IdentityServer3 作為授權伺服器,如果沒有設置證書,而且client又沒有設置AccessTokenType = AccessTokenType.Reference,則獲取token的時候伺服器會報錯,設置證書即可,或者設置AccessTokenType = AccessTokenType.Reference。
使用IdentityServer4作為授權伺服器,而又想使用IdentityServer3的 .net framework 的程式訪問授權伺服器,必須要安裝Microsoft.Owin.Host.SystemWeb,安裝了之後就可以正常驗證成功了,否則驗證的時候會401.
https://github.com/IdentityServer/CrossVersionIntegrationTests 這裡是官方的測試程式,要求所有的程式都自寄宿運行。然後每個運行的都正常,但是當使用Identityserver4做授權伺服器,然後創建個使用IdentityServer3的.net framework程式獲取token的時候,token總是提示401。因為這些程式一般都是iis運行,最開始我以為必須要自寄宿才能訪問了,所以添加了owin一套,然後果然授權成功了。後來我又把這一堆刪除了,iis啟動,結果還是能授權成功,最後發現不是必須自寄宿,而是.net framework必須要安裝Microsoft.Owin.Host.SystemWeb,不清楚這裡是不是他們的BUG。