Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            string text = args[0];

            ExtractionHelper extractionHelper = new ExtractionHelper(text);

            extractionHelper.extractAsync().GetAwaiter().GetResult();
        }
        private static ExtractionResult ExtractMessage(HttpContext context, SamlOptions options)
        {
            if (HttpMethods.IsGet(context.Request.Method))
            {
                return(ExtractionHelper.ExtractHttpRedirect(context.Request.Query, options.IdentityProviderCertificate));
            }

            if (HttpMethods.IsPost(context.Request.Method))
            {
                return(ExtractionHelper.ExtractHttpPost(context.Request.Form, options.IdentityProviderCertificate));
            }

            //HTTP-Methods other than GET and POST are not supported
            throw new InvalidOperationException($"HTTP-Method {context.Request.Method} is not supported.");
        }
        public void ExtractPostShouldExtractMessage()
        {
            var form = new Dictionary <string, StringValues>
            {
                { SamlAuthenticationDefaults.SamlRequestKey, Convert.ToBase64String(_message.Deflate()) }
            };

            _ctx.Request.Form = new FormCollection(form);

            var result = ExtractionHelper.ExtractHttpPost(_ctx.Request.Form, null);

            Assert.False(result.HasValidSignature);
            Assert.Null(result.RelayState);
            Assert.Equal(_message, result.Message);
        }
        public void ExtractRedirectShouldExtractMessage()
        {
            var query = new Dictionary <string, StringValues>
            {
                { SamlAuthenticationDefaults.SamlRequestKey, Convert.ToBase64String(_message.Deflate()) }
            };

            _ctx.Request.Query = new QueryCollection(query);

            var result = ExtractionHelper.ExtractHttpRedirect(_ctx.Request.Query, null);

            Assert.False(result.HasValidSignature);
            Assert.Null(result.RelayState);
            Assert.Equal(result.Message, _message);
        }
        public override void EFTranslation()
        {
            string english;
            string french;

            line             = ExtractionHelper.RemoveTabs(line);
            translation.Line = line;

            (english, french) = Splitline(line);

            LanguageDirector director       = new LanguageDirector();
            LanguageBuilder  englishBuilder = new LanguageEnglishBuilder(english);
            LanguageBuilder  frenchBuilder  = new LanguageFrenchBuilder(french);

            director.ConstructformattedImport(englishBuilder);
            director.ConstructformattedImport(frenchBuilder);

            translation.Languages.Add(englishBuilder.GetResult());
            translation.Languages.Add(frenchBuilder.GetResult());
        }
        public void ExtractPostShouldThrowExceptionIfNoPayloadFound()
        {
            _ctx.Request.ContentType = "application/x-www-form-urlencoded";

            Assert.Throws <SamlException>(() => ExtractionHelper.ExtractHttpPost(_ctx.Request.Form, null));
        }
 public void ExtractRedirectShouldThrowExceptionIfNoPayloadFound()
 {
     Assert.Throws <SamlException>(() => ExtractionHelper.ExtractHttpRedirect(_ctx.Request.Query, null));
 }