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)); }
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); }
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)); }
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); }