public void SetUp()
 {
     provider            = new CustomAuthorizationProviderDataManageabilityProvider();
     machineKey          = new MockRegistryKey(true);
     userKey             = new MockRegistryKey(true);
     configurationObject = new CustomAuthorizationProviderData();
 }
		public void CanDeserializeSerializedConfiguration()
		{
			SecuritySettings settings = new SecuritySettings();

			AuthorizationRuleProviderData authorizationData1 = new AuthorizationRuleProviderData(authorizationName1);
			authorizationData1.Rules.Add(new AuthorizationRuleData(ruleName11, expression11));
			authorizationData1.Rules.Add(new AuthorizationRuleData(ruleName12, expression12));

			CustomAuthorizationProviderData authorizationData2 = new CustomAuthorizationProviderData(authorizationName2, typeof(MockCustomAuthorizationProvider));

			settings.AuthorizationProviders.Add(authorizationData1);
			settings.AuthorizationProviders.Add(authorizationData2);
			settings.DefaultAuthorizationProviderName = authorizationName1;

			IDictionary<string, ConfigurationSection> sections = new Dictionary<string, ConfigurationSection>();
			sections[SecuritySettings.SectionName] = settings;
			IConfigurationSource configurationSource
				= ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

			SecuritySettings roSettigs = (SecuritySettings)configurationSource.GetSection(SecuritySettings.SectionName);

			Assert.IsNotNull(roSettigs);
			Assert.AreEqual(2, roSettigs.AuthorizationProviders.Count);

			Assert.IsNotNull(roSettigs.AuthorizationProviders.Get(authorizationName1));
			Assert.AreSame(typeof(AuthorizationRuleProviderData), roSettigs.AuthorizationProviders.Get(authorizationName1).GetType());
			Assert.AreEqual(2, ((AuthorizationRuleProviderData)roSettigs.AuthorizationProviders.Get(authorizationName1)).Rules.Count);
			Assert.IsNotNull(((AuthorizationRuleProviderData)roSettigs.AuthorizationProviders.Get(authorizationName1)).Rules.Get(ruleName11));
			Assert.AreEqual(expression11, ((AuthorizationRuleProviderData)roSettigs.AuthorizationProviders.Get(authorizationName1)).Rules.Get(ruleName11).Expression);

			Assert.IsNotNull(roSettigs.AuthorizationProviders.Get(authorizationName2));
			Assert.AreSame(typeof(CustomAuthorizationProviderData), roSettigs.AuthorizationProviders.Get(authorizationName2).GetType());
			Assert.AreSame(typeof(MockCustomAuthorizationProvider), ((CustomAuthorizationProviderData)roSettigs.AuthorizationProviders.Get(authorizationName2)).Type);
		}
 public void SetUp()
 {
     provider = new CustomAuthorizationProviderDataManageabilityProvider();
     machineKey = new MockRegistryKey(true);
     userKey = new MockRegistryKey(true);
     configurationObject = new CustomAuthorizationProviderData();
 }
 public void ExtensionsTest()
 {
     CustomAuthorizationProviderData data = new CustomAuthorizationProviderData();
     data.Extensions.Add(new NameValueItem("key", "value"));
     string value = data.Extensions["key"];
     Assert.AreEqual("value", value);
     Assert.AreEqual(1, data.Extensions.Count);
 }
