Example #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ValidateAuthorizationRequestNotification"/> class
 /// </summary>
 /// <param name="context"></param>
 /// <param name="options"></param>
 /// <param name="request"></param>
 /// <param name="clientContext"></param>
 internal ValidateAuthorizationRequestNotification(
     HttpContext context,
     OpenIdConnectServerOptions options,
     OpenIdConnectMessage request,
     ValidateClientRedirectUriNotification clientContext)
     : base(context, options)
 {
     Request       = request;
     ClientContext = clientContext;
     Validated();
 }
 /// <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="notification">The context of the event carries information in and results out.</param>
 /// <returns>Task to enable asynchronous execution</returns>
 public virtual Task ValidateClientRedirectUri(ValidateClientRedirectUriNotification notification) => OnValidateClientRedirectUri(notification);