當前位置: 首頁>>代碼示例>>C#>>正文


C# ServiceAuthorizationManager類代碼示例

本文整理匯總了C#中System.ServiceModel.ServiceAuthorizationManager的典型用法代碼示例。如果您正苦於以下問題:C# ServiceAuthorizationManager類的具體用法?C# ServiceAuthorizationManager怎麽用?C# ServiceAuthorizationManager使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


ServiceAuthorizationManager類屬於System.ServiceModel命名空間,在下文中一共展示了ServiceAuthorizationManager類的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: CheckAccessCore

public class MyServiceAuthorizationManager : ServiceAuthorizationManager
{
  protected override bool CheckAccessCore(OperationContext operationContext)
  {                
    // Extract the action URI from the OperationContext. Match this against the claims
    // in the AuthorizationContext.
    string action = operationContext.RequestContext.RequestMessage.Headers.Action;
    
    // Iterate through the various claim sets in the AuthorizationContext.
    foreach(ClaimSet cs in operationContext.ServiceSecurityContext.AuthorizationContext.ClaimSets)
    {
      // Examine only those claim sets issued by System.
      if (cs.Issuer == ClaimSet.System)
      {
        // Iterate through claims of type "http://www.contoso.com/claims/allowedoperation".
          foreach (Claim c in cs.FindClaims("http://www.contoso.com/claims/allowedoperation", Rights.PossessProperty))
        {
          // If the Claim resource matches the action URI then return true to allow access.
          if (action == c.Resource.ToString())
            return true;
        }
      }
    }
    
    // If this point is reached, return false to deny access.
    return false;                 
  }
}
開發者ID:.NET開發者,項目名稱:System.ServiceModel,代碼行數:28,代碼來源:ServiceAuthorizationManager


注:本文中的System.ServiceModel.ServiceAuthorizationManager類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。