Exemple #1
0
        private static Task OnMessageReceived(MessageReceivedContext context, OidcConfig adminConfiguration)
        {
            context.Properties.IsPersistent = true;
            context.Properties.ExpiresUtc   = new DateTimeOffset(DateTime.Now.AddHours(adminConfiguration.IdentityAdminCookieExpiresUtcHours));

            return(Task.FromResult(0));
        }
Exemple #2
0
 public Startup(IConfiguration configuration)
 {
     Configuration = configuration;
     // Configuration
     AwsOpts = Configuration.GetAWSOptions();
     Config  = new GeneralConfig();
     Configuration.Bind("GeneralConfig", Config);
     OpenIdConnectConfig = new OidcConfig();
     Configuration.Bind("CognitoOIDC", OpenIdConnectConfig);
     SecManager = new AmazonSecretsManagerClient(AwsOpts.Region);
 }
Exemple #3
0
        private static Task OnRedirectToIdentityProvider(RedirectContext n, OidcConfig adminConfiguration)
        {
            n.ProtocolMessage.RedirectUri = adminConfiguration.IdentityAdminRedirectUri;

            if (adminConfiguration.IsDocker)
            {
                //This method will work change the redirect url
                n.ProtocolMessage.IssuerAddress = n.ProtocolMessage.IssuerAddress.Replace(adminConfiguration.DockerHost, adminConfiguration.IdentityServerBaseUrl);
            }

            return(Task.FromResult(0));
        }
Exemple #4
0
        public async Task <OidcConfig> ConfigurationAsync()
        {
            Console.WriteLine("GET configuration");
            var config    = new OidcConfig();
            var wellKnown = await this.GetWellKnownAsync().ConfigureAwait(false);

            var protocol = this.Request.IsHttps ? "https://" : "http://";

            config.stsServer     = $"{protocol}{this.Request.Host.ToUriComponent()}/api/config";
            config.redirect_url  = $"{protocol}{this.Request.Host.ToUriComponent()}/";
            config.client_id     = this.configuration["Oidc:ClientId"];
            config.response_type = "id_token token";
            if (!String.IsNullOrEmpty(this.configuration["Oidc:Scope"]))
            {
                config.scope = this.configuration["Oidc:Scope"];
            }
            else
            {
                config.scope = "openid profile email claims";
            }
            config.post_logout_redirect_uri   = $"{protocol}{this.Request.Host.ToUriComponent()}/";
            config.post_login_route           = "/home";
            config.forbidden_route            = "/home";
            config.unauthorized_route         = "/home";
            config.auto_userinfo              = false;
            config.log_console_warning_active = true;
            config.log_console_debug_active   = this.environment.IsDevelopment();
            config.max_id_token_iat_offset_allowed_in_seconds = 1000;
            if (!String.IsNullOrEmpty(this.configuration["Oidc:Resource"]))
            {
                config.additional_login_parameters["resource"] = this.configuration["Oidc:Resource"];
            }
            if (!String.IsNullOrEmpty(this.configuration["Oidc:Prompt"]))
            {
                config.additional_login_parameters["prompt"] = this.configuration["Oidc:Prompt"];
            }
            return(config);
        }