Enchance read-alias and read-aliases keystore commands

In  core elytron security

Overview

Elytron keystore expose `read` commands to access content:
* read-alias
* read-aliases
There are two problems with those commands. The `read-alias` command is too verbose by default. When alias is displayed after read command, output include hex format of public-key and encoded fields. This is usually not something required if one inspects key and it clouds output with dump of unreadable string of hex digits.
Second problem is that read-aliases is in fact "read-aliases-names". In order to read content of keystore one has to read alias names with `read-aliases` and issue `read-alias` for each name. To make it more user friendly, simple changes are required:
* VERBOSE - new parameter for both commands. Default value would be `true`. This parameter control inclusion of bulk hex fields of key(public-key and encoded)
* RECURSIVE - new parameter for `read-aliases`. Default value `false`. If set otherwise, `read-aliases` will read recurse into keys, displaying more than names.

Issue Metadata

QE Contacts

Testing By

[ ] Engineering

[X] QE

Affected Projects or Components

  • wildfly-core

Other Interested Projects

n/a

Requirements

Hard Requirements

Make read commands of elytron keystore tad more user friendly.

Nice-to-Have Requirements

Non-Requirements

Design

Preparation:

/subsystem=elytron/key-store=serverKS:add(path=server.keystore.jsk,relative-to=jboss.server.config.dir,credential-reference={clear-text=secret}, type=JKS)
cd subsystem=elytron/key-store=serverKS
:generate-key-pair(alias=server1,distinguished-name="CN=www.example.com")
[standalone@localhost:9990 key-store=serverKS] :generate-key-pair(alias=server2,distinguished-name="CN=www.example.com")
[standalone@localhost:9990 key-store=serverKS] :generate-key-pair(alias=backup,distinguished-name="CN=www.example.com")

read-aliases - no change in default output.

[standalone@localhost:9990 key-store=serverKS] :read-aliases
{
    "outcome" => "success",
    "result" => [
        "backup",
        "server2",
        "server1"
    ]
}

read-aliases - inclusion of single parameter does not change output.

[standalone@localhost:9990 key-store=serverKS] :read-aliases(verbose=true)
{
    "outcome" => "success",
    "result" => [
        "backup",
        "server2",
        "server1"
    ]
}

read-aliases - recursive read, with hex field included.

