2015-10-05 78 views
1

我正在使用IdentityServer3進行身份驗證。我已將一個AuthorizeAttribute添加到我的HomeController。當授權失敗時,我希望它重定向到IdentityServer,特別是調用我的AccountController的SignIn操作 - 沒有看到任何其他方式來執行此操作。我簽到方法是這樣的:使用IdentityServer3自動重定向到登錄頁面

  var state = Guid.NewGuid().ToString("N"); 
      var nonce = Guid.NewGuid().ToString("N"); 

      var url = Settings.AuthorizeEndpoint + 
       "?client_id=" + Settings.ClientId + 
       "&response_type=id_token" + 
       "&scope=openid email public" + 
       "&redirect_uri=" + Settings.RedirectUri + 
       "&response_mode=form_post" + 
       "&state=" + state + 
       "&nonce=" + nonce; 

      SetTempCookie(state, nonce); 
      return Redirect(url); 

比寫我自己的自定義授權屬性,還有一個更簡單的方法來做到這一點,其他的?

+0

設置是否代表身份服務器的設置?我試圖實現登錄,並沒有很多運氣。 – cloudstrifebro

回答

1

如果你手動做 - 這是它的工作方式。

Katana OpenID Connect中間件可以簡化這一點 - 如果你可以使用這個庫。

+0

你能發佈這個鏈接嗎?謝謝。 – cloudstrifebro