예제 #1
0
        public void Setup()
        {
            _originalTimestamp = new DateTime(2020, 6, 18, 11, 55, 0).ToUniversalTime();
            var originalTimestampAsUnixEpoch = (_originalTimestamp - DateTime.UnixEpoch).TotalSeconds.ToString();

            _timeSinceOriginalTimestamp = DateTime.UtcNow - _originalTimestamp;
            _apiKey = "ffffffffffffffffffffffffffffffff-ffffffff-ffffffff";

            _validSignature = new MailgunSignature()
            {
                Signature = "de4b938580bb4d84f710cbb8bfa7d224bb2262c8f644f558c2901c1ae645bb03",
                Token     = "ffffffffffffffffffffffffffffffffffffffffffffffffff",
                Timestamp = originalTimestampAsUnixEpoch,
            };

            _hostBuilder = new HostBuilder()
                           .ConfigureWebHost(webHost =>
            {
                webHost.UseTestServer()
                .Configure(app =>
                {
                    app.UseAuthentication();
                })
                .ConfigureServices(services =>
                {
                    services.AddAuthentication("MailgunSignature").AddScheme <MailgunAuthenticationSchemeOptions, MailgunAuthenticationHandler>("MailgunSignature", x =>
                    {
                        x.ApiKey          = _apiKey;
                        x.MaxSignatureAge = _timeSinceOriginalTimestamp + new TimeSpan(1, 0, 0);
                    });
                });
            });
        }
예제 #2
0
        public void Setup()
        {
            _originalTimestamp = new DateTime(2020, 6, 18, 11, 55, 0).ToUniversalTime();
            var originalTimestampAsUnixEpoch = (_originalTimestamp - DateTime.UnixEpoch).TotalSeconds.ToString();

            _timeSinceOriginalTimestamp = DateTime.UtcNow - _originalTimestamp;
            _apiKey = "ffffffffffffffffffffffffffffffff-ffffffff-ffffffff";

            _validSignature = new MailgunSignature()
            {
                Signature = "de4b938580bb4d84f710cbb8bfa7d224bb2262c8f644f558c2901c1ae645bb03",
                Token     = "ffffffffffffffffffffffffffffffffffffffffffffffffff",
                Timestamp = originalTimestampAsUnixEpoch,
            };
        }