# Default Admin User

During installation, Connectware creates a default administrator user to ensure immediate system access. This user is named `admin` and has the `connectware-admin` role assigned to provide comprehensive permissions.

{% hint style="warning" %}
We strongly recommend to [change the initial admin user password](#changing-the-admin-user-password) after the first login.
{% endhint %}

## Admin User Parameters

The following auth-server [environment variables](https://docs.cybus.io/2-0-6/documentation/environment-variables) are available for configuring the admin user. Parameters differ between Kubernetes and Docker deployments.

{% tabs %}
{% tab title="Kubernetes Parameters" %}

### Admin User Parameters (Kubernetes)

| Parameter                                         | Description                                                                    | Default value |
| ------------------------------------------------- | ------------------------------------------------------------------------------ | ------------- |
| `global.userManagement.adminUser.initialPassword` | Sets the initial password for the admin user. Must be a Base64-encoded string. | `admin`       |
| `global.userManagement.adminUser.enabled`         | Enables/disables the admin user. Accepts a boolean value (`true` or `false`).  | `true`        |
| {% endtab %}                                      |                                                                                |               |

{% tab title="Docker Parameters" %}

### Admin User Parameters (Docker)

| Parameter                           | Description                                                                    | Default value |
| ----------------------------------- | ------------------------------------------------------------------------------ | ------------- |
| `CYBUS_INITIAL_ADMIN_USER_PASSWORD` | Sets the initial password for the admin user. Must be a Base64-encoded string. | `admin`       |
| `CYBUS_ADMIN_USER_ENABLED`          | Enables/disables the admin user. Accepts a boolean value (`true` or `false`).  | `true`        |
| {% endtab %}                        |                                                                                |               |
| {% endtabs %}                       |                                                                                |               |

## Changing the Default Admin User Password

The initial admin user password is `admin` (Base64-encoded). We strongly recommend to change the initial admin user password after the first login.

You can change the password via the `global.userManagement.adminUser.initialPassword` Helm value (Kubernetes) or the `CYBUS_INITIAL_ADMIN_USER_PASSWORD` environment variable (Docker).

{% hint style="warning" %}
If you have configured [custom password rules](https://docs.cybus.io/2-0-6/documentation/security/password-policy-configuration), make sure that the new admin user password complies with your password rules.
{% endhint %}

{% tabs %}
{% tab title="Kubernetes" %}

### Changing the Default Admin User Password (Kubernetes)

1. Open the `values.yaml` file.
2. Set the `global.userManagement.adminUser.initialPassword` Helm value to a password of your choice. Make sure to encode the password in Base64 format.

{% code lineNumbers="true" %}

```yaml
global:
  userManagement:
    adminUser:
      initialPassword: 'U2VjdXJlUGFzc3dvcmQxMjM='
```

{% endcode %}

3. Upgrade your Helm chart to apply the Helm configuration changes. For more information, see [Applying Helm configuration changes](https://docs.cybus.io/2-0-6/connectware-on-kubernetes/connectware-helm-chart#applying-helm-configuration-changes).

{% code lineNumbers="true" %}

```yaml
helm upgrade -n <namespace> <installation-name> -f values.yaml
```

{% endcode %}

4\. Try logging in with the old admin user credentials to verify your configuration. You should receive a "wrong password" error.
{% endtab %}

{% tab title="Docker" %}

### Changing the Default Admin User Password (Docker)

1. Navigate to your Connectware installation directory. If you have used the default values during installation, this is the installation folder: `/opt/connectware`. The directory contains an `.env` file that is loaded when starting Connectware.
2. Open the `.env` file.
3. Set the `CYBUS_INITIAL_ADMIN_USER_PASSWORD` environment variable to a password of your choice. Make sure to encode the password in Base64 format.

{% code lineNumbers="true" %}

```yaml
environment:
  - CYBUS_INITIAL_ADMIN_USER_PASSWORD={U2VjdXJlUGFzc3dvcmQxMjM=}
```

{% endcode %}

4. Start or restart Connectware. For more information, see [Restarting Connectware](https://docs.cybus.io/2-0-6/documentation/installation-and-upgrades/restarting-connectware).
5. Try logging in with the old admin user credentials to verify your configuration. You should receive a "wrong password" error.
   {% endtab %}
   {% endtabs %}

## Disabling the Default Admin User

{% hint style="warning" %}
Before disabling the default admin user, ensure you have created at least one other user with full administrative permissions. Otherwise, you may lose administrative access to your Connectware installation.
{% endhint %}

You can disable the default admin user after creating custom users that have admin permissions.

If the `global.userManagement.adminUser.initialPassword` Helm value (Kubernetes) or the `CYBUS_ADMIN_USER_ENABLED` environment variable (Docker) is not set, or if it has a value other than `false`, the default admin user is enabled and can log in with suitable credentials.

{% tabs %}
{% tab title="Kubernetes" %}

### Disabling the Default Admin User (Kubernetes)

1. Open the `values.yaml` file.
2. Set the `global.userManagement.adminUser.enabled` Helm value to `false`.

{% code lineNumbers="true" %}

```yaml
global:
  userManagement:
    adminUser:
      enabled: 'false'
```

{% endcode %}

3. Upgrade your Helm chart to apply the Helm configuration changes. For more information, see [Applying Helm configuration changes](https://docs.cybus.io/2-0-6/connectware-on-kubernetes/connectware-helm-chart#applying-helm-configuration-changes).

{% code lineNumbers="true" %}

```yaml
helm upgrade -n <namespace> <installation-name> -f values.yaml
```

{% endcode %}

4\. Try logging in with the admin user credentials to verify that the account has been disabled. You should receive a "wrong password" error.
{% endtab %}

{% tab title="Docker" %}

#### Disabling the Default Admin User (Docker)

1. Navigate to your Connectware installation directory. If you have used the default values during installation, this is the installation folder: `/opt/connectware`. The directory contains an `.env` file that is loaded when starting Connectware.
2. Open the `.env` file.
3. Set the `CYBUS_ADMIN_USER_ENABLED` environment variable to `false`.

{% code lineNumbers="true" %}

```yaml
environment:
  - CYBUS_ADMIN_USER_ENABLED=false
```

{% endcode %}

4. Start or restart Connectware. For more information, see [Restarting Connectware](https://docs.cybus.io/2-0-6/documentation/installation-and-upgrades/restarting-connectware).
5. Try logging in with the admin user credentials to verify that the account has been disabled. You should receive a "wrong password" error.
   {% endtab %}
   {% endtabs %}