[standalone@localhost:9990 key-store=serverKS] :read-aliases(recursive=true,verbose=true)
{
    "outcome" => "success",
    "result" => {
        "backup" => {
            "alias" => "backup",
            "entry-type" => "PrivateKeyEntry",
            "creation-date" => "2019-05-27T08:29:42.093+0200",
            "certificate-chain" => [{
                "type" => "X.509",
                "algorithm" => "DSA",
                "format" => "X.509",
                "public-key" => "30:82:03:42:30:82:02:35:06:07:2a:86:48:ce:38:04:01:30:82:02:28:02:82:01:01:00:8f:79:35:d9:b9:aa:e9:bf:ab:ed:88:7a:cf:49:51:b6:f3:2e:c5:9e:3b:af:37:18:e8:ea:c4:96:1f:3e:fd:36:06:e7:43:51:a9:c4:18:33:39:b8:09:e7:c
2:ae:1c:53:9b:a7:47:5b:85:d0:11:ad:b8:b4:79:87:75:49:84:69:5c:ac:0e:8f:14:b3:36:08:28:a2:2f:fa:27:11:0a:3d:62:a9:93:45:34:09:a0:fe:69:6c:46:58:f8:4b:dd:20:81:9c:37:09:a0:10:57:b1:95:ad:cd:00:23:3d:ba:54:84:b6:29:1f:9d:64:8e:f8:83:44:86:77:97:9c
:ec:04:b4:34:a6:ac:2e:75:e9:98:5d:e2:3d:b0:29:2f:c1:11:8c:9f:fa:9d:81:81:e7:33:8d:b7:92:b7:30:d7:b9:e3:49:59:2f:68:09:98:72:15:39:15:ea:3d:6b:8b:46:53:c6:33:45:8f:80:3b:32:a4:c2:e0:f2:72:90:25:6e:4e:3f:8a:3b:08:38:a1:c4:50:e4:e1:8c:1a:29:a3:7d:
df:5e:a1:43:de:4b:66:ff:04:90:3e:d5:cf:16:23:e1:58:d4:87:c6:08:e9:7f:21:1c:d8:1d:ca:23:cb:6e:38:07:65:f8:22:e3:42:be:48:4c:05:76:39:39:60:1c:d6:67:02:1d:00:ba:f6:96:a6:85:78:f7:df:de:e7:fa:67:c9:77:c7:85:ef:32:b2:33:ba:e5:80:c0:bc:d5:69:5d:02:8
2:01:00:16:a6:5c:58:20:48:50:70:4e:75:02:a3:97:57:04:0d:34:da:3a:34:78:c1:54:d4:e4:a5:c0:2d:24:2e:e0:4f:96:e6:1e:4b:d0:90:4a:bd:ac:8f:37:ee:b1:e0:9f:31:82:d2:3c:90:43:cb:64:2f:88:00:41:60:ed:f9:ca:09:b3:20:76:a7:9c:32:a6:27:f2:47:3e:91:87:9b:a2
:c4:e7:44:bd:20:81:54:4c:b5:5b:80:2c:36:8d:1f:a8:3e:d4:89:e9:4e:0f:a0:68:8e:32:42:8a:5c:78:c4:78:c6:8d:05:27:b7:1c:9a:3a:bb:0b:0b:e1:2c:44:68:96:39:e7:d3:ce:74:db:10:1a:65:aa:2b:87:f6:4c:68:26:db:3e:c7:2f:4b:55:99:83:4b:b4:ed:b0:2f:7c:90:e9:a4:
96:d3:a5:5d:53:5b:eb:fc:45:d4:f6:19:f6:3f:3d:ed:bb:87:39:25:c2:f2:24:e0:77:31:29:6d:a8:87:ec:1e:47:48:f8:7e:fb:5f:de:b7:54:84:31:6b:22:32:de:e5:53:dd:af:02:11:2b:0d:1f:02:da:30:97:32:24:fe:27:ae:da:8b:9d:4b:29:22:d9:ba:8b:e3:9e:d9:e1:03:a6:3c:5
2:81:0b:c6:88:b7:e2:ed:43:16:e1:ef:17:db:de:03:82:01:05:00:02:82:01:00:78:a8:7a:44:d6:fd:07:8e:70:2b:f8:0b:32:2f:69:eb:71:54:8e:f2:29:93:84:11:f9:76:27:6f:e7:17:1e:d1:ff:2b:9a:99:51:3b:b6:ef:72:a1:41:f3:5a:19:91:40:2b:22:73:75:96:7e:75:68:f0:37
:a9:2e:60:77:85:5a:d0:f7:30:60:e6:fc:ef:16:b6:6c:95:d8:0a:72:10:ab:42:6d:59:6b:89:d6:83:b6:fa:14:82:79:ef:b9:58:95:f7:e7:30:b9:0c:db:1e:db:12:de:8b:b9:67:b4:62:a0:fe:3f:f0:01:15:3f:02:4a:b4:a2:c5:66:12:06:d1:2b:f7:c1:ce:83:31:e5:4c:95:1a:57:a6:
ec:6e:48:c7:00:84:fa:7e:90:b2:18:4e:35:32:4c:12:60:69:a8:3e:67:8e:9a:a3:6e:57:ca:90:b1:f2:09:43:2b:d2:7a:30:aa:3a:57:0a:58:fb:e8:c5:e6:ef:93:f1:46:5a:17:c4:4b:08:81:b3:f0:36:3e:61:5c:f6:f6:9d:23:93:d3:02:2b:14:96:77:d1:4a:2a:67:69:5e:0b:63:f9:7
9:62:ba:34:61:b5:89:0c:62:25:f6:2b:58:2c:32:d1:89:a9:0b:d8:22:84:4a:bb:84:d1:87:39:0b:23:f4:b9:0a:dd:fc:a9",
                "sha-1-digest" => "4d:a9:16:f9:6d:39:da:03:a1:f0:56:bd:58:46:6c:12:16:59:72:f0",
                "sha-256-digest" => "73:ea:31:e9:9d:de:38:1a:66:06:e7:66:a6:7d:fe:5d:b6:95:02:58:4f:8e:e0:01:19:ee:90:96:e0:18:2d:a1",
                "encoded" => "30:82:04:34:30:82:03:e2:a0:03:02:01:02:02:09:00:c9:97:3f:38:fe:50:17:2c:30:0b:06:09:60:86:48:01:65:03:04:03:02:30:1a:31:18:30:16:06:03:55:04:03:13:0f:77:77:77:2e:65:78:61:6d:70:6c:65:2e:63:6f:6d:30:22:18:0f:32:30:3
1:39:30:35:32:37:30:36:32:39:34:32:5a:18:0f:32:30:31:39:30:38:32:35:30:36:32:39:34:32:5a:30:1a:31:18:30:16:06:03:55:04:03:13:0f:77:77:77:2e:65:78:61:6d:70:6c:65:2e:63:6f:6d:30:82:03:42:30:82:02:35:06:07:2a:86:48:ce:38:04:01:30:82:02:28:02:82:01
:01:00:8f:79:35:d9:b9:aa:e9:bf:ab:ed:88:7a:cf:49:51:b6:f3:2e:c5:9e:3b:af:37:18:e8:ea:c4:96:1f:3e:fd:36:06:e7:43:51:a9:c4:18:33:39:b8:09:e7:c2:ae:1c:53:9b:a7:47:5b:85:d0:11:ad:b8:b4:79:87:75:49:84:69:5c:ac:0e:8f:14:b3:36:08:28:a2:2f:fa:27:11:0a:
3d:62:a9:93:45:34:09:a0:fe:69:6c:46:58:f8:4b:dd:20:81:9c:37:09:a0:10:57:b1:95:ad:cd:00:23:3d:ba:54:84:b6:29:1f:9d:64:8e:f8:83:44:86:77:97:9c:ec:04:b4:34:a6:ac:2e:75:e9:98:5d:e2:3d:b0:29:2f:c1:11:8c:9f:fa:9d:81:81:e7:33:8d:b7:92:b7:30:d7:b9:e3:4
9:59:2f:68:09:98:72:15:39:15:ea:3d:6b:8b:46:53:c6:33:45:8f:80:3b:32:a4:c2:e0:f2:72:90:25:6e:4e:3f:8a:3b:08:38:a1:c4:50:e4:e1:8c:1a:29:a3:7d:df:5e:a1:43:de:4b:66:ff:04:90:3e:d5:cf:16:23:e1:58:d4:87:c6:08:e9:7f:21:1c:d8:1d:ca:23:cb:6e:38:07:65:f8
:22:e3:42:be:48:4c:05:76:39:39:60:1c:d6:67:02:1d:00:ba:f6:96:a6:85:78:f7:df:de:e7:fa:67:c9:77:c7:85:ef:32:b2:33:ba:e5:80:c0:bc:d5:69:5d:02:82:01:00:16:a6:5c:58:20:48:50:70:4e:75:02:a3:97:57:04:0d:34:da:3a:34:78:c1:54:d4:e4:a5:c0:2d:24:2e:e0:4f:
96:e6:1e:4b:d0:90:4a:bd:ac:8f:37:ee:b1:e0:9f:31:82:d2:3c:90:43:cb:64:2f:88:00:41:60:ed:f9:ca:09:b3:20:76:a7:9c:32:a6:27:f2:47:3e:91:87:9b:a2:c4:e7:44:bd:20:81:54:4c:b5:5b:80:2c:36:8d:1f:a8:3e:d4:89:e9:4e:0f:a0:68:8e:32:42:8a:5c:78:c4:78:c6:8d:0
5:27:b7:1c:9a:3a:bb:0b:0b:e1:2c:44:68:96:39:e7:d3:ce:74:db:10:1a:65:aa:2b:87:f6:4c:68:26:db:3e:c7:2f:4b:55:99:83:4b:b4:ed:b0:2f:7c:90:e9:a4:96:d3:a5:5d:53:5b:eb:fc:45:d4:f6:19:f6:3f:3d:ed:bb:87:39:25:c2:f2:24:e0:77:31:29:6d:a8:87:ec:1e:47:48:f8
:7e:fb:5f:de:b7:54:84:31:6b:22:32:de:e5:53:dd:af:02:11:2b:0d:1f:02:da:30:97:32:24:fe:27:ae:da:8b:9d:4b:29:22:d9:ba:8b:e3:9e:d9:e1:03:a6:3c:52:81:0b:c6:88:b7:e2:ed:43:16:e1:ef:17:db:de:03:82:01:05:00:02:82:01:00:78:a8:7a:44:d6:fd:07:8e:70:2b:f8:
0b:32:2f:69:eb:71:54:8e:f2:29:93:84:11:f9:76:27:6f:e7:17:1e:d1:ff:2b:9a:99:51:3b:b6:ef:72:a1:41:f3:5a:19:91:40:2b:22:73:75:96:7e:75:68:f0:37:a9:2e:60:77:85:5a:d0:f7:30:60:e6:fc:ef:16:b6:6c:95:d8:0a:72:10:ab:42:6d:59:6b:89:d6:83:b6:fa:14:82:79:e
f:b9:58:95:f7:e7:30:b9:0c:db:1e:db:12:de:8b:b9:67:b4:62:a0:fe:3f:f0:01:15:3f:02:4a:b4:a2:c5:66:12:06:d1:2b:f7:c1:ce:83:31:e5:4c:95:1a:57:a6:ec:6e:48:c7:00:84:fa:7e:90:b2:18:4e:35:32:4c:12:60:69:a8:3e:67:8e:9a:a3:6e:57:ca:90:b1:f2:09:43:2b:d2:7a
:30:aa:3a:57:0a:58:fb:e8:c5:e6:ef:93:f1:46:5a:17:c4:4b:08:81:b3:f0:36:3e:61:5c:f6:f6:9d:23:93:d3:02:2b:14:96:77:d1:4a:2a:67:69:5e:0b:63:f9:79:62:ba:34:61:b5:89:0c:62:25:f6:2b:58:2c:32:d1:89:a9:0b:d8:22:84:4a:bb:84:d1:87:39:0b:23:f4:b9:0a:dd:fc:
a9:a3:21:30:1f:30:1d:06:03:55:1d:0e:04:16:04:14:5e:0d:77:0b:55:63:c1:20:8b:a1:a6:2c:eb:f6:dc:61:2b:7f:ec:74:30:0b:06:09:60:86:48:01:65:03:04:03:02:03:3f:00:30:3c:02:1c:4f:1a:e9:ea:c2:0a:23:21:91:e8:aa:58:ce:df:b8:a1:ff:02:90:cb:33:b1:99:b2:ca:1
6:f6:5a:02:1c:38:2a:19:17:fa:c3:a1:1a:dd:bb:fe:96:e9:3a:6d:fa:e9:a6:63:4c:9f:fb:db:ec:dc:49:1e:35",
                "subject" => "CN=www.example.com",
                "issuer" => "CN=www.example.com",
                "not-before" => "2019-05-27T08:29:42.000+0200",
                "not-after" => "2019-08-25T08:29:42.000+0200",
                "serial-number" => "c9:97:3f:38:fe:50:17:2c",
                "signature-algorithm" => "SHA256withDSA",
                "signature" => "30:3c:02:1c:4f:1a:e9:ea:c2:0a:23:21:91:e8:aa:58:ce:df:b8:a1:ff:02:90:cb:33:b1:99:b2:ca:16:f6:5a:02:1c:38:2a:19:17:fa:c3:a1:1a:dd:bb:fe:96:e9:3a:6d:fa:e9:a6:63:4c:9f:fb:db:ec:dc:49:1e:35",
                "version" => "v3"
            }]
        },
        "server2" => {
            "alias" => "server2",
            "entry-type" => "PrivateKeyEntry",
            "creation-date" => "2019-05-27T08:29:35.118+0200",
            "certificate-chain" => [{
                "type" => "X.509",
                "algorithm" => "DSA",
                "format" => "X.509",
                "public-key" => "30:82:03:42:30:82:02:35:06:07:2a:86:48:ce:38:04:01:30:82:02:28:02:82:01:01:00:8f:79:35:d9:b9:aa:e9:bf:ab:ed:88:7a:cf:49:51:b6:f3:2e:c5:9e:3b:af:37:18:e8:ea:c4:96:1f:3e:fd:36:06:e7:43:51:a9:c4:18:33:39:b8:09:e7:c
2:ae:1c:53:9b:a7:47:5b:85:d0:11:ad:b8:b4:79:87:75:49:84:69:5c:ac:0e:8f:14:b3:36:08:28:a2:2f:fa:27:11:0a:3d:62:a9:93:45:34:09:a0:fe:69:6c:46:58:f8:4b:dd:20:81:9c:37:09:a0:10:57:b1:95:ad:cd:00:23:3d:ba:54:84:b6:29:1f:9d:64:8e:f8:83:44:86:77:97:9c
:ec:04:b4:34:a6:ac:2e:75:e9:98:5d:e2:3d:b0:29:2f:c1:11:8c:9f:fa:9d:81:81:e7:33:8d:b7:92:b7:30:d7:b9:e3:49:59:2f:68:09:98:72:15:39:15:ea:3d:6b:8b:46:53:c6:33:45:8f:80:3b:32:a4:c2:e0:f2:72:90:25:6e:4e:3f:8a:3b:08:38:a1:c4:50:e4:e1:8c:1a:29:a3:7d:
df:5e:a1:43:de:4b:66:ff:04:90:3e:d5:cf:16:23:e1:58:d4:87:c6:08:e9:7f:21:1c:d8:1d:ca:23:cb:6e:38:07:65:f8:22:e3:42:be:48:4c:05:76:39:39:60:1c:d6:67:02:1d:00:ba:f6:96:a6:85:78:f7:df:de:e7:fa:67:c9:77:c7:85:ef:32:b2:33:ba:e5:80:c0:bc:d5:69:5d:02:8
2:01:00:16:a6:5c:58:20:48:50:70:4e:75:02:a3:97:57:04:0d:34:da:3a:34:78:c1:54:d4:e4:a5:c0:2d:24:2e:e0:4f:96:e6:1e:4b:d0:90:4a:bd:ac:8f:37:ee:b1:e0:9f:31:82:d2:3c:90:43:cb:64:2f:88:00:41:60:ed:f9:ca:09:b3:20:76:a7:9c:32:a6:27:f2:47:3e:91:87:9b:a2
:c4:e7:44:bd:20:81:54:4c:b5:5b:80:2c:36:8d:1f:a8:3e:d4:89:e9:4e:0f:a0:68:8e:32:42:8a:5c:78:c4:78:c6:8d:05:27:b7:1c:9a:3a:bb:0b:0b:e1:2c:44:68:96:39:e7:d3:ce:74:db:10:1a:65:aa:2b:87:f6:4c:68:26:db:3e:c7:2f:4b:55:99:83:4b:b4:ed:b0:2f:7c:90:e9:a4:
96:d3:a5:5d:53:5b:eb:fc:45:d4:f6:19:f6:3f:3d:ed:bb:87:39:25:c2:f2:24:e0:77:31:29:6d:a8:87:ec:1e:47:48:f8:7e:fb:5f:de:b7:54:84:31:6b:22:32:de:e5:53:dd:af:02:11:2b:0d:1f:02:da:30:97:32:24:fe:27:ae:da:8b:9d:4b:29:22:d9:ba:8b:e3:9e:d9:e1:03:a6:3c:5
2:81:0b:c6:88:b7:e2:ed:43:16:e1:ef:17:db:de:03:82:01:05:00:02:82:01:00:05:92:0b:e0:d4:ce:03:3a:3d:74:3a:6e:56:dc:fd:a1:2a:34:f4:c2:1c:60:2b:a1:3e:4a:7f:85:e0:5d:d5:59:b1:f5:dc:b2:36:d6:ee:bd:0b:de:5e:ac:0e:fc:58:37:08:d3:ed:f7:cd:ae:e0:6d:ee:bf
:4a:f0:4f:04:3d:04:89:65:cc:bc:55:40:fc:bd:93:ea:08:55:3c:39:d0:56:37:6d:10:44:de:44:56:50:43:a2:75:94:2f:21:10:f0:ff:9b:97:29:f1:8a:5c:7e:32:7d:04:eb:21:4f:81:cc:cb:5e:8d:f1:19:7b:f0:27:fb:87:b8:be:65:d4:2f:c2:f3:18:1d:fe:ad:12:e3:7d:fb:36:2f:
92:41:9d:b4:0c:e6:8a:d8:7f:cc:3a:d6:bd:27:e4:4c:58:bc:2e:e4:9c:eb:f4:59:b4:1f:2a:c6:a7:93:cf:c6:f2:74:1e:3d:9d:a9:4c:f4:e8:19:c1:b0:ba:c9:b3:c5:76:55:53:ac:0a:8a:65:c5:12:e6:1f:6e:69:08:ea:75:a4:f7:7f:29:10:3c:6e:7b:37:26:55:48:06:7d:5c:c8:8a:9
6:47:7f:96:56:d4:81:2c:ec:b7:82:41:d8:f4:a2:a0:bf:09:20:5a:e8:8f:f8:c4:cb:f9:4d:5e:be:66:6d:e6:cc:cc:b5:d5",
                "sha-1-digest" => "4e:f9:b4:b4:b3:73:71:36:55:c9:fd:51:d8:62:72:b5:1b:68:00:db",
                "sha-256-digest" => "38:a7:22:39:7f:2a:c2:ff:05:71:07:92:ac:b2:1d:b9:e2:0a:f0:b3:46:bf:f8:98:53:7e:d8:27:2d:61:e0:69",
                "encoded" => "30:82:04:35:30:82:03:e2:a0:03:02:01:02:02:09:00:f2:b1:8f:7e:b1:e2:81:07:30:0b:06:09:60:86:48:01:65:03:04:03:02:30:1a:31:18:30:16:06:03:55:04:03:13:0f:77:77:77:2e:65:78:61:6d:70:6c:65:2e:63:6f:6d:30:22:18:0f:32:30:3
1:39:30:35:32:37:30:36:32:39:33:35:5a:18:0f:32:30:31:39:30:38:32:35:30:36:32:39:33:35:5a:30:1a:31:18:30:16:06:03:55:04:03:13:0f:77:77:77:2e:65:78:61:6d:70:6c:65:2e:63:6f:6d:30:82:03:42:30:82:02:35:06:07:2a:86:48:ce:38:04:01:30:82:02:28:02:82:01
:01:00:8f:79:35:d9:b9:aa:e9:bf:ab:ed:88:7a:cf:49:51:b6:f3:2e:c5:9e:3b:af:37:18:e8:ea:c4:96:1f:3e:fd:36:06:e7:43:51:a9:c4:18:33:39:b8:09:e7:c2:ae:1c:53:9b:a7:47:5b:85:d0:11:ad:b8:b4:79:87:75:49:84:69:5c:ac:0e:8f:14:b3:36:08:28:a2:2f:fa:27:11:0a:
3d:62:a9:93:45:34:09:a0:fe:69:6c:46:58:f8:4b:dd:20:81:9c:37:09:a0:10:57:b1:95:ad:cd:00:23:3d:ba:54:84:b6:29:1f:9d:64:8e:f8:83:44:86:77:97:9c:ec:04:b4:34:a6:ac:2e:75:e9:98:5d:e2:3d:b0:29:2f:c1:11:8c:9f:fa:9d:81:81:e7:33:8d:b7:92:b7:30:d7:b9:e3:4
9:59:2f:68:09:98:72:15:39:15:ea:3d:6b:8b:46:53:c6:33:45:8f:80:3b:32:a4:c2:e0:f2:72:90:25:6e:4e:3f:8a:3b:08:38:a1:c4:50:e4:e1:8c:1a:29:a3:7d:df:5e:a1:43:de:4b:66:ff:04:90:3e:d5:cf:16:23:e1:58:d4:87:c6:08:e9:7f:21:1c:d8:1d:ca:23:cb:6e:38:07:65:f8
:22:e3:42:be:48:4c:05:76:39:39:60:1c:d6:67:02:1d:00:ba:f6:96:a6:85:78:f7:df:de:e7:fa:67:c9:77:c7:85:ef:32:b2:33:ba:e5:80:c0:bc:d5:69:5d:02:82:01:00:16:a6:5c:58:20:48:50:70:4e:75:02:a3:97:57:04:0d:34:da:3a:34:78:c1:54:d4:e4:a5:c0:2d:24:2e:e0:4f:
96:e6:1e:4b:d0:90:4a:bd:ac:8f:37:ee:b1:e0:9f:31:82:d2:3c:90:43:cb:64:2f:88:00:41:60:ed:f9:ca:09:b3:20:76:a7:9c:32:a6:27:f2:47:3e:91:87:9b:a2:c4:e7:44:bd:20:81:54:4c:b5:5b:80:2c:36:8d:1f:a8:3e:d4:89:e9:4e:0f:a0:68:8e:32:42:8a:5c:78:c4:78:c6:8d:0
5:27:b7:1c:9a:3a:bb:0b:0b:e1:2c:44:68:96:39:e7:d3:ce:74:db:10:1a:65:aa:2b:87:f6:4c:68:26:db:3e:c7:2f:4b:55:99:83:4b:b4:ed:b0:2f:7c:90:e9:a4:96:d3:a5:5d:53:5b:eb:fc:45:d4:f6:19:f6:3f:3d:ed:bb:87:39:25:c2:f2:24:e0:77:31:29:6d:a8:87:ec:1e:47:48:f8
:7e:fb:5f:de:b7:54:84:31:6b:22:32:de:e5:53:dd:af:02:11:2b:0d:1f:02:da:30:97:32:24:fe:27:ae:da:8b:9d:4b:29:22:d9:ba:8b:e3:9e:d9:e1:03:a6:3c:52:81:0b:c6:88:b7:e2:ed:43:16:e1:ef:17:db:de:03:82:01:05:00:02:82:01:00:05:92:0b:e0:d4:ce:03:3a:3d:74:3a:
6e:56:dc:fd:a1:2a:34:f4:c2:1c:60:2b:a1:3e:4a:7f:85:e0:5d:d5:59:b1:f5:dc:b2:36:d6:ee:bd:0b:de:5e:ac:0e:fc:58:37:08:d3:ed:f7:cd:ae:e0:6d:ee:bf:4a:f0:4f:04:3d:04:89:65:cc:bc:55:40:fc:bd:93:ea:08:55:3c:39:d0:56:37:6d:10:44:de:44:56:50:43:a2:75:94:2
f:21:10:f0:ff:9b:97:29:f1:8a:5c:7e:32:7d:04:eb:21:4f:81:cc:cb:5e:8d:f1:19:7b:f0:27:fb:87:b8:be:65:d4:2f:c2:f3:18:1d:fe:ad:12:e3:7d:fb:36:2f:92:41:9d:b4:0c:e6:8a:d8:7f:cc:3a:d6:bd:27:e4:4c:58:bc:2e:e4:9c:eb:f4:59:b4:1f:2a:c6:a7:93:cf:c6:f2:74:1e
:3d:9d:a9:4c:f4:e8:19:c1:b0:ba:c9:b3:c5:76:55:53:ac:0a:8a:65:c5:12:e6:1f:6e:69:08:ea:75:a4:f7:7f:29:10:3c:6e:7b:37:26:55:48:06:7d:5c:c8:8a:96:47:7f:96:56:d4:81:2c:ec:b7:82:41:d8:f4:a2:a0:bf:09:20:5a:e8:8f:f8:c4:cb:f9:4d:5e:be:66:6d:e6:cc:cc:b5:
d5:a3:21:30:1f:30:1d:06:03:55:1d:0e:04:16:04:14:c9:8e:67:5d:7c:d3:5c:7b:5c:b5:9a:7e:ef:a0:c6:00:17:d1:5b:df:30:0b:06:09:60:86:48:01:65:03:04:03:02:03:40:00:30:3d:02:1d:00:b8:c5:7e:32:d4:d0:89:da:5d:aa:3a:ad:a7:fd:ea:43:15:7a:97:72:b9:5f:57:cf:9
b:87:23:03:02:1c:43:0c:c2:da:ab:20:cb:9f:2b:e5:42:d3:55:ad:b7:38:21:ff:9d:83:4f:c7:20:30:d2:0a:0b:b5",
                "subject" => "CN=www.example.com",
                "issuer" => "CN=www.example.com",
                "not-before" => "2019-05-27T08:29:35.000+0200",
                "not-after" => "2019-08-25T08:29:35.000+0200",
                "serial-number" => "f2:b1:8f:7e:b1:e2:81:07",
                "signature-algorithm" => "SHA256withDSA",
                "signature" => "30:3d:02:1d:00:b8:c5:7e:32:d4:d0:89:da:5d:aa:3a:ad:a7:fd:ea:43:15:7a:97:72:b9:5f:57:cf:9b:87:23:03:02:1c:43:0c:c2:da:ab:20:cb:9f:2b:e5:42:d3:55:ad:b7:38:21:ff:9d:83:4f:c7:20:30:d2:0a:0b:b5",
                "version" => "v3"
            }]
        },
        "server1" => {
            "alias" => "server1",
            "entry-type" => "PrivateKeyEntry",
            "creation-date" => "2019-05-27T08:29:31.156+0200",
            "certificate-chain" => [{
                "type" => "X.509",
                "algorithm" => "DSA",
                "format" => "X.509",
                "public-key" => "30:82:03:42:30:82:02:35:06:07:2a:86:48:ce:38:04:01:30:82:02:28:02:82:01:01:00:8f:79:35:d9:b9:aa:e9:bf:ab:ed:88:7a:cf:49:51:b6:f3:2e:c5:9e:3b:af:37:18:e8:ea:c4:96:1f:3e:fd:36:06:e7:43:51:a9:c4:18:33:39:b8:09:e7:c
2:ae:1c:53:9b:a7:47:5b:85:d0:11:ad:b8:b4:79:87:75:49:84:69:5c:ac:0e:8f:14:b3:36:08:28:a2:2f:fa:27:11:0a:3d:62:a9:93:45:34:09:a0:fe:69:6c:46:58:f8:4b:dd:20:81:9c:37:09:a0:10:57:b1:95:ad:cd:00:23:3d:ba:54:84:b6:29:1f:9d:64:8e:f8:83:44:86:77:97:9c
:ec:04:b4:34:a6:ac:2e:75:e9:98:5d:e2:3d:b0:29:2f:c1:11:8c:9f:fa:9d:81:81:e7:33:8d:b7:92:b7:30:d7:b9:e3:49:59:2f:68:09:98:72:15:39:15:ea:3d:6b:8b:46:53:c6:33:45:8f:80:3b:32:a4:c2:e0:f2:72:90:25:6e:4e:3f:8a:3b:08:38:a1:c4:50:e4:e1:8c:1a:29:a3:7d:
df:5e:a1:43:de:4b:66:ff:04:90:3e:d5:cf:16:23:e1:58:d4:87:c6:08:e9:7f:21:1c:d8:1d:ca:23:cb:6e:38:07:65:f8:22:e3:42:be:48:4c:05:76:39:39:60:1c:d6:67:02:1d:00:ba:f6:96:a6:85:78:f7:df:de:e7:fa:67:c9:77:c7:85:ef:32:b2:33:ba:e5:80:c0:bc:d5:69:5d:02:8
2:01:00:16:a6:5c:58:20:48:50:70:4e:75:02:a3:97:57:04:0d:34:da:3a:34:78:c1:54:d4:e4:a5:c0:2d:24:2e:e0:4f:96:e6:1e:4b:d0:90:4a:bd:ac:8f:37:ee:b1:e0:9f:31:82:d2:3c:90:43:cb:64:2f:88:00:41:60:ed:f9:ca:09:b3:20:76:a7:9c:32:a6:27:f2:47:3e:91:87:9b:a2
:c4:e7:44:bd:20:81:54:4c:b5:5b:80:2c:36:8d:1f:a8:3e:d4:89:e9:4e:0f:a0:68:8e:32:42:8a:5c:78:c4:78:c6:8d:05:27:b7:1c:9a:3a:bb:0b:0b:e1:2c:44:68:96:39:e7:d3:ce:74:db:10:1a:65:aa:2b:87:f6:4c:68:26:db:3e:c7:2f:4b:55:99:83:4b:b4:ed:b0:2f:7c:90:e9:a4:
96:d3:a5:5d:53:5b:eb:fc:45:d4:f6:19:f6:3f:3d:ed:bb:87:39:25:c2:f2:24:e0:77:31:29:6d:a8:87:ec:1e:47:48:f8:7e:fb:5f:de:b7:54:84:31:6b:22:32:de:e5:53:dd:af:02:11:2b:0d:1f:02:da:30:97:32:24:fe:27:ae:da:8b:9d:4b:29:22:d9:ba:8b:e3:9e:d9:e1:03:a6:3c:5
2:81:0b:c6:88:b7:e2:ed:43:16:e1:ef:17:db:de:03:82:01:05:00:02:82:01:00:7f:3d:31:7e:55:de:22:6b:0a:15:a1:f4:c7:aa:8e:a0:7f:ed:bc:dd:38:4d:44:6b:ac:06:bb:a0:21:53:cb:1b:dc:97:3d:3c:38:97:cb:6f:3e:76:07:91:46:21:34:2a:8d:02:52:98:a5:5a:2e:22:12:d6
:1a:72:6c:c1:5a:20:c0:7c:11:70:31:5f:09:07:cf:21:e1:4f:19:9f:b0:f7:83:af:10:15:46:46:3b:11:46:63:24:d6:44:be:ce:09:16:d9:4d:dd:49:73:23:5a:2c:12:40:19:12:dd:a7:f8:59:d2:5d:72:a5:9c:ab:42:f9:f6:77:4d:4d:c0:2a:d8:bc:fb:f8:ca:c3:6f:66:3c:28:c2:f4:
1e:b7:09:0b:ba:14:a8:09:9d:26:40:40:ba:ba:b5:ce:52:62:8d:dd:41:aa:d9:8f:d8:3f:e7:33:44:3a:40:fa:3a:de:28:93:83:e2:03:ac:b1:57:9d:7b:ac:4e:1b:0c:2f:2c:85:f0:64:3c:83:61:c0:47:1b:e5:70:ce:6d:dd:90:4a:28:59:b1:b5:34:54:d3:63:eb:f9:4a:2e:c1:92:d6:9
4:7d:f7:65:d0:44:57:2b:7a:64:d6:3a:7e:95:67:e0:95:55:b0:e0:0d:be:3a:3a:fb:5d:95:97:42:1c:48:f8:1c:d1:52:57",
                "sha-1-digest" => "5b:dd:a9:06:22:37:03:2e:d0:c8:43:07:38:23:0d:5e:66:cb:a0:a4",
                "sha-256-digest" => "e7:41:a2:bc:6d:32:50:09:96:24:9f:83:0d:ef:a4:cb:62:de:38:61:0c:28:c0:d7:a1:10:c2:b1:91:66:72:f2",
                "encoded" => "30:82:04:35:30:82:03:e2:a0:03:02:01:02:02:09:00:f0:2c:f7:ba:47:a2:33:c1:30:0b:06:09:60:86:48:01:65:03:04:03:02:30:1a:31:18:30:16:06:03:55:04:03:13:0f:77:77:77:2e:65:78:61:6d:70:6c:65:2e:63:6f:6d:30:22:18:0f:32:30:3
1:39:30:35:32:37:30:36:32:39:33:31:5a:18:0f:32:30:31:39:30:38:32:35:30:36:32:39:33:31:5a:30:1a:31:18:30:16:06:03:55:04:03:13:0f:77:77:77:2e:65:78:61:6d:70:6c:65:2e:63:6f:6d:30:82:03:42:30:82:02:35:06:07:2a:86:48:ce:38:04:01:30:82:02:28:02:82:01
:01:00:8f:79:35:d9:b9:aa:e9:bf:ab:ed:88:7a:cf:49:51:b6:f3:2e:c5:9e:3b:af:37:18:e8:ea:c4:96:1f:3e:fd:36:06:e7:43:51:a9:c4:18:33:39:b8:09:e7:c2:ae:1c:53:9b:a7:47:5b:85:d0:11:ad:b8:b4:79:87:75:49:84:69:5c:ac:0e:8f:14:b3:36:08:28:a2:2f:fa:27:11:0a:
3d:62:a9:93:45:34:09:a0:fe:69:6c:46:58:f8:4b:dd:20:81:9c:37:09:a0:10:57:b1:95:ad:cd:00:23:3d:ba:54:84:b6:29:1f:9d:64:8e:f8:83:44:86:77:97:9c:ec:04:b4:34:a6:ac:2e:75:e9:98:5d:e2:3d:b0:29:2f:c1:11:8c:9f:fa:9d:81:81:e7:33:8d:b7:92:b7:30:d7:b9:e3:4
9:59:2f:68:09:98:72:15:39:15:ea:3d:6b:8b:46:53:c6:33:45:8f:80:3b:32:a4:c2:e0:f2:72:90:25:6e:4e:3f:8a:3b:08:38:a1:c4:50:e4:e1:8c:1a:29:a3:7d:df:5e:a1:43:de:4b:66:ff:04:90:3e:d5:cf:16:23:e1:58:d4:87:c6:08:e9:7f:21:1c:d8:1d:ca:23:cb:6e:38:07:65:f8
:22:e3:42:be:48:4c:05:76:39:39:60:1c:d6:67:02:1d:00:ba:f6:96:a6:85:78:f7:df:de:e7:fa:67:c9:77:c7:85:ef:32:b2:33:ba:e5:80:c0:bc:d5:69:5d:02:82:01:00:16:a6:5c:58:20:48:50:70:4e:75:02:a3:97:57:04:0d:34:da:3a:34:78:c1:54:d4:e4:a5:c0:2d:24:2e:e0:4f:
96:e6:1e:4b:d0:90:4a:bd:ac:8f:37:ee:b1:e0:9f:31:82:d2:3c:90:43:cb:64:2f:88:00:41:60:ed:f9:ca:09:b3:20:76:a7:9c:32:a6:27:f2:47:3e:91:87:9b:a2:c4:e7:44:bd:20:81:54:4c:b5:5b:80:2c:36:8d:1f:a8:3e:d4:89:e9:4e:0f:a0:68:8e:32:42:8a:5c:78:c4:78:c6:8d:0
5:27:b7:1c:9a:3a:bb:0b:0b:e1:2c:44:68:96:39:e7:d3:ce:74:db:10:1a:65:aa:2b:87:f6:4c:68:26:db:3e:c7:2f:4b:55:99:83:4b:b4:ed:b0:2f:7c:90:e9:a4:96:d3:a5:5d:53:5b:eb:fc:45:d4:f6:19:f6:3f:3d:ed:bb:87:39:25:c2:f2:24:e0:77:31:29:6d:a8:87:ec:1e:47:48:f8
:7e:fb:5f:de:b7:54:84:31:6b:22:32:de:e5:53:dd:af:02:11:2b:0d:1f:02:da:30:97:32:24:fe:27:ae:da:8b:9d:4b:29:22:d9:ba:8b:e3:9e:d9:e1:03:a6:3c:52:81:0b:c6:88:b7:e2:ed:43:16:e1:ef:17:db:de:03:82:01:05:00:02:82:01:00:7f:3d:31:7e:55:de:22:6b:0a:15:a1:
f4:c7:aa:8e:a0:7f:ed:bc:dd:38:4d:44:6b:ac:06:bb:a0:21:53:cb:1b:dc:97:3d:3c:38:97:cb:6f:3e:76:07:91:46:21:34:2a:8d:02:52:98:a5:5a:2e:22:12:d6:1a:72:6c:c1:5a:20:c0:7c:11:70:31:5f:09:07:cf:21:e1:4f:19:9f:b0:f7:83:af:10:15:46:46:3b:11:46:63:24:d6:4
4:be:ce:09:16:d9:4d:dd:49:73:23:5a:2c:12:40:19:12:dd:a7:f8:59:d2:5d:72:a5:9c:ab:42:f9:f6:77:4d:4d:c0:2a:d8:bc:fb:f8:ca:c3:6f:66:3c:28:c2:f4:1e:b7:09:0b:ba:14:a8:09:9d:26:40:40:ba:ba:b5:ce:52:62:8d:dd:41:aa:d9:8f:d8:3f:e7:33:44:3a:40:fa:3a:de:28
:93:83:e2:03:ac:b1:57:9d:7b:ac:4e:1b:0c:2f:2c:85:f0:64:3c:83:61:c0:47:1b:e5:70:ce:6d:dd:90:4a:28:59:b1:b5:34:54:d3:63:eb:f9:4a:2e:c1:92:d6:94:7d:f7:65:d0:44:57:2b:7a:64:d6:3a:7e:95:67:e0:95:55:b0:e0:0d:be:3a:3a:fb:5d:95:97:42:1c:48:f8:1c:d1:52:
57:a3:21:30:1f:30:1d:06:03:55:1d:0e:04:16:04:14:77:73:75:9a:5b:1e:d9:e0:24:4a:d1:94:5b:26:0f:0d:ff:d5:0f:f5:30:0b:06:09:60:86:48:01:65:03:04:03:02:03:40:00:30:3d:02:1d:00:94:ba:8e:2f:40:34:f6:fe:9f:30:9e:69:36:58:fa:88:bb:f5:78:67:5a:92:cd:89:3
e:a9:e1:ba:02:1c:1c:6f:d9:27:db:54:79:2d:76:80:5e:b2:60:0c:60:90:d0:fb:be:cf:03:91:8b:0a:ef:af:58:40",
                "subject" => "CN=www.example.com",
                "issuer" => "CN=www.example.com",
                "not-before" => "2019-05-27T08:29:31.000+0200",
                "not-after" => "2019-08-25T08:29:31.000+0200",
                "serial-number" => "f0:2c:f7:ba:47:a2:33:c1",
                "signature-algorithm" => "SHA256withDSA",
                "signature" => "30:3d:02:1d:00:94:ba:8e:2f:40:34:f6:fe:9f:30:9e:69:36:58:fa:88:bb:f5:78:67:5a:92:cd:89:3e:a9:e1:ba:02:1c:1c:6f:d9:27:db:54:79:2d:76:80:5e:b2:60:0c:60:90:d0:fb:be:cf:03:91:8b:0a:ef:af:58:40",
                "version" => "v3"
            }]
        }
    }
}

