# init

{% hint style="info" %}
Note:\
`nitride init` always tries to enable the plugin at `ratls/`. If `ratls/` is already in use, the command stops and does nothing else. To re-run it, first disable the plugin with `vhsm auth disable ratls`.
{% endhint %}

## Usage

This command typically sets up the plugins at its default path, enables it, and may provision default identities and policies for common platforms (e.g., AWS, Azure, GCP).

```
 vhsm nitride init [option]
```

### Options

* `-namespacing @policy.json` : Enforce a namespace-specific access policy `@policy.json`&#x20;

#### Structure: @policy.json

* "name": A string uniquely identifying the policy.
* "identities": An object specifying the required identities for this policy.
* "provider": The provider identity. For example,  azure-sev-snp-vtpm.
* "platform": An array of platform identity objects, see [platform](https://docs.enclaive.cloud/nitride/identity/create#type-platform) identity structure.
* "firmware": An array of firmware identity objects, see [firmware](https://docs.enclaive.cloud/nitride/identity/create#type-firmware) identity structure.
* "workload": A workload identity object, see [workload](https://docs.enclaive.cloud/nitride/identity/create#type-workload) identity structure.
* "metadata": (Optional) Additional metadata for the policy.

***

**Example**

Run the initialization process to set up the plugins with sensible defaults.

```shell
vhsm nitride init
```

**Output**

```
Success! Initialized the Nitride attestation plugin at path "ratls/".
Default platform identities and policies have been created.
```

All commands implicitly operate under the default path `/ratls`.&#x20;
