﻿---
title: stack es security saml-prepare-authentication cli command
description: Prepare SAML authentication. Behaviour flags: --dry-run — validate all inputs and exit without performing any action 
url: https://www.elastic.co/elastic/docs-builder/docs/4120/reference/elastic-cli/cli/stack/es/security/saml-prepare-authentication
applies_to:
  - Elastic Cloud Serverless: Preview
  - Elastic Stack: Preview
---

# stack es security saml-prepare-authentication cli command
<cli-modifiers>
</cli-modifiers>

```bash
elastic stack es security saml-prepare-authentication [options]
```

Prepare SAML authentication.
**Behaviour flags:**
`--dry-run` — validate all inputs and exit without performing any action

## Options

<definitions>
  <definition term="--acs string">
    The Assertion Consumer Service URL that matches the one of the SAML realms in Elasticsearch.
    The realm is used to generate the authentication request. You must specify either this parameter or the `realm` parameter.
  </definition>
  <definition term="--realm string">
    The name of the SAML realm in Elasticsearch for which the configuration is used to generate the authentication request.
    You must specify either this parameter or the `acs` parameter.
  </definition>
  <definition term="--relay-state string">
    A string that will be included in the redirect URL that this API returns as the `RelayState` query parameter.
    If the Authentication Request is signed, this value is used as part of the signature computation.
  </definition>
  <definition term="--error-trace">
    When set to `true` Elasticsearch will include the full stack trace of errors
    when they occur.
  </definition>
  <definition term="--filter-path string">
    Comma-separated list of filters in dot notation which reduce the response
    returned by Elasticsearch.
    **Repeatable:** pass `--filter-path` multiple times to supply more than one value
  </definition>
  <definition term="--human">
    When set to `true` will return statistics in a format suitable for humans.
    For example `"exists_time": "1h"` for humans and
    `"exists_time_in_millis": 3600000` for computers. When disabled the human
    readable values will be omitted. This makes sense for responses being consumed
    only by machines.
  </definition>
  <definition term="--pretty">
    If set to `true` the returned JSON will be "pretty-formatted". Only use
    this option for debugging only.
  </definition>
  <definition term="--input-file string">
    path to a JSON file to use as command input
  </definition>
  <definition term="--dry-run">
    validate all inputs and exit without performing any action (preview changes without applying them)
  </definition>
</definitions>


## Global Options

<definitions>
  <definition term="--json">
    output as JSON
  </definition>
</definitions>