read-aliases - recursive and without hex fields.

[standalone@localhost:9990 key-store=serverKS] :read-aliases(recursive=true, verbose=false)
{
    "outcome" => "success",
    "result" => {
        "backup" => {
            "alias" => "backup",
            "entry-type" => "PrivateKeyEntry",
            "creation-date" => "2019-05-27T08:29:42.093+0200",
            "certificate-chain" => [{
                "type" => "X.509",
                "algorithm" => "DSA",
                "format" => "X.509",
                "sha-1-digest" => "4d:a9:16:f9:6d:39:da:03:a1:f0:56:bd:58:46:6c:12:16:59:72:f0",
                "sha-256-digest" => "73:ea:31:e9:9d:de:38:1a:66:06:e7:66:a6:7d:fe:5d:b6:95:02:58:4f:8e:e0:01:19:ee:90:96:e0:18:2d:a1",
                "subject" => "CN=www.example.com",
                "issuer" => "CN=www.example.com",
                "not-before" => "2019-05-27T08:29:42.000+0200",
                "not-after" => "2019-08-25T08:29:42.000+0200",
                "serial-number" => "c9:97:3f:38:fe:50:17:2c",
                "signature-algorithm" => "SHA256withDSA",
                "signature" => "30:3c:02:1c:4f:1a:e9:ea:c2:0a:23:21:91:e8:aa:58:ce:df:b8:a1:ff:02:90:cb:33:b1:99:b2:ca:16:f6:5a:02:1c:38:2a:19:17:fa:c3:a1:1a:dd:bb:fe:96:e9:3a:6d:fa:e9:a6:63:4c:9f:fb:db:ec:dc:49:1e:35",
                "version" => "v3"
            }]
        },
        "server2" => {
            "alias" => "server2",
            "entry-type" => "PrivateKeyEntry",
            "creation-date" => "2019-05-27T08:29:35.118+0200",
            "certificate-chain" => [{
                "type" => "X.509",
                "algorithm" => "DSA",
                "format" => "X.509",
                "sha-1-digest" => "4e:f9:b4:b4:b3:73:71:36:55:c9:fd:51:d8:62:72:b5:1b:68:00:db",
                "sha-256-digest" => "38:a7:22:39:7f:2a:c2:ff:05:71:07:92:ac:b2:1d:b9:e2:0a:f0:b3:46:bf:f8:98:53:7e:d8:27:2d:61:e0:69",
                "subject" => "CN=www.example.com",
                "issuer" => "CN=www.example.com",
                "not-before" => "2019-05-27T08:29:35.000+0200",
                "not-after" => "2019-08-25T08:29:35.000+0200",
                "serial-number" => "f2:b1:8f:7e:b1:e2:81:07",
                "signature-algorithm" => "SHA256withDSA",
                "signature" => "30:3d:02:1d:00:b8:c5:7e:32:d4:d0:89:da:5d:aa:3a:ad:a7:fd:ea:43:15:7a:97:72:b9:5f:57:cf:9b:87:23:03:02:1c:43:0c:c2:da:ab:20:cb:9f:2b:e5:42:d3:55:ad:b7:38:21:ff:9d:83:4f:c7:20:30:d2:0a:0b:b5",
                "version" => "v3"
            }]
        },
        "server1" => {
            "alias" => "server1",
            "entry-type" => "PrivateKeyEntry",
            "creation-date" => "2019-05-27T08:29:31.156+0200",
            "certificate-chain" => [{
                "type" => "X.509",
                "algorithm" => "DSA",
                "format" => "X.509",
                "sha-1-digest" => "5b:dd:a9:06:22:37:03:2e:d0:c8:43:07:38:23:0d:5e:66:cb:a0:a4",
                "sha-256-digest" => "e7:41:a2:bc:6d:32:50:09:96:24:9f:83:0d:ef:a4:cb:62:de:38:61:0c:28:c0:d7:a1:10:c2:b1:91:66:72:f2",
                "subject" => "CN=www.example.com",
                "issuer" => "CN=www.example.com",
                "not-before" => "2019-05-27T08:29:31.000+0200",
                "not-after" => "2019-08-25T08:29:31.000+0200",
                "serial-number" => "f0:2c:f7:ba:47:a2:33:c1",
                "signature-algorithm" => "SHA256withDSA",
                "signature" => "30:3d:02:1d:00:94:ba:8e:2f:40:34:f6:fe:9f:30:9e:69:36:58:fa:88:bb:f5:78:67:5a:92:cd:89:3e:a9:e1:ba:02:1c:1c:6f:d9:27:db:54:79:2d:76:80:5e:b2:60:0c:60:90:d0:fb:be:cf:03:91:8b:0a:ef:af:58:40",
                "version" => "v3"
            }]
        }
    }
}

NOTICE: read-alias(alias=…​) and read-alias(alias=…​, verbose=false) difference is the same as for read-aliases.

Test Plan

Modify existing key store tests to verify features don't break anything.

Community Documentation

Update to "Using the Elytron Subsystem" section in the WildFly documentation with parameters is required.