Exemplo n.º 5
0
 public void SetUp()
 {
     provider            = new ConfigurationElementManageabilityProviderWrapper(new CustomAuthorizationProviderDataManageabilityProvider());
     machineKey          = new MockRegistryKey(true);
     userKey             = new MockRegistryKey(true);
     wmiSettings         = new List <ConfigurationSetting>();
     configurationObject = new CustomAuthorizationProviderData();
 }
        public void Setup()
        {
            CustomAuthorizationProviderData customAuthZProvider = new CustomAuthorizationProviderData();

            customAuthZProvider.Name = "Custom authZ Provider";
            customAuthZProvider.Type = typeof(FaultyType);

            settings = new SecuritySettings();
            settings.AuthorizationProviders.Add(customAuthZProvider);
        }
        public void ExtensionsTest()
        {
            CustomAuthorizationProviderData data = new CustomAuthorizationProviderData();

            data.Extensions.Add(new NameValueItem("key", "value"));
            string value = data.Extensions["key"];

            Assert.AreEqual("value", value);
            Assert.AreEqual(1, data.Extensions.Count);
        }
        public void HydrateTest()
        {
            AuthorizationProviderDataCollection dataCollection = new AuthorizationProviderDataCollection();
            CustomAuthorizationProviderData providerData = new CustomAuthorizationProviderData();
            providerData.Name = "provider1";
            providerData.TypeName = typeof(MockAuthorizationProvider).AssemblyQualifiedName;
            dataCollection.Add(providerData);

            AuthorizationProviderCollectionNode node = new AuthorizationProviderCollectionNode(dataCollection);
            CreateHierarchyAndAddToHierarchyService(node, CreateDefaultConfiguration());
            Assert.AreEqual(1, node.Nodes.Count);
        }
        public void Setup()
        {
            CustomAuthorizationProviderData ruleProvider = new CustomAuthorizationProviderData();

            ruleProvider.Name = "Custom Auth Provider";
            ruleProvider.Type = typeof(MockCustomAuthorizationProvider);

            SecuritySettings settings = new SecuritySettings();

            settings.AuthorizationProviders.Add(ruleProvider);

            registrations = settings.GetRegistrations(null);
        }
        /// <summary>
        /// Initialize a new instance of the <see cref="CustomAuthorizationProviderNode"/> class with a <see cref="CustomAuthorizationProviderData"/> instance.
        /// </summary>
        /// <param name="customAuthorizationProviderData">A <see cref="CustomAuthorizationProviderData"/> instance</param>
        public CustomAuthorizationProviderNode(CustomAuthorizationProviderData customAuthorizationProviderData)
            : base()
        {
            if (null == customAuthorizationProviderData) throw new ArgumentNullException("customAuthorizationProviderData");

            this.customAuthoricationProviderType = customAuthorizationProviderData.Type;
            foreach (string key in customAuthorizationProviderData.Attributes)
            {
                editableAttributes.Add(new EditableKeyValue(key, customAuthorizationProviderData.Attributes[key]));
            }

            Rename(customAuthorizationProviderData.Name);
        }
Exemplo n.º 11
0
            public AuthorizeUsingCustomProviderBuilder(IConfigureSecuritySettings context, string customAuthorizationProviderName, Type customAuthorizationProviderType, NameValueCollection attributes)
                : base(context)
            {
                this.context        = context;
                customAuthZProvider = new CustomAuthorizationProviderData
                {
                    Name = customAuthorizationProviderName,
                    Type = customAuthorizationProviderType
                };

                customAuthZProvider.Attributes.Add(attributes);

                base.SecuritySettings.AuthorizationProviders.Add(customAuthZProvider);
            }
Exemplo n.º 12
0
        public void HydrateTest()
        {
            AuthorizationProviderDataCollection dataCollection = new AuthorizationProviderDataCollection();
            CustomAuthorizationProviderData     providerData   = new CustomAuthorizationProviderData();

            providerData.Name     = "provider1";
            providerData.TypeName = typeof(MockAuthorizationProvider).AssemblyQualifiedName;
            dataCollection.Add(providerData);

            AuthorizationProviderCollectionNode node = new AuthorizationProviderCollectionNode(dataCollection);

            CreateHierarchyAndAddToHierarchyService(node, CreateDefaultConfiguration());
            Assert.AreEqual(1, node.Nodes.Count);
        }
Exemplo n.º 13
0
        public void AuthorizationCollection()
        {
            SecuritySettings settings = new SecuritySettings();

            AuthorizationProviderDataCollection authProviders = new AuthorizationProviderDataCollection();
            CustomAuthorizationProviderData data = new CustomAuthorizationProviderData();
            data.Name = "name";
            authProviders.Add(data);
            foreach (AuthorizationProviderData providerData in authProviders)
            {
                settings.AuthorizationProviders.Add(providerData);
            }
            Assert.AreEqual(settings.AuthorizationProviders.Count, 1);
        }
