Пример #1
0
        public ActionResult Contact()
        {
            SiteMinder.ValidateApiKey();
            ViewBag.Message = "Your contact page.";

            return(View());
        }
Пример #2
0
        public void RuleMinderAddsExistingRuleMinder()
        {
            var existingRuleMinder = SiteMinder.Create().AddRule <UrlIsValidRuleSet, UrlIsValidRuleHandler, UrlRequest>(x =>
                                                                                                                        x.Using <UrlRequest>(request => request.Url = ("/SampleWebServiceEndPoint"))
                                                                                                                        .Build());

            Assert.Equal(1, existingRuleMinder.Rules.Count);
        }
Пример #3
0
        public void Init(HttpApplication app)
        {
            app.BeginRequest += AppBeginRequest;
            SiteMinder        = SiteMinder.Create()
                                .WithSslEnabled()
                                .WithApiKeyValidation()
                                .WithIpWhitelist()
                                .WithNoSpam(50, TimeSpan.FromHours(1))
            ;

            SiteMinder.Initialise();
        }
Пример #4
0
        public void RuleMinderAddsExistingRule()
        {
            var ruleSet =
                CreateRule <UrlIsValidRuleHandler, UrlRequest> .On <UrlRequest>(request => request.Url = "/SomeWebService")
                .Build();

            var rm =
                SiteMinder.Create()
                .AddRule <UrlIsValidRuleSet, UrlIsValidRuleHandler, UrlRequest>(webServiceUpRuleSet => ruleSet);

            Assert.Equal(1, rm.Rules.Count);
        }
Пример #5
0
        public void RuleMinderCanChainRules()
        {
            // Fluent builder to add many custom or inbuilt rules in  global.asax application_onstart
            var siteMinder = SiteMinder.Create()
                             .WithSslEnabled() // predefined rule redirect all http traffic to https
                             .WithNoSpam(maxAttemptsWithinDuration: 100, withinDuration: TimeSpan.FromHours(1))
                             .AddRule <UrlIsValidRuleSet, UrlIsValidRuleHandler, UrlRequest>(webServiceUpRuleSet =>
                                                                                             webServiceUpRuleSet.Using <UrlRequest>(request => request.Url = "/SomeWebService").Build()) // build a custom rule
            ;

            siteMinder.VerifyAllRules(); // global.asax  run via Application_BeginRequest

            //siteMinder.VerifyRule(IpAddressRequest.GetCurrentIpAddress(recordBadIp: true)); // or verify individual request on demand  / via attribute
            Assert.Equal(2, siteMinder.Rules.Count);
        }
Пример #6
0
        public static string GetUser()
        {
            string path;

            path = System.IO.Path.GetDirectoryName(
                System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase);

            if (path.ToLower().Contains("c:\\"))
            {
                //In development
                var user = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
                if (user.Contains("\\"))
                {
                    user = user.Split('\\')[1]; // Strip the domain if present
                }
                return(user);
            }
            else
            {
                //Test or PROD environment
                SiteMinder siteMinder = new SiteMinder();
                return(siteMinder.GetUsername());
            }
        }