/// <summary> /// Called to validate that the context.ClientId is a registered "client_id", and that the context.RedirectUri a "redirect_uri" /// registered for that client. This only occurs when processing the authorization endpoint. The application MUST implement this /// call, and it MUST validate both of those factors before calling context.Validated. If the context.Validated method is called /// with a given redirectUri parameter, then IsValidated will only become true if the incoming redirect URI matches the given redirect URI. /// If context.Validated is not called the request will not proceed further. /// </summary> /// <param name="context">The context of the event carries information in and results out.</param> /// <returns>Task to enable asynchronous execution</returns> public virtual Task ValidateClientRedirectUri(OpenIdConnectValidateClientRedirectUriContext context) { return OnValidateClientRedirectUri.Invoke(context); }
// check redirected url match with server or not private Task ValidateClientRedirectUri(OpenIdConnectValidateClientRedirectUriContext context) { if (context.ClientId == Clients.Client1.Id) { context.Validated(Clients.Client1.RedirectUrl); } else if (context.ClientId == Clients.Client2.Id) { context.Validated(Clients.Client2.RedirectUrl); } else if (context.ClientId == Clients.Client3.Id) { var result = context.Validated(Clients.Client3.RedirectUrl); } return Task.FromResult(0); }