Exemplo n.º 14
0
        public void AuthorizationCollection()
        {
            SecuritySettings settings = new SecuritySettings();

            AuthorizationProviderDataCollection authProviders = new AuthorizationProviderDataCollection();
            CustomAuthorizationProviderData     data          = new CustomAuthorizationProviderData();

            data.Name = "name";
            authProviders.Add(data);
            foreach (AuthorizationProviderData providerData in authProviders)
            {
                settings.AuthorizationProviders.Add(providerData);
            }
            Assert.AreEqual(settings.AuthorizationProviders.Count, 1);
        }
        /// <summary>
        /// Initialize a new instance of the <see cref="CustomAuthorizationProviderNode"/> class with a <see cref="CustomAuthorizationProviderData"/> instance.
        /// </summary>
        /// <param name="customAuthorizationProviderData">A <see cref="CustomAuthorizationProviderData"/> instance</param>
        public CustomAuthorizationProviderNode(CustomAuthorizationProviderData customAuthorizationProviderData)
            : base()
        {
            if (null == customAuthorizationProviderData)
            {
                throw new ArgumentNullException("customAuthorizationProviderData");
            }

            this.customAuthoricationProviderType = customAuthorizationProviderData.Type;
            foreach (string key in customAuthorizationProviderData.Attributes)
            {
                editableAttributes.Add(new EditableKeyValue(key, customAuthorizationProviderData.Attributes[key]));
            }

            Rename(customAuthorizationProviderData.Name);
        }
        public void CustomHandlerDataTest()
        {
            string attributeKey = "attKey";
            string attributeValue = "attValue";
            string name = "some name";
            Type type = typeof(Array);

            CustomAuthorizationProviderData data = new CustomAuthorizationProviderData();
            data.Name = name;
            data.Type = type;
            data.Attributes.Add(attributeKey, attributeValue);

            CustomAuthorizationProviderNode node = new CustomAuthorizationProviderNode(data);

            Assert.AreEqual(name, node.Name);
            Assert.AreEqual(type, node.Type);
            Assert.AreEqual(attributeKey, node.Attributes[0].Key);
            Assert.AreEqual(attributeValue, node.Attributes[0].Value);
        }
Exemplo n.º 17
0
        public void CustomHandlerDataTest()
        {
            string attributeKey   = "attKey";
            string attributeValue = "attValue";
            string name           = "some name";
            Type   type           = typeof(Array);

            CustomAuthorizationProviderData data = new CustomAuthorizationProviderData();

            data.Name = name;
            data.Type = type;
            data.Attributes.Add(attributeKey, attributeValue);

            CustomAuthorizationProviderNode node = new CustomAuthorizationProviderNode(data);

            Assert.AreEqual(name, node.Name);
            Assert.AreEqual(type.AssemblyQualifiedName, node.Type);
            Assert.AreEqual(attributeKey, node.Attributes[0].Key);
            Assert.AreEqual(attributeValue, node.Attributes[0].Value);
        }
        public void CanBuildCustomAuthorizationProviderFromGivenConfiguration()
        {
            CustomAuthorizationProviderData customData
                = new CustomAuthorizationProviderData("custom", typeof(MockCustomAuthorizationProvider));

            customData.SetAttributeValue(MockCustomProviderBase.AttributeKey, "value1");
            SecuritySettings settings = new SecuritySettings();

            settings.AuthorizationProviders.Add(customData);
            DictionaryConfigurationSource configurationSource = new DictionaryConfigurationSource();

            configurationSource.Add(SecuritySettings.SectionName, settings);

            IAuthorizationProvider custom
                = EnterpriseLibraryContainer.CreateDefaultContainer(configurationSource).GetInstance <IAuthorizationProvider>("custom");

            Assert.IsNotNull(custom);
            Assert.AreSame(typeof(MockCustomAuthorizationProvider), custom.GetType());
            Assert.AreEqual("value1", ((MockCustomAuthorizationProvider)custom).customValue);
        }
Exemplo n.º 19
0
        public void GetAuthorizationDataTest()
        {
            AuthorizationProviderCollectionNode node = new AuthorizationProviderCollectionNode();

            CreateHierarchyAndAddToHierarchyService(node, CreateDefaultConfiguration());
            CustomAuthorizationProviderNode providerNode = new CustomAuthorizationProviderNode();

            node.Nodes.Add(providerNode);
            providerNode.Name     = "provider1";
            providerNode.TypeName = typeof(MockAuthorizationProvider).AssemblyQualifiedName;
            AuthorizationProviderDataCollection providers = node.AuthorizationProviderDataCollection;

            Assert.IsNotNull(providers);
            Assert.AreEqual(1, providers.Count);
            AuthorizationProviderData data = providers["provider1"];

            Assert.IsNotNull(data);
            CustomAuthorizationProviderData customData = data as CustomAuthorizationProviderData;

            Assert.IsNotNull(customData);
            Assert.AreEqual(typeof(MockAuthorizationProvider).AssemblyQualifiedName, customData.TypeName);
        }
