Exemple #1
0
        public void WAFUpdateRule()
        {
            #region updaterule-1475260064720

            var client   = new AmazonWAFClient();
            var response = client.UpdateRule(new UpdateRuleRequest
            {
                ChangeToken = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                RuleId      = "example1ds3t-46da-4fdb-b8d5-abc321j569j5",
                Updates     = new List <RuleUpdate> {
                    new RuleUpdate {
                        Action    = "DELETE",
                        Predicate = new Predicate {
                            DataId  = "MyByteMatchSetID",
                            Negated = false,
                            Type    = "ByteMatch"
                        }
                    }
                }
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #2
0
        public void WAFUpdateByteMatchSet()
        {
            #region updatebytematchset-1475259074558

            var client   = new AmazonWAFClient();
            var response = client.UpdateByteMatchSet(new UpdateByteMatchSetRequest
            {
                ByteMatchSetId = "exampleIDs3t-46da-4fdb-b8d5-abc321j569j5",
                ChangeToken    = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                Updates        = new List <ByteMatchSetUpdate> {
                    new ByteMatchSetUpdate {
                        Action         = "DELETE",
                        ByteMatchTuple = new ByteMatchTuple {
                            FieldToMatch = new FieldToMatch {
                                Data = "referer",
                                Type = "HEADER"
                            },
                            PositionalConstraint = "CONTAINS",
                            TextTransformation   = "NONE"
                        }
                    }
                }
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #3
0
        public void WAFUpdateSizeConstraintSet()
        {
            #region updatesizeconstraintset-1475531697891

            var client   = new AmazonWAFClient();
            var response = client.UpdateSizeConstraintSet(new UpdateSizeConstraintSetRequest
            {
                ChangeToken         = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                SizeConstraintSetId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5",
                Updates             = new List <SizeConstraintSetUpdate> {
                    new SizeConstraintSetUpdate {
                        Action         = "DELETE",
                        SizeConstraint = new SizeConstraint {
                            ComparisonOperator = "GT",
                            FieldToMatch       = new FieldToMatch {
                                Type = "QUERY_STRING"
                            },
                            Size = 0,
                            TextTransformation = "NONE"
                        }
                    }
                }
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #4
0
        public void WAFUpdateWebACL()
        {
            #region updatewebacl-1475533627385

            var client   = new AmazonWAFClient();
            var response = client.UpdateWebACL(new UpdateWebACLRequest
            {
                ChangeToken   = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                DefaultAction = new WafAction {
                    Type = "ALLOW"
                },
                Updates = new List <WebACLUpdate> {
                    new WebACLUpdate {
                        Action        = "DELETE",
                        ActivatedRule = new ActivatedRule {
                            Action = new WafAction {
                                Type = "ALLOW"
                            },
                            Priority = 1,
                            RuleId   = "WAFRule-1-Example"
                        }
                    }
                },
                WebACLId = "webacl-1472061481310"
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #5
0
        public void WAFUpdateXssMatchSet()
        {
            #region updatexssmatchset-1475534098881

            var client   = new AmazonWAFClient();
            var response = client.UpdateXssMatchSet(new UpdateXssMatchSetRequest
            {
                ChangeToken = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                Updates     = new List <XssMatchSetUpdate> {
                    new XssMatchSetUpdate {
                        Action        = "DELETE",
                        XssMatchTuple = new XssMatchTuple {
                            FieldToMatch = new FieldToMatch {
                                Type = "QUERY_STRING"
                            },
                            TextTransformation = "URL_DECODE"
                        }
                    }
                },
                XssMatchSetId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #6
0
        public ActionResult Index()
        {
            #region Debug
            if (!string.IsNullOrEmpty(Request.QueryString["debug"]))
            {
                var values = new Dictionary <string, string>();

                foreach (var key in Request.ServerVariables.AllKeys)
                {
                    values.Add(key, Request.ServerVariables[key]);
                }

                values.Add("DateTime", DateTime.Now.ToString());

                return(Content(JsonConvert.SerializeObject(values), "application/json"));
            }
            #endregion

            if (Request.ServerVariables["HTTP_X_FORWARDED_FOR"] == null)
            {
                return(null);
            }

            var lstIp = Request.ServerVariables["HTTP_X_FORWARDED_FOR"].Split(',');

            if (lstIp.Any())
            {
                var accesKey  = "AKIAIRODRD7TFCQ5XS5Q";
                var secretKey = "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";

                var ipSetId = "6c8ff7fb-7f06-48fa-8ee6-9b9fbfa02e8b";
                var userIp  = $"{lstIp[0]}/32";

                var client = new AmazonWAFClient(accesKey, secretKey, RegionEndpoint.USEast1);

                var ipset = client.GetIPSet(ipSetId);

                if (!ipset.IPSet.IPSetDescriptors.Exists(p => p.Value == userIp))
                {
                    var token = client.GetChangeToken();

                    var listIp = new List <IPSetUpdate>
                    {
                        new IPSetUpdate()
                        {
                            Action = new ChangeAction("INSERT"), IPSetDescriptor = new IPSetDescriptor()
                            {
                                Type = IPSetDescriptorType.IPV4, Value = $"{lstIp[0]}/32"
                            }
                        }
                    };

                    client.UpdateIPSet(ipSetId, listIp, token.ChangeToken);
                }

                return(new RedirectResult("/", true));
            }

            return(null);
        }
Exemple #7
0
        public void WAFGetChangeToken()
        {
            #region get-change-token-example-1471635120794

            var client   = new AmazonWAFClient();
            var response = client.GetChangeToken(new GetChangeTokenRequest
            {
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #8
0
        public void WAFGetByteMatchSet()
        {
            #region getbytematchset-1473273311532

            var client   = new AmazonWAFClient();
            var response = client.GetByteMatchSet(new GetByteMatchSetRequest
            {
                ByteMatchSetId = "exampleIDs3t-46da-4fdb-b8d5-abc321j569j5"
            });

            ByteMatchSet byteMatchSet = response.ByteMatchSet;

            #endregion
        }
        protected IAmazonWAF CreateClient(AWSCredentials credentials, RegionEndpoint region)
        {
            var config = new AmazonWAFConfig {
                RegionEndpoint = region
            };

            Amazon.PowerShell.Utils.Common.PopulateConfig(this, config);
            this.CustomizeClientConfig(config);
            var client = new AmazonWAFClient(credentials, config);

            client.BeforeRequestEvent += RequestEventHandler;
            client.AfterResponseEvent += ResponseEventHandler;
            return(client);
        }
Exemple #10
0
        public void WAFGetSizeConstraintSet()
        {
            #region getsizeconstraintset-1475005422493

            var client   = new AmazonWAFClient();
            var response = client.GetSizeConstraintSet(new GetSizeConstraintSetRequest
            {
                SizeConstraintSetId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            SizeConstraintSet sizeConstraintSet = response.SizeConstraintSet;

            #endregion
        }
Exemple #11
0
        public void WAFGetRule()
        {
            #region getrule-1474659238790

            var client   = new AmazonWAFClient();
            var response = client.GetRule(new GetRuleRequest
            {
                RuleId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            Rule rule = response.Rule;

            #endregion
        }
Exemple #12
0
        public void WAFGetSqlInjectionMatchSet()
        {
            #region getsqlinjectionmatchset-1475005940137

            var client   = new AmazonWAFClient();
            var response = client.GetSqlInjectionMatchSet(new GetSqlInjectionMatchSetRequest
            {
                SqlInjectionMatchSetId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            SqlInjectionMatchSet sqlInjectionMatchSet = response.SqlInjectionMatchSet;

            #endregion
        }
Exemple #13
0
        public void WAFGetIPSet()
        {
            #region getipset-1474658688675

            var client   = new AmazonWAFClient();
            var response = client.GetIPSet(new GetIPSetRequest
            {
                IPSetId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            IPSet ipSet = response.IPSet;

            #endregion
        }
Exemple #14
0
        public void WAFListSizeConstraintSets()
        {
            #region listsizeconstraintsets-1474300067597

            var client   = new AmazonWAFClient();
            var response = client.ListSizeConstraintSets(new ListSizeConstraintSetsRequest
            {
                Limit = 100
            });

            List <SizeConstraintSetSummary> sizeConstraintSets = response.SizeConstraintSets;

            #endregion
        }
Exemple #15
0
        public void WAFGetWebACL()
        {
            #region getwebacl-1475006348525

            var client   = new AmazonWAFClient();
            var response = client.GetWebACL(new GetWebACLRequest
            {
                WebACLId = "createwebacl-1472061481310"
            });

            WebACL webACL = response.WebACL;

            #endregion
        }
Exemple #16
0
        public void WAFListXssMatchSets()
        {
            #region listxssmatchsets-1474561481168

            var client   = new AmazonWAFClient();
            var response = client.ListXssMatchSets(new ListXssMatchSetsRequest
            {
                Limit = 100
            });

            List <XssMatchSetSummary> xssMatchSets = response.XssMatchSets;

            #endregion
        }
Exemple #17
0
        public void WAFListSqlInjectionMatchSets()
        {
            #region listsqlinjectionmatchset-1474493560103

            var client   = new AmazonWAFClient();
            var response = client.ListSqlInjectionMatchSets(new ListSqlInjectionMatchSetsRequest
            {
                Limit = 100
            });

            List <SqlInjectionMatchSetSummary> sqlInjectionMatchSets = response.SqlInjectionMatchSets;

            #endregion
        }
Exemple #18
0
        public void WAFListWebACLs()
        {
            #region listwebacls-1475258732691

            var client   = new AmazonWAFClient();
            var response = client.ListWebACLs(new ListWebACLsRequest
            {
                Limit = 100
            });

            List <WebACLSummary> webACLs = response.WebACLs;

            #endregion
        }
Exemple #19
0
        public void WAFGetChangeTokenStatus()
        {
            #region getchangetokenstatus-1474658417107

            var client   = new AmazonWAFClient();
            var response = client.GetChangeTokenStatus(new GetChangeTokenStatusRequest
            {
                ChangeToken = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f"
            });

            string changeTokenStatus = response.ChangeTokenStatus;

            #endregion
        }
Exemple #20
0
        public void WAFListRules()
        {
            #region listrules-1475258406433

            var client   = new AmazonWAFClient();
            var response = client.ListRules(new ListRulesRequest
            {
                Limit = 100
            });

            List <RuleSummary> rules = response.Rules;

            #endregion
        }
Exemple #21
0
        public void WAFListIPSets()
        {
            #region listipsets-1472235676229

            var client   = new AmazonWAFClient();
            var response = client.ListIPSets(new ListIPSetsRequest
            {
                Limit = 100
            });

            List <IPSetSummary> ipSets = response.IPSets;

            #endregion
        }
Exemple #22
0
        public void WAFGetXssMatchSet()
        {
            #region getxssmatchset-1475187879017

            var client   = new AmazonWAFClient();
            var response = client.GetXssMatchSet(new GetXssMatchSetRequest
            {
                XssMatchSetId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            XssMatchSet xssMatchSet = response.XssMatchSet;

            #endregion
        }
Exemple #23
0
        public void WAFDeleteXssMatchSet()
        {
            #region deletexssmatchset-1474561302618

            var client   = new AmazonWAFClient();
            var response = client.DeleteXssMatchSet(new DeleteXssMatchSetRequest
            {
                ChangeToken   = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                XssMatchSetId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #24
0
        public void WAFDeleteIPSet()
        {
            #region deleteipset-1472767434306

            var client   = new AmazonWAFClient();
            var response = client.DeleteIPSet(new DeleteIPSetRequest
            {
                ChangeToken = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                IPSetId     = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #25
0
        public void WAFDeleteRule()
        {
            #region deleterule-1474073108749

            var client   = new AmazonWAFClient();
            var response = client.DeleteRule(new DeleteRuleRequest
            {
                ChangeToken = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                RuleId      = "WAFRule-1-Example"
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #26
0
        public void WAFDeleteSizeConstraintSet()
        {
            #region deletesizeconstraintset-1474299857905

            var client   = new AmazonWAFClient();
            var response = client.DeleteSizeConstraintSet(new DeleteSizeConstraintSetRequest
            {
                ChangeToken         = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                SizeConstraintSetId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #27
0
        public void WAFDeleteSqlInjectionMatchSet()
        {
            #region deletesqlinjectionmatchset-1474493373197

            var client   = new AmazonWAFClient();
            var response = client.DeleteSqlInjectionMatchSet(new DeleteSqlInjectionMatchSetRequest
            {
                ChangeToken            = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                SqlInjectionMatchSetId = "example1ds3t-46da-4fdb-b8d5-abc321j569j5"
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #28
0
        public void WAFDeleteWebACL()
        {
            #region deletewebacl-1472767755931

            var client   = new AmazonWAFClient();
            var response = client.DeleteWebACL(new DeleteWebACLRequest
            {
                ChangeToken = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                WebACLId    = "example-46da-4444-5555-example"
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #29
0
        public void WAFDeleteByteMatchSet()
        {
            #region deletebytematchset-1473367566229

            var client   = new AmazonWAFClient();
            var response = client.DeleteByteMatchSet(new DeleteByteMatchSetRequest
            {
                ByteMatchSetId = "exampleIDs3t-46da-4fdb-b8d5-abc321j569j5",
                ChangeToken    = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f"
            });

            string changeToken = response.ChangeToken;

            #endregion
        }
Exemple #30
0
        public void WAFCreateSqlInjectionMatchSet()
        {
            #region createsqlinjectionmatchset-1474492796105

            var client   = new AmazonWAFClient();
            var response = client.CreateSqlInjectionMatchSet(new CreateSqlInjectionMatchSetRequest
            {
                ChangeToken = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
                Name        = "MySQLInjectionMatchSet"
            });

            string changeToken = response.ChangeToken;
            SqlInjectionMatchSet sqlInjectionMatchSet = response.SqlInjectionMatchSet;

            #endregion
        }