2019-05-01 21:11:23 +00:00
---
2020-09-01 15:14:13 +00:00
layout: commands
2020-04-07 18:55:19 +00:00
page_title: 'Commands: ACL Token Update'
2023-01-26 18:42:13 +00:00
description: |
The `consul acl token update` command updates ACL token details such as attached policies, roles, and service identities. Some token details cannot be changed with this command.
2019-05-01 21:11:23 +00:00
---
# Consul ACL Token Update
Command: `consul acl token update`
2023-01-25 16:52:43 +00:00
Corresponding HTTP API Endpoint: [\[PUT\] /v1/acl/token/:AccessorID](/consul/api-docs/acl/tokens#update-a-token)
2022-01-10 17:40:11 +00:00
2019-05-01 21:11:23 +00:00
The `acl token update` command will update a token. Some parts of the token like whether the
token is local to the datacenter cannot be changed.
2023-01-25 16:52:43 +00:00
The table below shows this command's [required ACLs](/consul/api-docs/api-structure#authentication). Configuration of
[blocking queries](/consul/api-docs/features/blocking) and [agent caching](/consul/api-docs/features/caching)
2022-01-10 21:44:56 +00:00
are not supported from commands, but may be from the corresponding HTTP endpoint.
| ACL Required |
| ------------ |
| `acl:write` |
2019-05-01 21:11:23 +00:00
## Usage
Usage: `consul acl token update [options]`
#### Command Options
2020-04-07 18:55:19 +00:00
- `-description=<string>` - A description of the token
2019-05-01 21:11:23 +00:00
2020-04-07 18:55:19 +00:00
- `-id=<string>` - The Accessor ID of the token to read. It may be specified as a
unique ID prefix but will error if the prefix matches multiple token Accessor IDs
2019-05-01 21:11:23 +00:00
2023-03-06 15:00:39 +00:00
- `-merge-node-identities` - Deprecated. Merge the new node identities with the existing node
2020-09-15 02:02:43 +00:00
identities.
2023-03-06 15:00:39 +00:00
~> This is deprecated and will be removed in a future Consul version. Use `append-node-identity` instead.
2020-09-15 02:02:43 +00:00
2023-03-01 20:00:37 +00:00
- `-merge-policies` - Deprecated. Merge the new policies with the existing policies.
2019-05-01 21:11:23 +00:00
2023-03-01 20:00:37 +00:00
~> This is deprecated and will be removed in a future Consul version. Use `append-policy-id` or `append-policy-name`
instead.
- `-merge-roles` - Deprecated. Merge the new roles with the existing roles.
~> This is deprecated and will be removed in a future Consul version. Use `append-role-id` or `append-role-name`
instead.
2019-05-01 21:11:23 +00:00
2023-03-06 15:00:39 +00:00
- `-merge-service-identities` - Deprecated. Merge the new service identities with the existing service identities.
~> This is deprecated and will be removed in a future Consul version. Use `append-service-identity` instead.
2019-05-01 21:11:23 +00:00
2020-04-07 18:55:19 +00:00
- `-meta` - Indicates that token metadata such as the content hash and Raft indices should be
shown for each entry.
2019-05-01 21:11:23 +00:00
2023-03-06 15:00:39 +00:00
- `-node-identity=<value>` - Name of a node identity to use for this role. Overwrites existing node identity. May
2020-09-15 02:02:43 +00:00
be specified multiple times. Format is `NODENAME:DATACENTER`. Added in Consul
1.8.1.
2023-03-06 15:00:39 +00:00
- `-append-node-identity=<value>` - Name of a node identity to add to this role. May
be specified multiple times. The token retains existing node identities. Format is `NODENAME:DATACENTER`.
2023-03-01 20:00:37 +00:00
- `-policy-id=<value>` - ID of a policy to use for this token. Overwrites existing policies. May be specified multiple times.
- `-policy-name=<value>` - Name of a policy to use for this token. Overwrites existing policies. May be specified multiple times.
~> `-policy-id` and `-policy-name` will overwrite existing token policies. Use `-append-policy-id` or `-append-policy-name` to retain existing policies.
- `-append-policy-id=<value>` - ID of policy to be added for this token. The token retains existing policies. May be specified multiple times.
- `-append-policy-name=<value>` - Name of a policy to be added for this token. The token retains existing policies. May be specified multiple times.
- `-role-id=<value>` - ID of a role to use for this token. Overwrites existing roles. May be specified multiple times.
- `-role-name=<value>` - Name of a role to use for this token. Overwrites existing roles. May be specified multiple times.
2019-05-01 21:11:23 +00:00
2023-03-01 20:00:37 +00:00
~> `-role-id` and `-role-name` will overwrite existing roles. Use `-append-role-id` or `-append-role-name` to retain the existing roles.
2019-05-01 21:11:23 +00:00
2023-03-01 20:00:37 +00:00
- `-append-role-id=<value>` - ID of a role to add to this token. The token retains existing roles. May be specified multiple times.
2019-05-01 21:11:23 +00:00
2023-03-01 20:00:37 +00:00
- `-append-role-name=<value>` - Name of a role to add to this token. The token retains existing roles. May be specified multiple times.
2019-05-01 21:11:23 +00:00
2020-04-07 18:55:19 +00:00
- `-service-identity=<value>` - Name of a service identity to use for this
2023-03-06 15:00:39 +00:00
token. Overwrites existing service identities. May be specified multiple times. Format is the `SERVICENAME` or
2019-05-01 21:11:23 +00:00
`SERVICENAME:DATACENTER1,DATACENTER2,...`
2023-03-06 15:00:39 +00:00
- `-append-service-identity=<value>` - Name of a service identity to add to this
token. May be specified multiple times. The token retains existing service identities.
Format is the `SERVICENAME` or `SERVICENAME:DATACENTER1,DATACENTER2,...`
2020-04-07 18:55:19 +00:00
- `-format={pretty|json}` - Command output format. The default value is `pretty`.
2020-03-26 16:03:22 +00:00
2019-12-06 16:14:56 +00:00
#### Enterprise Options
2022-07-27 06:17:11 +00:00
@include 'http_api_partition_options.mdx'
2020-04-07 18:55:19 +00:00
@include 'http_api_namespace_options.mdx'
2019-12-06 16:14:56 +00:00
2022-07-27 06:17:11 +00:00
#### API Options
@include 'http_api_options_client.mdx'
@include 'http_api_options_server.mdx'
2021-12-15 01:55:21 +00:00
2019-05-01 21:11:23 +00:00
## Examples
Update the anonymous token:
2020-05-19 18:32:38 +00:00
```shell-session
2019-05-01 21:11:23 +00:00
$ consul acl token update -id anonymous -policy-id 06acc
Token updated successfully.
AccessorID: 00000000-0000-0000-0000-000000000002
SecretID: anonymous
Description: Anonymous Token
Local: false
Create Time: 0001-01-01 00:00:00 +0000 UTC
Policies:
06acc965-df4b-5a99-58cb-3250930c6324 - node-services-read
```
Update a token description and take the policies from the existing token:
2020-05-19 18:32:38 +00:00
```shell-session
2019-05-01 21:11:23 +00:00
$ consul acl token update -id 986193 -description "WonderToken" -merge-policies
Token updated successfully.
AccessorID: 986193b5-e2b5-eb26-6264-b524ea60cc6d
SecretID: ec15675e-2999-d789-832e-8c4794daa8d7
Description: WonderToken
Local: false
Create Time: 2018-10-22 15:33:39.01789 -0400 EDT
Policies:
06acc965-df4b-5a99-58cb-3250930c6324 - node-services-read
```