Exemplo n.º 20
0
        public void CustomHandlerNodeDataTest()
        {
            string attributeKey   = "attKey";
            string attributeValue = "attValue";
            string name           = "some name";
            Type   type           = typeof(Array);

            CustomAuthorizationProviderData data = new CustomAuthorizationProviderData();

            data.Name = name;
            data.Type = type;
            data.Attributes.Add(attributeKey, attributeValue);

            CustomAuthorizationProviderNode customCacheProviderNode = new CustomAuthorizationProviderNode(data);

            CustomAuthorizationProviderData nodeData = (CustomAuthorizationProviderData)customCacheProviderNode.AuthorizationProviderData;

            Assert.AreEqual(name, nodeData.Name);
            Assert.AreEqual(type, nodeData.Type);
            Assert.AreEqual(attributeKey, nodeData.Attributes.AllKeys[0]);
            Assert.AreEqual(attributeValue, nodeData.Attributes[attributeKey]);
        }
        public void CanBuildCustomAuthorizationProviderFromSavedConfiguration()
        {
            CustomAuthorizationProviderData customData
                = new CustomAuthorizationProviderData("custom", typeof(MockCustomAuthorizationProvider));

            customData.SetAttributeValue(MockCustomProviderBase.AttributeKey, "value1");
            SecuritySettings settings = new SecuritySettings();

            settings.AuthorizationProviders.Add(customData);

            IDictionary <string, ConfigurationSection> sections = new Dictionary <string, ConfigurationSection>(1);

            sections[SecuritySettings.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            IAuthorizationProvider custom
                = EnterpriseLibraryContainer.CreateDefaultContainer(configurationSource).GetInstance <IAuthorizationProvider>("custom");

            Assert.IsNotNull(custom);
            Assert.AreSame(typeof(MockCustomAuthorizationProvider), custom.GetType());
            Assert.AreEqual("value1", ((MockCustomAuthorizationProvider)custom).customValue);
        }
        public void CanDeserializeSerializedConfiguration()
        {
            SecuritySettings settings = new SecuritySettings();

            AuthorizationRuleProviderData authorizationData1 = new AuthorizationRuleProviderData(authorizationName1);

            authorizationData1.Rules.Add(new AuthorizationRuleData(ruleName11, expression11));
            authorizationData1.Rules.Add(new AuthorizationRuleData(ruleName12, expression12));

            CustomAuthorizationProviderData authorizationData2 = new CustomAuthorizationProviderData(authorizationName2, typeof(MockCustomAuthorizationProvider));

            settings.AuthorizationProviders.Add(authorizationData1);
            settings.AuthorizationProviders.Add(authorizationData2);
            settings.DefaultAuthorizationProviderName = authorizationName1;

            IDictionary <string, ConfigurationSection> sections = new Dictionary <string, ConfigurationSection>();

            sections[SecuritySettings.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            SecuritySettings roSettigs = (SecuritySettings)configurationSource.GetSection(SecuritySettings.SectionName);

            Assert.IsNotNull(roSettigs);
            Assert.AreEqual(2, roSettigs.AuthorizationProviders.Count);

            Assert.IsNotNull(roSettigs.AuthorizationProviders.Get(authorizationName1));
            Assert.AreSame(typeof(AuthorizationRuleProviderData), roSettigs.AuthorizationProviders.Get(authorizationName1).GetType());
            Assert.AreEqual(2, ((AuthorizationRuleProviderData)roSettigs.AuthorizationProviders.Get(authorizationName1)).Rules.Count);
            Assert.IsNotNull(((AuthorizationRuleProviderData)roSettigs.AuthorizationProviders.Get(authorizationName1)).Rules.Get(ruleName11));
            Assert.AreEqual(expression11, ((AuthorizationRuleProviderData)roSettigs.AuthorizationProviders.Get(authorizationName1)).Rules.Get(ruleName11).Expression);

            Assert.IsNotNull(roSettigs.AuthorizationProviders.Get(authorizationName2));
            Assert.AreSame(typeof(CustomAuthorizationProviderData), roSettigs.AuthorizationProviders.Get(authorizationName2).GetType());
            Assert.AreSame(typeof(MockCustomAuthorizationProvider), ((CustomAuthorizationProviderData)roSettigs.AuthorizationProviders.Get(authorizationName2)).Type);
        }
Exemplo n.º 23
0
 /// <summary>
 /// Initializes a new instance of the <see cref="CustomAuthorizationProviderNode"/>
 /// class from existing configuration data.
 /// </summary>
 /// <param name="customAuthorizationProviderData">Configuration data for a generic authentication provider</param>
 public CustomAuthorizationProviderNode(CustomAuthorizationProviderData customAuthorizationProviderData) : base(customAuthorizationProviderData)
 {
     this.customAuthorizationProviderData = customAuthorizationProviderData;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="CustomAuthorizationProviderNode"/>
 /// class from existing configuration data.
 /// </summary>
 /// <param name="customAuthorizationProviderData">Configuration data for a generic authentication provider</param>
 public CustomAuthorizationProviderNode(CustomAuthorizationProviderData customAuthorizationProviderData)
     : base(customAuthorizationProviderData)
 {
     this.customAuthorizationProviderData = customAuthorizationProviderData;
 }