-
Bug
-
Resolution: Done
-
Blocker
-
None
The credential-store has "alias" as sub-resources, however its behavior in domain mode is not working correctly.
- The :add operation is performed on a DC (/profile=xxx prefix)
- The :read-resource is performed on a running server (/host=xxx prefix)
- The :remove operation (ether runs on a DC or running server) returns "success" but the alias is not removed.
This behavior is a bit inconsistent, to perform write operations on different resources (DC or SERVER) for add and remove.
Add the credential-store
/profile=full/subsystem=elytron/credential-store=store-test-1:add(location=store-test-1,create=true,modifiable=true,credential-reference={clear-text=admin123})
Add an alias
/profile=full/subsystem=elytron/credential-store=store-test-1/alias=user1:add(secret-value=admin123) { "outcome" => "success", "result" => undefined, "server-groups" => {"main-server-group" => {"host" => {"master" => {"server-one" => {"response" => {"outcome" => "success"}}}}}} } /profile=full/subsystem=elytron/credential-store=store-test-1/alias=user2:add(secret-value=admin) { "outcome" => "success", "result" => undefined, "server-groups" => {"main-server-group" => {"host" => {"master" => {"server-one" => {"response" => {"outcome" => "success"}}}}}} }
Read aliases from DC returns no alias
/profile=full/subsystem=elytron/credential-store=store-test-1/alias=*:read-resource(include-runtime) { "outcome" => "success", "result" => [] }
Read aliases from running server
*/host=master/server=server-one/subsystem=elytron/credential-store=store-test-1:read-resource(include-runtime,recursive) { "outcome" => "success", "result" => { "credential-reference" => {"clear-text" => "admin123"}, "other-providers" => undefined, "provider-name" => undefined, "providers" => undefined, "relative-to" => undefined, "state" => "UP", "type" => undefined, "uri" => "cr-store://store-test-1?create=true;keyStoreType=JCEKS;modifiable=true", "alias" => { "user1" => { "entry-type" => undefined, "secret-value" => undefined }, "user2" => { "entry-type" => undefined, "secret-value" => undefined } } } }
Remove an alias from DC (but the alias is not removed after all)
/profile=full/subsystem=elytron/credential-store=store-test-1/alias=user1:remove { "outcome" => "success", "result" => undefined, "server-groups" => {"main-server-group" => {"host" => {"master" => {"server-one" => {"response" => { "outcome" => "success", "result" => undefined }}}}}} }
Read aliases on running server
/host=master/server=server-one/subsystem=elytron/credential-store=store-test-1:read-resource(include-runtime,recursive) { "outcome" => "success", "result" => { "credential-reference" => {"clear-text" => "admin123"}, "other-providers" => undefined, "provider-name" => undefined, "providers" => undefined, "relative-to" => undefined, "state" => "UP", "type" => undefined, "uri" => "cr-store://store-test-1?create=true;keyStoreType=JCEKS;modifiable=true", "alias" => { "user1" => { "entry-type" => undefined, "secret-value" => undefined }, "user2" => { "entry-type" => undefined, "secret-value" => undefined } } } }
Alias doesn't exist in DC
/profile=full/subsystem=elytron/credential-store=store-test-1/alias=user2:read-resource { "outcome" => "failed", "failure-description" => "WFLYCTL0216: Management resource '[ (\"profile\" => \"full\"), (\"subsystem\" => \"elytron\"), (\"credential-store\" => \"store-test-1\"), (\"alias\" => \"user2\") ]' not found", "rolled-back" => true }
That said I request a review on this alias behavior for the elytron resources that uses them. This will help web console to be consistent for the configuration and runtime management of a wildfly domain.
- blocks
-
JBEAP-8578 Not possible to view, add or remove Elytron Credential Store aliases
- Closed
-
JBEAP-8571 CredentialStore issues
- Resolved
- is incorporated by
-
JBEAP-10845 (7.1.0) Upgrade to WildFly Core to 3.0.0.Beta23
- Closed