#### [Abblix\.Oidc\.Server](https://www.abblix.com/en/docs/api/abblix-oidc-server 'index')
### [Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation')

## SyncAuthorizationContextValidatorBase Class

Provides a base for implementing synchronous authorization request validation steps\.
This abstract class allows for creating validators that perform synchronous validation
of authorization requests, while adhering to the [IAuthorizationContextValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.IAuthorizationContextValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.IAuthorizationContextValidator')
interface for asynchronous operation\.

```csharp
public abstract class SyncAuthorizationContextValidatorBase : Abblix.Oidc.Server.Endpoints.Authorization.Validation.IAuthorizationContextValidator
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → SyncAuthorizationContextValidatorBase

Derived  
↳ [FlowTypeValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.FlowTypeValidator')  
↳ [ProofKeyThumbprintValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.ProofKeyThumbprintValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.ProofKeyThumbprintValidator')  
↳ [RedirectUriValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.RedirectUriValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.RedirectUriValidator')  
↳ [ResourceValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.ResourceValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.ResourceValidator')  
↳ [ResponseModeValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.ResponseModeValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.ResponseModeValidator')  
↳ [ScopeValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.ScopeValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.ScopeValidator')  
↳ [SignedRequestObjectRequirementValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.SignedRequestObjectRequirementValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.SignedRequestObjectRequirementValidator')

Implements [IAuthorizationContextValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.IAuthorizationContextValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.IAuthorizationContextValidator')
### Methods

## SyncAuthorizationContextValidatorBase\.ValidateAsync\(AuthorizationValidationContext\) Method {#Abblix.Oidc.Server.Endpoints.Authorization.Validation.SyncAuthorizationContextValidatorBase.ValidateAsync(Abblix.Oidc.Server.Endpoints.Authorization.Validation.AuthorizationValidationContext)}

Synchronously validates the authorization request and wraps the result in a task\.
This method implements the [ValidateAsync\(AuthorizationValidationContext\)](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.IAuthorizationContextValidator#Abblix.Oidc.Server.Endpoints.Authorization.Validation.IAuthorizationContextValidator.ValidateAsync(Abblix.Oidc.Server.Endpoints.Authorization.Validation.AuthorizationValidationContext) 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.IAuthorizationContextValidator\.ValidateAsync\(Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.AuthorizationValidationContext\)') method
to allow synchronous validation logic within an asynchronous method signature\.

```csharp
public System.Threading.Tasks.Task<Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError?> ValidateAsync(Abblix.Oidc.Server.Endpoints.Authorization.Validation.AuthorizationValidationContext context);
```
#### Parameters

###### `context` [AuthorizationValidationContext](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.AuthorizationValidationContext 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.AuthorizationValidationContext') {#Abblix.Oidc.Server.Endpoints.Authorization.Validation.SyncAuthorizationContextValidatorBase.ValidateAsync(Abblix.Oidc.Server.Endpoints.Authorization.Validation.AuthorizationValidationContext).context}

The validation context containing client information and request details\.

Implements [ValidateAsync\(AuthorizationValidationContext\)](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.IAuthorizationContextValidator#Abblix.Oidc.Server.Endpoints.Authorization.Validation.IAuthorizationContextValidator.ValidateAsync(Abblix.Oidc.Server.Endpoints.Authorization.Validation.AuthorizationValidationContext) 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.IAuthorizationContextValidator\.ValidateAsync\(Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.AuthorizationValidationContext\)')

#### Returns
[System\.Threading\.Tasks\.Task&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1 'System\.Threading\.Tasks\.Task\`1')[AuthorizationRequestValidationError](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationRequestValidationError')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1 'System\.Threading\.Tasks\.Task\`1')  
A task representing the result of the synchronous validation\. The task contains an
[AuthorizationRequestValidationError](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationRequestValidationError') if the validation fails, or null if the request is valid\.
