> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ValidateUser

> ValidateUser method in the ABBYY FlexiCapture user management API verifies that a user name and password hash match stored credentials, with hashing sample.

## What it does

Checks whether a user name and a password match the values in the database.

## Definition

```
bool ValidateUser( string userName, string passwordHash );
```

## Parameters

| **Name**     | **Type** | **Description** |
| ------------ | -------- | --------------- |
| userName     | string   | User name       |
| passwordHash | string   | Password hash   |

Sample code for calculating the password hash:

```
public static string GetPasswordHashWithSalt( string login, string password )
        {
            string salt = GetPasswordSha256Hash(login.ToUpper());
            return GetPasswordSha256Hash(password + salt);
        }
        private static string GetPasswordSha256Hash( string password )
        {
            Encoding enc = Encoding.GetEncoding("UTF-16");
            byte[] buffer = enc.GetBytes(password);
            var cryptoTransformSHA256 = new SHA256CryptoServiceProvider();
            string hash = BitConverter.ToString(cryptoTransformSHA256.ComputeHash(buffer)).Replace("-", "");
            return hash;
        }
```

## Returned value

<table width="100%"><tbody><tr><td><p><strong>Type</strong></p></td><td><p><strong>Description</strong></p></td></tr><tr><td><p>bool</p></td><td><ul><li>"true" if values match</li><li>otherwise "false" is returned</li></ul></td></tr></tbody></table>
