Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CN-1421]: introduce client simple authentication doc #260

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion docs/modules/ROOT/nav.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,9 @@
* xref:resource-configuration.adoc[Configuring Resource Limits]
* xref:hazelcast-parameters.adoc[Configuring System Properties]
* xref:advanced-networking.adoc[Advanced Networking]
* xref:tls.adoc[Configuring TLS]
* [Security]
** xref:tls.adoc[Configuring TLS]
** xref:client-auth.adoc[Configuring Client Authentication]
* xref:user-code-namespaces.adoc[User Code Namespaces]
* xref:authorization.adoc[Authorization Methods to Access Cloud Storage]
* Data Pipelines
Expand Down
109 changes: 109 additions & 0 deletions docs/modules/ROOT/pages/client-auth.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
= Client Authentication and Authorization

Use the Hazelcast Platform Operator to configure xref:hazelcast:security:authentication-overview.adoc[Client Authentication] and xref:hazelcast:security:client-authorization.adoc[Client Authorization].

== Simple Authentication

You can easily use xref:hazelcast:security:simple-authentication.adoc[Hazelcast Simple Authentication] by making minimal changes in the original configuration.

For example:

[source,yaml]
----
security:
enabled: true
realms:
- name: simpleRealm-clients
authentication:
simple:
users:
- secretName: user1-secret
roles:
- admin
- secretName: user2-secret
roles:
- monitor
- application
client-authentication:
realm: simpleRealm-clients
client-permissions:
all:
principal: admin
endpoints:
- 127.0.0.1
map:
- name: playground
actions:
- all
- name: accounts
principal: monitor
actions:
- read
- name: accounts
principal: application
endpoints:
- 192.168.1.*
- 192.168.2.*
actions:
- create
- destroy
- put
- read
- remove
- lock
----

This can be converted as:

[source,yaml]
----
security:
realms:
- name: simpleRealm-clients
authentication:
simple:
users:
- secretName: user1-secret
roles:
- admin
- secretName: user2-secret
roles:
- monitor
- application
clientAuthentication:
realm: simpleRealm-clients
clientPermissions:
all:
principal: admin
endpoints:
- 127.0.0.1
permissions:
map:
- name: playground
actions:
- all
- name: accounts
principal: monitor
actions:
- read
- name: accounts
principal: application
endpoints:
- 192.168.1.*
- 192.168.2.*
actions:
- create
- destroy
- put
- read
- remove
- lock
----

Required Changes:

* `security.enabled` should be removed.
* convert kebab cases to camel cases:
** `client-authentication` -> `clientAuthentication`
** `client-permissions` -> `clientPermissions`
* add `permissions` node to `clientPermissions` to wrap permissions other than `all`.
Loading