簡體   English   中英

Windows身份驗證,自定義權限,WCF,Active Directory

[英]Windows Authentication, Custom permissions, WCF, Active Directory

我有一個客戶端/服務器項目,與WCF通信(目前為命名管道,但是可以更改-但我不能使用IIS)。 該項目與Active Directory集成在一起。

該程序旨在通過充當代理來為用戶提供通常沒有權限的權限。 用戶使用客戶端來“請求”要執行的任務。 然后,只要滿足某些條件,服務器就會為客戶端執行任務。

這些條件之一是允許用戶請求此任務。 我需要一種WCF服務的方法來保證用戶的身份,將其與數據庫進行比較,然后執行任務或拒絕任務。

我將如何使用Windows身份驗證來100%保證用戶是他們所說的用戶?

提前致謝,

麥克風

命名管道唯一允許的身份驗證類型是Windows身份驗證(向下滾動到netNamedPipeBinding)。 您可以聲明性地進行模擬 ,例如...

[OperationBehavior(Impersonation = ImpersonationOption.Required)]
public string GetData(int value)
{
  return string.Format("Hi, {0}, you have entered: {1}",
                           WindowsIdentity.GetCurrent().Name, value);
}

擁有身份后,您就知道Windows已正確驗證了該用戶的身份,並且可以對照數據庫中的身份檢查該身份。

您可以創建一個自定義ServiceAuthorizationManager並在CheckAccessCore中針對您的用戶db實施驗證。

請參閱如何:為服務創建自定義授權管理器

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM