# Section `DEFAULT`

**Supported keywords:**

- alt_names
- app
- bits
- c
- ca
- cn
- comment
- drpnodes
- email
- env
- id
- l
- nodes
- o
- ou
- share
- st
- validity

## Keyword `alt_names`

	required:    false
	scopable:    true
	convert:     list

**Example:**

	alt_names=www.opensvc.com opensvc.com

**Description:**

Certificate Signing Request Alternative Domain Names.


## Keyword `app`

	required:    false
	scopable:    false
	default:     default

**Description:**

A user-defined code linking to:

* who is responsible for this service.
* who is billable.

This code thus provides a most useful object grouping and filtering key.

Short and simple codes, like ERP, are easier to work with.


## Keyword `bits`

	required:    false
	scopable:    true
	default:     4kib
	convert:     size

**Example:**

	bits=8192

**Description:**

Certificate Private Key Length.


## Keyword `c`

	required:    false
	scopable:    true

**Example:**

	c=FR

**Description:**

Certificate Signing Request Country.


## Keyword `ca`

	required:    false
	scopable:    true

**Example:**

	ca=ca

**Description:**

The name of secret containing a certificate to use as a Certificate Authority.
This secret must be in the same namespace.


## Keyword `cn`

	required:    false
	scopable:    true

**Example:**

	cn=test.opensvc.com

**Description:**

Certificate Signing Request Common Name.


## Keyword `comment`

	required:    false
	scopable:    false

**Description:**

A free form text describing the role of the object, of the node, or of the
section it is set in.

The keyword is accepted in any section, so the DEFAULT section can document a
configuration as a whole, and a resource, pool, heartbeat, array or network
section can document itself.

The agent does not interpret the value.


## Keyword `drpnodes`

	required:    false
	scopable:    true
	convert:     peers

**Example:**

	drpnodes=n1 n2

**Description:**

A node selector expression specifying the list of cluster nodes hosting
object instances when all primary `nodes` are unavailable, like in a
DRP situation.

If not specified or left empty, the node evaluating the keyword is
assumed to be the only instance hosting node.

Labels can be used to define a list of nodes by an arbitrary property.
For example `cn=fr cn=kr` would be evaluated as `n1 n2 n3` if `n1` and
`n2` have the `cn=fr` label and `n3` has the `cn=kr` label.

The glob syntax can be used in the node selector expression. For
example `n1 n[23] n4*` would be expanded to `n1 n2 n3 n4` in a
`n1 n2 n3 n4 n5` cluster.

The drpnodes can be data synchronization targets for `sync` resources.


## Keyword `email`

	required:    false
	scopable:    true

**Example:**

	email=test@opensvc.com

**Description:**

Certificate Signing Request Email.


## Keyword `env`

	required:    false
	scopable:    false
	aliases:     service_type

**Default:**

The same as the node `env`.

**Description:**

A code like PRD, DEV, etc... the agent can use to enforce data protection policies:

* A non-PRD object instance can not be started on a PRD node, unless the node `allow_envs` keyword allows its env
* A PRD object instance can be started on a non-PRD node (typically in a DRP situation)
* A PRD object instance running on a non-PRD node does not sync its data to its peers
* A non-PRD node does not sync data to a PRD node

The default value is read from the node `env` keyword.



## Keyword `id`

	required:    false
	scopable:    false
	recorded:    written when what it names is made, and reset when the object is cloned

**Default:**

A random generated UUID.

**Description:**

A rfc4122 random uuid generated by the agent.


## Keyword `l`

	required:    false
	scopable:    true

**Example:**

	l=Gouvieux

**Description:**

Certificate Signing Request Location.


## Keyword `nodes`

	required:    false
	scopable:    true
	default:     *
	convert:     nodes

**Description:**

A node selector expression specifying the list of cluster nodes hosting
object instances.

If not specified or left empty, the node evaluating the keyword is
assumed to be the only instance hosting node.

Labels can be used to define a list of nodes by an arbitrary property.
For example `cn=fr cn=kr` would be evaluated as `n1 n2 n3` if `n1` and
`n2` have the `cn=fr` label and `n3` has the `cn=kr` label.

The glob syntax can be used in the node selector expression. For
example `n1 n[23] n4*` would be expanded to `n1 n2 n3 n4` in a
`n1 n2 n3 n4 n5` cluster.


## Keyword `o`

	required:    false
	scopable:    true

**Example:**

	o=OpenSVC

**Description:**

Certificate Signing Request Organization.


## Keyword `ou`

	required:    false
	scopable:    true

**Example:**

	ou=Lab

**Description:**

Certificate Signing Request Organizational Unit.


## Keyword `share`

	required:    false
	scopable:    false
	default:     {namespace}
	convert:     list

**Example:**

	share=ns1 ns2

**Description:**

A list of namespaces that objects are allowed to decode this key-value store keys.

The `*` special value means `all`.

By default a key-value store only shares to its own namespace.


## Keyword `st`

	required:    false
	scopable:    true

**Example:**

	st=Oise

**Description:**

Certificate Signing Request State.


## Keyword `validity`

	required:    false
	scopable:    true
	default:     1y
	convert:     duration

**Example:**

	validity=10y

**Description:**

Certificate Validity duration.


