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

## ClientAuthenticationMethods Class

This class defines various client authentication methods used in OAuth 2\.0\.

```csharp
public static class ClientAuthenticationMethods
```

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

## ClientAuthenticationMethods\.ClientSecretBasic Field {#Abblix.Oidc.Server.Common.Constants.ClientAuthenticationMethods.ClientSecretBasic}

Client authenticates with the authorization server using the client ID and secret via HTTP Basic Authentication\.

```csharp
public const string ClientSecretBasic = "client_secret_basic";
```

#### Field Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## ClientAuthenticationMethods\.ClientSecretJwt Field {#Abblix.Oidc.Server.Common.Constants.ClientAuthenticationMethods.ClientSecretJwt}

The client uses a JWT \(JSON Web Token\) as a client assertion to authenticate\.

```csharp
public const string ClientSecretJwt = "client_secret_jwt";
```

#### Field Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## ClientAuthenticationMethods\.ClientSecretPost Field {#Abblix.Oidc.Server.Common.Constants.ClientAuthenticationMethods.ClientSecretPost}

Similar to ClientSecretBasic, but the client secret is sent in the request body\.

```csharp
public const string ClientSecretPost = "client_secret_post";
```

#### Field Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## ClientAuthenticationMethods\.None Field {#Abblix.Oidc.Server.Common.Constants.ClientAuthenticationMethods.None}

Indicates that no client authentication is for the OAuth request\.

```csharp
public const string None = "none";
```

#### Field Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## ClientAuthenticationMethods\.PrivateKeyJwt Field {#Abblix.Oidc.Server.Common.Constants.ClientAuthenticationMethods.PrivateKeyJwt}

Similar to ClientSecretJwt, but it uses a private key to sign the JWT\.

```csharp
public const string PrivateKeyJwt = "private_key_jwt";
```

#### Field Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## ClientAuthenticationMethods\.SelfSignedTlsClientAuth Field {#Abblix.Oidc.Server.Common.Constants.ClientAuthenticationMethods.SelfSignedTlsClientAuth}

Mutual TLS client authentication using a self\-signed client certificate and the client's
registered JWKS to identify acceptable public keys\. RFC 8705\.

```csharp
public const string SelfSignedTlsClientAuth = "self_signed_tls_client_auth";
```

#### Field Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## ClientAuthenticationMethods\.TlsClientAuth Field {#Abblix.Oidc.Server.Common.Constants.ClientAuthenticationMethods.TlsClientAuth}

Mutual TLS client authentication where the client's certificate chain is validated against
the AS trust store and matched using client metadata \(subject/SAN\)\. RFC 8705\.

```csharp
public const string TlsClientAuth = "tls_client_auth";
```

#### Field Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')
