2016-12-01 68 views
0

我已經閱讀了關於假冒的問題,並且從目前我能找到的問題都可以實現。我不確定是否可以使用它來完成以下任務。Identityserver3 - 用戶假冒

用戶沒有執行特定操作的權限,但是如果主管允許他訪問,則可以完成此操作。

授予將僅適用於該操作/請求。

這是可以使用模擬,或者有更好的方法呢?

在此先感謝。

回答

2

你可以做什麼的快速大腦轉儲:你將不得不在自己的IdentityServer用戶服務中實現它。一種方法是在客戶端的acr_values中傳遞一個自定義參數,其中包含您要模擬的用戶的ID(您還必須傳遞prompt = login以強制請求轉到登錄工作流程並因此轉到用戶服務) 。在PreAuthenticate的用戶服務實現中,您可以檢查用戶是否已通過身份驗證,是否存在自定義acr_values,並且允許用戶模擬請求的用戶。然後,您將使用新用戶的身份爲上下文分配AuthenticateResult。這會縮短登錄過程並返回到授權端點,然後返回到您的客戶端應用程序。