public async Task <IActionResult> Edit(int id, [Bind("Id,ClientId,Origin")] ClientCorsOrigins ClientCorsOrigins) { if (id != ClientCorsOrigins.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(ClientCorsOrigins); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ClientCorsOriginsExists(ClientCorsOrigins.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(ClientCorsOrigins)); }
public async Task <IActionResult> Create([Bind("Id,ClientId,Origin")] ClientCorsOrigins ClientCorsOrigins) { if (ModelState.IsValid) { _context.Add(ClientCorsOrigins); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(ClientCorsOrigins)); }
/// <summary> /// Determines whether origin is allowed. /// </summary> /// <param name="origin">The origin.</param> /// <returns></returns> public Task <bool> IsOriginAllowedAsync(string origin) { // doing this here and not in the ctor because: https://github.com/aspnet/CORS/issues/105 // 对标 https://github.com/IdentityServer/IdentityServer4.EntityFramework.Storage/blob/dev/src/Services/CorsPolicyService.cs#L46 var origins = ClientCorsOrigins.FindAllByOrigins(origin); var isAllowed = origins.Count > 0; _logger.LogDebug("Origin {origin} is allowed: {originAllowed}", origin, isAllowed); return(Task.FromResult(isAllowed)); }
private async Task RemoveClientRelationsAsync(int clientId) { //Remove old claims var clientClaims = await ClientClaims.Where(x => x.Client.Id == clientId).ToListAsync(); ClientClaims.RemoveRange(clientClaims); //Remove old allowed scopes var clientScopes = await ClientScopes.Where(x => x.Client.Id == clientId).ToListAsync(); ClientScopes.RemoveRange(clientScopes); //Remove old grant types var clientGrantTypes = await ClientGrantTypes.Where(x => x.Client.Id == clientId).ToListAsync(); ClientGrantTypes.RemoveRange(clientGrantTypes); //Remove old redirect uri var clientRedirectUris = await ClientRedirectUris.Where(x => x.Client.Id == clientId).ToListAsync(); ClientRedirectUris.RemoveRange(clientRedirectUris); //Remove old client cors var clientCorsOrigins = await ClientCorsOrigins.Where(x => x.Client.Id == clientId).ToListAsync(); ClientCorsOrigins.RemoveRange(clientCorsOrigins); //Remove old client id restrictions var clientIdPRestrictions = await ClientIdPRestrictions.Where(x => x.Client.Id == clientId).ToListAsync(); ClientIdPRestrictions.RemoveRange(clientIdPRestrictions); //Remove old client post logout redirect var clientPostLogoutRedirectUris = await ClientPostLogoutRedirectUris.Where(x => x.Client.Id == clientId).ToListAsync(); ClientPostLogoutRedirectUris.RemoveRange(clientPostLogoutRedirectUris); }
public static string MapCorsOrigin(this ClientCorsOrigins clientCorsOrigins) { return(clientCorsOrigins.Origin); }