consul/vendor/github.com/hashicorp
Hans Hasselberg a932aafc91
add primary keys to list keyring (#8522)
During gossip encryption key rotation it would be nice to be able to see if all nodes are using the same key. This PR adds another field to the json response from `GET v1/operator/keyring` which lists the primary keys in use per dc. That way an operator can tell when a key was successfully setup as primary key.

Based on https://github.com/hashicorp/serf/pull/611 to add primary key to list keyring output:

```json
[
  {
    "WAN": true,
    "Datacenter": "dc2",
    "Segment": "",
    "Keys": {
      "0OuM4oC3Os18OblWiBbZUaHA7Hk+tNs/6nhNYtaNduM=": 6,
      "SINm887hKTzmMWeBNKTJReaTLX3mBEJKriDyt88Ad+g=": 6
    },
    "PrimaryKeys": {
      "SINm887hKTzmMWeBNKTJReaTLX3mBEJKriDyt88Ad+g=": 6
    },
    "NumNodes": 6
  },
  {
    "WAN": false,
    "Datacenter": "dc2",
    "Segment": "",
    "Keys": {
      "0OuM4oC3Os18OblWiBbZUaHA7Hk+tNs/6nhNYtaNduM=": 8,
      "SINm887hKTzmMWeBNKTJReaTLX3mBEJKriDyt88Ad+g=": 8
    },
    "PrimaryKeys": {
      "SINm887hKTzmMWeBNKTJReaTLX3mBEJKriDyt88Ad+g=": 8
    },
    "NumNodes": 8
  },
  {
    "WAN": false,
    "Datacenter": "dc1",
    "Segment": "",
    "Keys": {
      "0OuM4oC3Os18OblWiBbZUaHA7Hk+tNs/6nhNYtaNduM=": 3,
      "SINm887hKTzmMWeBNKTJReaTLX3mBEJKriDyt88Ad+g=": 8
    },
    "PrimaryKeys": {
      "SINm887hKTzmMWeBNKTJReaTLX3mBEJKriDyt88Ad+g=": 8
    },
    "NumNodes": 8
  }
]
```

I intentionally did not change the CLI output because I didn't find a good way of displaying this information. There are a couple of options that we could implement later:
* add a flag to show the primary keys
* add a flag to show json output

Fixes #3393.
2020-08-18 09:50:24 +02:00
..
errwrap
go-bexpr
go-checkpoint
go-cleanhttp
go-connlimit gossip: Avoid issue where two unique leave events for the same node could lead to infinite rebroadcast storms (#8343) 2020-07-21 15:48:10 -05:00
go-discover Update go-discover dependency (#7731) 2020-05-04 10:59:48 -04:00
go-hclog Allow users to configure either unstructured or JSON logging (#7130) 2020-01-28 17:50:41 -06:00
go-immutable-radix vendor: Update github.com/armon/go-metrics to v0.3.3 2020-07-23 11:37:33 -07:00
go-memdb Update go-memdb and go-lru dependencies 2020-06-16 13:00:28 -04:00
go-msgpack
go-multierror agent: don't let left nodes hold onto their node-id (#7747) 2020-05-04 18:39:08 +02:00
go-raftchunking
go-retryablehttp
go-rootcerts api: add option to set TLS options in-memory for API client (#7093) 2020-01-28 11:54:49 +01:00
go-sockaddr
go-syslog
go-uuid acl: add auth method for JWTs (#7846) 2020-05-11 20:59:29 -05:00
go-version Update github.com/joyent/triton-go to latest 2020-04-16 12:34:29 -04:00
golang-lru Update go-memdb and go-lru dependencies 2020-06-16 13:00:28 -04:00
hcl
hil
mdns
memberlist agent: don't let left nodes hold onto their node-id (#7747) 2020-05-04 18:39:08 +02:00
net-rpc-msgpackrpc
raft raft: update raft to v1.1.2 (#7079) 2020-01-20 13:58:02 +01:00
raft-boltdb
serf add primary keys to list keyring (#8522) 2020-08-18 09:50:24 +02:00
vault
vic
yamux