ServiceSecurityAuditBehavior.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Description / ServiceSecurityAuditBehavior.cs / 1 / ServiceSecurityAuditBehavior.cs

                            //------------------------------------------------------------------------------ 
// Copyright (c) Microsoft Corporation.  All rights reserved.
//-----------------------------------------------------------------------------
namespace System.ServiceModel.Description
{ 
    using System;
    using System.ServiceModel.Channels; 
    using System.ServiceModel.Dispatcher; 
    using System.ServiceModel;
    using System.Runtime.Serialization; 
    using System.ServiceModel.Security;

    using System.Web.Security;
    using System.Collections.ObjectModel; 
    using System.Collections.Generic;
    using System.IdentityModel.Claims; 
    using System.IdentityModel.Policy; 
    using System.Runtime.CompilerServices;
 
    public sealed class ServiceSecurityAuditBehavior : IServiceBehavior
    {
        internal const AuditLogLocation defaultAuditLogLocation = AuditLogLocation.Default;
        internal const bool defaultSuppressAuditFailure = true; 
        internal const AuditLevel defaultServiceAuthorizationAuditLevel = AuditLevel.None;
        internal const AuditLevel defaultMessageAuthenticationAuditLevel = AuditLevel.None; 
 
        AuditLogLocation auditLogLocation;
        bool suppressAuditFailure; 
        AuditLevel serviceAuthorizationAuditLevel;
        AuditLevel messageAuthenticationAuditLevel;

        public ServiceSecurityAuditBehavior() 
        {
            this.auditLogLocation = ServiceSecurityAuditBehavior.defaultAuditLogLocation; 
            this.suppressAuditFailure = ServiceSecurityAuditBehavior.defaultSuppressAuditFailure; 
            this.serviceAuthorizationAuditLevel = ServiceSecurityAuditBehavior.defaultServiceAuthorizationAuditLevel;
            this.messageAuthenticationAuditLevel = ServiceSecurityAuditBehavior.defaultMessageAuthenticationAuditLevel; 
        }

        ServiceSecurityAuditBehavior(ServiceSecurityAuditBehavior behavior)
        { 
            this.auditLogLocation = behavior.auditLogLocation;
            this.suppressAuditFailure = behavior.suppressAuditFailure; 
            this.serviceAuthorizationAuditLevel = behavior.serviceAuthorizationAuditLevel; 
            this.messageAuthenticationAuditLevel = behavior.messageAuthenticationAuditLevel;
        } 

        public AuditLogLocation AuditLogLocation
        {
            get 
            {
                return this.auditLogLocation; 
            } 
            set
            { 
                if (!AuditLogLocationHelper.IsDefined(value))
                    throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value"));

                this.auditLogLocation = value; 
            }
        } 
 
        public bool SuppressAuditFailure
        { 
            get
            {
                return this.suppressAuditFailure;
            } 
            set
            { 
                this.suppressAuditFailure = value; 
            }
        } 

        public AuditLevel ServiceAuthorizationAuditLevel
        {
            get 
            {
                return this.serviceAuthorizationAuditLevel; 
            } 
            set
            { 
                if (!AuditLevelHelper.IsDefined(value))
                    throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value"));

                this.serviceAuthorizationAuditLevel = value; 
            }
        } 
 
        public AuditLevel MessageAuthenticationAuditLevel
        { 
            get
            {
                return this.messageAuthenticationAuditLevel;
            } 
            set
            { 
                if (!AuditLevelHelper.IsDefined(value)) 
                    throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value"));
 
                this.messageAuthenticationAuditLevel = value;
            }
        }
 
        internal ServiceSecurityAuditBehavior Clone()
        { 
            return new ServiceSecurityAuditBehavior(this); 
        }
 
        void IServiceBehavior.Validate(ServiceDescription description, ServiceHostBase serviceHostBase)
        {
        }
 
        void IServiceBehavior.AddBindingParameters(ServiceDescription description, ServiceHostBase serviceHostBase, Collection endpoints, BindingParameterCollection parameters)
        { 
            if (parameters == null) 
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException("parameters"));
 
            parameters.Add(this);
        }

        void IServiceBehavior.ApplyDispatchBehavior(ServiceDescription description, ServiceHostBase serviceHostBase) 
        {
            if (description == null) 
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException("description")); 
            if (serviceHostBase == null)
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentNullException("serviceHostBase")); 

            for (int i=0; i

                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK