diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/Dockerfile b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/Dockerfile deleted file mode 100644 index e0f9660..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/Dockerfile +++ /dev/null @@ -1,4 +0,0 @@ -ARG runtime_image=quay.io/wildfly/wildfly-runtime:latest -FROM ${runtime_image} -COPY --chown=jboss:root target/server $JBOSS_HOME -RUN chmod -R ug+rwX $JBOSS_HOME \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/README.adoc b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/README.adoc deleted file mode 100644 index 144a3ef..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/README.adoc +++ /dev/null @@ -1,112 +0,0 @@ - -openssl genpkey -algorithm RSA -out private.pem -pkeyopt rsa_keygen_bits:2048 -mkdir -p src/main/resources/META-INF -openssl rsa -in private.pem -pubout -out src/main/resources/META-INF/public.pem - -mvn exec:java -Dexec.mainClass=org.wildfly.examples.TokenUtil -Dexec.classpathScope=test -Dexec.args="testUser 2017-09-15 Echoer" - -curl -H "Authorization: Bearer eyJraWQiOiJUZXN0IEtleSIsInR5cCI6Imp3dCIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiJ0ZXN0VXNlciIsInVwbiI6InRlc3RVc2VyIiwiaXNzIjoicXVpY2tzdGFydC1qd3QtaXNzdWVyIiwiYXVkIjoiand0LWF1ZGllbmNlIiwiZ3JvdXBzIjpbIkVjaG9lciJdLCJiaXJ0aGRhdGUiOiIyMDE3LTA5LTE1IiwianRpIjoiNGQwZjlhMzgtNTc2Yi00NTY4LTg3ODEtMWU1ODkxZTgyYjAzIiwiaWF0IjoxNzI3MTk1NDgzLCJleHAiOjE3MjcyMDk4ODN9.IgjycuixlBvfiqv0p5l7zW2bQRSpHMfP_Z1SJK9ml5UuRwcv_QbY8ZZNeTRk9HuukPHbgpQkkHvpDYfdma2urwPfiS8RPR7rxvoCHu41BwrZ_MJStTk0NNGO35FEC9zwoY8JsryDSqqQkdkpQlDWrHY6uaZzHR5SpQPdmoUteoP7RCQsjyWIdjI0tOrv_JV0vPErq1tGvhUNjM_DMpYRew0yFtpD7cSQUT5yJfN6LvfOuBK7YE2E1O0UWCTWN5quzHJIovWMWoXhsHGU32VgOdxvkFWYyFnRA8BHLZ0slbfUM2nY1gj4HOBhJ0SFl3yAMZVnj5IqQle9orqz7TpXZA" http://localhost:8080/hello/pippo - - -curl -H "Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI3bHRHWUk1eHhJVGh3cVFCNmV4UWlITmlGU3N5VXZkbGVKNkUzTDFTMWxzIn0.eyJleHAiOjE3Mjc0NDY3ODUsImlhdCI6MTcyNzQ0NjQ4NSwiYXV0aF90aW1lIjoxNzI3NDQ2MTAyLCJqdGkiOiJkYzUwYzY1MS03Nzk5LTQwMWQtOGQwZi02NmU0NmQ5MzI1YzEiLCJpc3MiOiJodHRwOi8vMTkyLjE2OC4zOS4xNDM6MzA5OTkvcmVhbG1zL215cmVhbG0iLCJhdWQiOiJhY2NvdW50Iiwic3ViIjoiMTFjZWEwYmQtYWMyMC00NjE1LTkzOTctZWY4NzRjMjBiNjYwIiwidHlwIjoiQmVhcmVyIiwiYXpwIjoibXljbGllbnQiLCJzaWQiOiIxYzdiM2ZkMC1iZTE5LTQ5OTctOGQ5ZS0wNThlYzRkZDlkMDAiLCJhY3IiOiIxIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbImRlZmF1bHQtcm9sZXMtbXlyZWFsbSIsIm9mZmxpbmVfYWNjZXNzIiwiYWRtaW4iLCJ1bWFfYXV0aG9yaXphdGlvbiIsInVzZXIiXX0sInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50IiwibWFuYWdlLWFjY291bnQtbGlua3MiLCJ2aWV3LXByb2ZpbGUiXX19LCJzY29wZSI6Im9wZW5pZCBlbWFpbCBwcm9maWxlIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJuYW1lIjoidG9tbWFzbyBib3JnYXRvIiwicHJlZmVycmVkX3VzZXJuYW1lIjoidGJvcmdhdG8iLCJnaXZlbl9uYW1lIjoidG9tbWFzbyIsImZhbWlseV9uYW1lIjoiYm9yZ2F0byIsImVtYWlsIjoidG9tbWFzby5ib3JnYXRvQGdtYWlsLmNvbSJ9.Hn5a4TU5zbaRU_I6858HiNavnFv4scNGY37onK_fwy0sakBbxqTW-QNuDlDjRR6BaeCqA8fcaTUmuoDhFXxJ-YSrM6LbDYnXwS1pwoKT2TbEQuhtG7UY6r94JS3_uJewCoS78pS5C14lTnpOh-fmBc2JLnY80CYRmRWWQfT_3uHNpjh4z2XO_7H6ofXHdIo8RwD-yHrBWdDeCeg5uVZF6EEfl2qyoiyixv0FUNu8f_PjRQOPrUJ8GIEKCzUSZLnUWpHz2FXzwCvchid4tOMDPwwjJ0nZKGnHlPVYKRjmuaetmlSfWLQjdptYHkjn-AsXR4Mz4nfouKmqwgjBaPPuFw" http://localhost:8180/hello/pippo - -podman network create wildfly-mini-serie-client-service - -# -p 8080:8080 - -podman run --network=host -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin --name keycloak quay.io/keycloak/keycloak:latest start-dev - -https://github.com/wildfly-security-incubator/elytron-examples/tree/main/elytron-oidc-request - -kubectl create -f https://raw.githubusercontent.com/keycloak/keycloak-quickstarts/latest/kubernetes/keycloak.yaml - -kubectl create -f /home/tborgato/projects/guides/get-started-microservices-on-kubernetes/simple-microservice-rest-client/simple-microservice-client/kubernetes/keycloak-nodeport-service.yaml - -minikube service keycloak-external --url - -mvn clean install -P bare-metal - -kubectl exec --stdin --tty keycloak-6f4fc7f97d-wn2fh -- /bin/bash - -/opt/keycloak/bin/kc.sh export --dir=/tmp --users=realm_file --realm=myrealm - -= simple-microservice - -The `simple-microservice` project is a simple Jakarta EE application with a HTTP endpoint that is running in -https://wildfly.org[WildFly]. - -The `src/main` folder contains a simple 'Hello world' style Jakarta EE application using JAX-RS. - -== Building the application - -To build the application, you use Maven: - -[source,shell] ----- -mvn clean package ----- - -Maven will compile the application, provision a WildFly server -The WildFly server is created in `target/server` with the application deployed in it. - -== Running the application - -To run the application, run the commands: - -[source,shell] ----- -cd target/server -./bin/standalone.sh ----- - -Once WildFly is running, the application can be accessed at http://localhost:8080/ - -== Testing the application - -To run integration tests to verify the application, you use Maven: - -[source,shell] ----- -mvn clean package verify ----- - -Tests in `src/test` are run against the server in `target/server`. - -== Build Docker image - -[source,shell] ----- -podman build -t my-jaxrs-app:latest . ----- - -== Run Docker image - -[source,shell] ----- -podman run --rm -p 8080:8080 -p 9990:9990 \ - --name=my-jaxrs-app \ - my-jaxrs-app ----- - -== Deploy to Kubernetes - -[source,shell] ----- -podman tag my-jaxrs-app quay.io/tborgato/my-jaxrs-app -podman push quay.io/tborgato/my-jaxrs-app ----- - -NOTE: in the above commands, replace `tborgato` with your personal account - -[source,shell] ----- -kubectl apply -f kubernetes/deployment-my-jaxrs-app.yaml -kubectl expose deployment.apps/my-jaxrs-app-deployment --type=NodePort --port=8080 ----- - -NOTE: in the above files, replace `tborgato` with your personal account - -== Resources - -* https://wildfly.org[WildFly] -* https://docs.wildfly.org[WildFly Documentation] diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/keycloak/myrealm.json b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/keycloak/myrealm.json deleted file mode 100644 index a73b26a..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/keycloak/myrealm.json +++ /dev/null @@ -1,2396 +0,0 @@ -{ - "id": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "realm": "myrealm", - "notBefore": 0, - "defaultSignatureAlgorithm": "RS256", - "revokeRefreshToken": false, - "refreshTokenMaxReuse": 0, - "accessTokenLifespan": 300, - "accessTokenLifespanForImplicitFlow": 900, - "ssoSessionIdleTimeout": 1800, - "ssoSessionMaxLifespan": 36000, - "ssoSessionIdleTimeoutRememberMe": 0, - "ssoSessionMaxLifespanRememberMe": 0, - "offlineSessionIdleTimeout": 2592000, - "offlineSessionMaxLifespanEnabled": false, - "offlineSessionMaxLifespan": 5184000, - "clientSessionIdleTimeout": 0, - "clientSessionMaxLifespan": 0, - "clientOfflineSessionIdleTimeout": 0, - "clientOfflineSessionMaxLifespan": 0, - "accessCodeLifespan": 60, - "accessCodeLifespanUserAction": 300, - "accessCodeLifespanLogin": 1800, - "actionTokenGeneratedByAdminLifespan": 43200, - "actionTokenGeneratedByUserLifespan": 300, - "oauth2DeviceCodeLifespan": 600, - "oauth2DevicePollingInterval": 5, - "enabled": true, - "sslRequired": "external", - "registrationAllowed": false, - "registrationEmailAsUsername": false, - "rememberMe": false, - "verifyEmail": false, - "loginWithEmailAllowed": true, - "duplicateEmailsAllowed": false, - "resetPasswordAllowed": false, - "editUsernameAllowed": false, - "bruteForceProtected": false, - "permanentLockout": false, - "maxTemporaryLockouts": 0, - "maxFailureWaitSeconds": 900, - "minimumQuickLoginWaitSeconds": 60, - "waitIncrementSeconds": 60, - "quickLoginCheckMilliSeconds": 1000, - "maxDeltaTimeSeconds": 43200, - "failureFactor": 30, - "roles": { - "realm": [ - { - "id": "e244bb93-131d-4e77-b46d-9e30c3bc71a2", - "name": "default-roles-myrealm", - "description": "${role_default-roles}", - "composite": true, - "composites": { - "realm": [ - "offline_access", - "uma_authorization" - ], - "client": { - "account": [ - "view-profile", - "manage-account" - ] - } - }, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - }, - { - "id": "f7750469-d72b-4e66-a66f-d3d9a9a36333", - "name": "admin", - "description": "", - "composite": false, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - }, - { - "id": "8482f125-8673-47d4-af21-3fb2cf30199c", - "name": "offline_access", - "description": "${role_offline-access}", - "composite": false, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - }, - { - "id": "f538e4dd-964b-450e-902d-1f1066b681e0", - "name": "user", - "description": "", - "composite": false, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - }, - { - "id": "d1e74ae7-4ed2-416c-bded-01b9d0dd728d", - "name": "uma_authorization", - "description": "${role_uma_authorization}", - "composite": false, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - } - ], - "client": { - "myclient-bearer": [], - "realm-management": [ - { - "id": "152833cd-ad5c-4961-949c-43d544e02400", - "name": "manage-users", - "description": "${role_manage-users}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "266e02b7-c9fc-40ed-9c99-848d6e1d0839", - "name": "view-realm", - "description": "${role_view-realm}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "bae303d6-3bfc-4855-ab5c-277d693f251a", - "name": "manage-authorization", - "description": "${role_manage-authorization}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "7e387d7c-20d5-4416-9e07-e4358a277d9f", - "name": "manage-identity-providers", - "description": "${role_manage-identity-providers}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "e2cd32fb-d248-4d51-af02-b9bd42684785", - "name": "view-identity-providers", - "description": "${role_view-identity-providers}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "ddf3c611-0caa-4875-b43c-6775dec61952", - "name": "realm-admin", - "description": "${role_realm-admin}", - "composite": true, - "composites": { - "client": { - "realm-management": [ - "manage-users", - "view-realm", - "manage-identity-providers", - "manage-authorization", - "view-identity-providers", - "view-authorization", - "impersonation", - "view-clients", - "query-realms", - "manage-clients", - "query-users", - "manage-events", - "create-client", - "manage-realm", - "query-clients", - "query-groups", - "view-users", - "view-events" - ] - } - }, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "abbc0061-271d-4d1c-ac14-064b6da4a8bd", - "name": "view-authorization", - "description": "${role_view-authorization}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "c8db1d55-ae3c-440c-84c8-badac31e02be", - "name": "impersonation", - "description": "${role_impersonation}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "89ed282f-9497-4031-9297-9a6ffb80977e", - "name": "view-clients", - "description": "${role_view-clients}", - "composite": true, - "composites": { - "client": { - "realm-management": [ - "query-clients" - ] - } - }, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "e567304f-dce1-4a2e-bd98-bee580dac531", - "name": "manage-clients", - "description": "${role_manage-clients}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "2fd99287-4b5c-467e-b42e-aa42a86ae5d6", - "name": "query-realms", - "description": "${role_query-realms}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "7bebaed3-0d83-4191-95f7-553deeefb8e4", - "name": "query-users", - "description": "${role_query-users}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "db213033-a1fb-4a13-8df1-1bde21cf512d", - "name": "manage-events", - "description": "${role_manage-events}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "e468db88-7102-4b95-aa0e-a42f02c488b7", - "name": "create-client", - "description": "${role_create-client}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "557bb45d-8f68-4d41-bf7b-b83a056dc41f", - "name": "manage-realm", - "description": "${role_manage-realm}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "4fd5f30d-ce6a-4a19-9ce8-e89495fb934a", - "name": "query-clients", - "description": "${role_query-clients}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "2f9f5d76-95cc-412d-b3d0-1b1f837c63b6", - "name": "query-groups", - "description": "${role_query-groups}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "f4d48608-87c3-481f-b628-f3a1439c0e51", - "name": "view-users", - "description": "${role_view-users}", - "composite": true, - "composites": { - "client": { - "realm-management": [ - "query-groups", - "query-users" - ] - } - }, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "44b02d05-e62d-4f76-8a7c-87c349c137d5", - "name": "view-events", - "description": "${role_view-events}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - } - ], - "myclient-public": [], - "security-admin-console": [], - "admin-cli": [], - "account-console": [], - "broker": [ - { - "id": "dd04258d-d8a9-4656-907b-81db24e7b629", - "name": "read-token", - "description": "${role_read-token}", - "composite": false, - "clientRole": true, - "containerId": "5df8ddbf-d142-41a1-9b6a-f55eeb00a055", - "attributes": {} - } - ], - "account": [ - { - "id": "8aad3990-2117-405a-a2b4-6498d8dcc5f9", - "name": "view-profile", - "description": "${role_view-profile}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "bc6224fe-725a-47ac-99bc-dde5526eb213", - "name": "view-consent", - "description": "${role_view-consent}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "4c33a25e-da86-479a-a53c-bcf0b177ec38", - "name": "manage-account-links", - "description": "${role_manage-account-links}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "ad7cc780-dd3a-49a5-a3b7-ca9a4de8d402", - "name": "manage-consent", - "description": "${role_manage-consent}", - "composite": true, - "composites": { - "client": { - "account": [ - "view-consent" - ] - } - }, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "6754d5b4-d8a6-498f-8b03-a4c5416801c3", - "name": "manage-account", - "description": "${role_manage-account}", - "composite": true, - "composites": { - "client": { - "account": [ - "manage-account-links" - ] - } - }, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "f12c2cd1-989f-491b-9c44-e58ee49dba00", - "name": "delete-account", - "description": "${role_delete-account}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "6e8eacf8-c5d1-4439-813e-b99a6cb8a297", - "name": "view-applications", - "description": "${role_view-applications}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "43a64b6b-6220-4480-bf28-acde5359aca9", - "name": "view-groups", - "description": "${role_view-groups}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - } - ] - } - }, - "groups": [], - "defaultRole": { - "id": "e244bb93-131d-4e77-b46d-9e30c3bc71a2", - "name": "default-roles-myrealm", - "description": "${role_default-roles}", - "composite": true, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd" - }, - "requiredCredentials": [ - "password" - ], - "otpPolicyType": "totp", - "otpPolicyAlgorithm": "HmacSHA1", - "otpPolicyInitialCounter": 0, - "otpPolicyDigits": 6, - "otpPolicyLookAheadWindow": 1, - "otpPolicyPeriod": 30, - "otpPolicyCodeReusable": false, - "otpSupportedApplications": [ - "totpAppFreeOTPName", - "totpAppGoogleName", - "totpAppMicrosoftAuthenticatorName" - ], - "localizationTexts": {}, - "webAuthnPolicyRpEntityName": "keycloak", - "webAuthnPolicySignatureAlgorithms": [ - "ES256" - ], - "webAuthnPolicyRpId": "", - "webAuthnPolicyAttestationConveyancePreference": "not specified", - "webAuthnPolicyAuthenticatorAttachment": "not specified", - "webAuthnPolicyRequireResidentKey": "not specified", - "webAuthnPolicyUserVerificationRequirement": "not specified", - "webAuthnPolicyCreateTimeout": 0, - "webAuthnPolicyAvoidSameAuthenticatorRegister": false, - "webAuthnPolicyAcceptableAaguids": [], - "webAuthnPolicyExtraOrigins": [], - "webAuthnPolicyPasswordlessRpEntityName": "keycloak", - "webAuthnPolicyPasswordlessSignatureAlgorithms": [ - "ES256" - ], - "webAuthnPolicyPasswordlessRpId": "", - "webAuthnPolicyPasswordlessAttestationConveyancePreference": "not specified", - "webAuthnPolicyPasswordlessAuthenticatorAttachment": "not specified", - "webAuthnPolicyPasswordlessRequireResidentKey": "not specified", - "webAuthnPolicyPasswordlessUserVerificationRequirement": "not specified", - "webAuthnPolicyPasswordlessCreateTimeout": 0, - "webAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister": false, - "webAuthnPolicyPasswordlessAcceptableAaguids": [], - "webAuthnPolicyPasswordlessExtraOrigins": [], - "users": [ - { - "id": "3210d198-5714-4978-9bd8-b7fdf2bb1e68", - "username": "tborgato", - "firstName": "tommaso", - "lastName": "borgato", - "email": "tommaso.borgato@gmail.com", - "emailVerified": true, - "createdTimestamp": 1727623939786, - "enabled": true, - "totp": false, - "credentials": [ - { - "id": "488fa1ef-9926-4c75-90fe-d4baef797470", - "type": "password", - "userLabel": "My password", - "createdDate": 1727623956967, - "secretData": "{\"value\":\"iOytsiigpzhz0MElR5NthpPbOqnNK5+YoZImdzNFX7I=\",\"salt\":\"ErF6wOIHz8/OXOn2vZYVKA==\",\"additionalParameters\":{}}", - "credentialData": "{\"hashIterations\":5,\"algorithm\":\"argon2\",\"additionalParameters\":{\"hashLength\":[\"32\"],\"memory\":[\"7168\"],\"type\":[\"id\"],\"version\":[\"1.3\"],\"parallelism\":[\"1\"]}}" - } - ], - "disableableCredentialTypes": [], - "requiredActions": [], - "realmRoles": [ - "default-roles-myrealm", - "admin", - "user" - ], - "notBefore": 0, - "groups": [] - } - ], - "scopeMappings": [ - { - "clientScope": "offline_access", - "roles": [ - "offline_access" - ] - } - ], - "clientScopeMappings": { - "account": [ - { - "client": "account-console", - "roles": [ - "manage-account", - "view-groups" - ] - } - ] - }, - "clients": [ - { - "id": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "clientId": "account", - "name": "${client_account}", - "rootUrl": "${authBaseUrl}", - "baseUrl": "/realms/myrealm/account/", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/realms/myrealm/account/*" - ], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "da88a8bb-04e1-4f62-bf9a-05d4a14c849c", - "clientId": "account-console", - "name": "${client_account-console}", - "rootUrl": "${authBaseUrl}", - "baseUrl": "/realms/myrealm/account/", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/realms/myrealm/account/*" - ], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+", - "pkce.code.challenge.method": "S256" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "protocolMappers": [ - { - "id": "697a1862-0ab3-467b-978e-d001f9dbb42b", - "name": "audience resolve", - "protocol": "openid-connect", - "protocolMapper": "oidc-audience-resolve-mapper", - "consentRequired": false, - "config": {} - } - ], - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "84fc5d4a-a2bf-48d1-a558-29249ca06660", - "clientId": "admin-cli", - "name": "${client_admin-cli}", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": false, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": true, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "5df8ddbf-d142-41a1-9b6a-f55eeb00a055", - "clientId": "broker", - "name": "${client_broker}", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": true, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": false, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "1576b754-20a8-4f55-b4d2-458815fc4a68", - "clientId": "myclient-bearer", - "name": "", - "description": "", - "rootUrl": "", - "adminUrl": "", - "baseUrl": "", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/*" - ], - "webOrigins": [ - "/*" - ], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": false, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": true, - "protocol": "openid-connect", - "attributes": { - "oidc.ciba.grant.enabled": "false", - "backchannel.logout.session.required": "true", - "oauth2.device.authorization.grant.enabled": "false", - "backchannel.logout.revoke.offline.tokens": "false" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": true, - "nodeReRegistrationTimeout": -1, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "1689ba73-ec80-40f2-862f-dd66fe525fbc", - "clientId": "myclient-public", - "name": "myclient-public", - "description": "", - "rootUrl": "", - "adminUrl": "", - "baseUrl": "", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "secret": "JxA26xeQc85N3HD3w9cEOkmAjGIwVHQ3", - "redirectUris": [ - "*" - ], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": true, - "serviceAccountsEnabled": false, - "publicClient": false, - "frontchannelLogout": true, - "protocol": "openid-connect", - "attributes": { - "oidc.ciba.grant.enabled": "false", - "client.secret.creation.time": "1727623916", - "backchannel.logout.session.required": "true", - "post.logout.redirect.uris": "+", - "oauth2.device.authorization.grant.enabled": "false", - "display.on.consent.screen": "false", - "backchannel.logout.revoke.offline.tokens": "false" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": true, - "nodeReRegistrationTimeout": -1, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "clientId": "realm-management", - "name": "${client_realm-management}", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": true, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": false, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "f63254a8-fe51-4512-99af-9844b941e5da", - "clientId": "security-admin-console", - "name": "${client_security-admin-console}", - "rootUrl": "${authAdminUrl}", - "baseUrl": "/admin/myrealm/console/", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/admin/myrealm/console/*" - ], - "webOrigins": [ - "+" - ], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+", - "pkce.code.challenge.method": "S256" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "protocolMappers": [ - { - "id": "5d913a22-ecf2-4a53-815c-3f9cdc8eab30", - "name": "locale", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "locale", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "locale", - "jsonType.label": "String" - } - } - ], - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - } - ], - "clientScopes": [ - { - "id": "cf6d74d8-c0d8-406d-bb82-531f1693a217", - "name": "roles", - "description": "OpenID Connect scope for add user roles to the access token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "consent.screen.text": "${rolesScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "acee1658-0731-4c4d-a89b-088c36ce3607", - "name": "audience resolve", - "protocol": "openid-connect", - "protocolMapper": "oidc-audience-resolve-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "access.token.claim": "true" - } - }, - { - "id": "32b38646-bb6c-4eac-b302-9d1e1b6681ea", - "name": "client roles", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-client-role-mapper", - "consentRequired": false, - "config": { - "user.attribute": "foo", - "introspection.token.claim": "true", - "access.token.claim": "true", - "claim.name": "resource_access.${client_id}.roles", - "jsonType.label": "String", - "multivalued": "true" - } - }, - { - "id": "189d566e-05b5-477b-875b-598e00afdda5", - "name": "realm roles", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-realm-role-mapper", - "consentRequired": false, - "config": { - "user.attribute": "foo", - "introspection.token.claim": "true", - "access.token.claim": "true", - "claim.name": "realm_access.roles", - "jsonType.label": "String", - "multivalued": "true" - } - } - ] - }, - { - "id": "13538e20-7abc-4733-a422-427084f02b1c", - "name": "phone", - "description": "OpenID Connect built-in scope: phone", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${phoneScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "4e121a6a-59f5-4814-a285-cd2602f9ad73", - "name": "phone number", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "phoneNumber", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "phone_number", - "jsonType.label": "String" - } - }, - { - "id": "fe1f7529-94c6-4485-85bd-6059aa227fdc", - "name": "phone number verified", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "phoneNumberVerified", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "phone_number_verified", - "jsonType.label": "boolean" - } - } - ] - }, - { - "id": "7c57ceb5-bbf6-4a12-9680-89be1adabacc", - "name": "microprofile-jwt", - "description": "Microprofile - JWT built-in scope", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "d72580b3-93a3-4df5-91fc-907fe65d5b79", - "name": "groups", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-realm-role-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "multivalued": "true", - "userinfo.token.claim": "true", - "user.attribute": "foo", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "groups", - "jsonType.label": "String" - } - }, - { - "id": "55309e2e-20a4-4ed4-8dc8-4a62b7990cff", - "name": "upn", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "username", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "upn", - "jsonType.label": "String" - } - } - ] - }, - { - "id": "f3d1057a-bff9-45fa-b764-3863c3a32603", - "name": "acr", - "description": "OpenID Connect scope for add acr (authentication context class reference) to the token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "5fdcf129-e159-4a80-820e-9bc9a92724d3", - "name": "acr loa level", - "protocol": "openid-connect", - "protocolMapper": "oidc-acr-mapper", - "consentRequired": false, - "config": { - "id.token.claim": "true", - "introspection.token.claim": "true", - "access.token.claim": "true", - "userinfo.token.claim": "true" - } - } - ] - }, - { - "id": "798989d1-22f8-487a-b756-550d4a904d13", - "name": "role_list", - "description": "SAML role list", - "protocol": "saml", - "attributes": { - "consent.screen.text": "${samlRoleListScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "9e676d48-fbd3-43b3-a2ff-7ceffe2218bc", - "name": "role list", - "protocol": "saml", - "protocolMapper": "saml-role-list-mapper", - "consentRequired": false, - "config": { - "single": "false", - "attribute.nameformat": "Basic", - "attribute.name": "Role" - } - } - ] - }, - { - "id": "ba009541-5f43-4ca1-a993-9e0649ba4063", - "name": "email", - "description": "OpenID Connect built-in scope: email", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${emailScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "c71f478e-d329-4023-9140-c1b2ba1f3785", - "name": "email verified", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-property-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "emailVerified", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "email_verified", - "jsonType.label": "boolean" - } - }, - { - "id": "ea101535-6e03-43e5-8be0-711290fa33a5", - "name": "email", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "email", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "email", - "jsonType.label": "String" - } - } - ] - }, - { - "id": "386ad3cd-f24c-4bd3-be0f-99e56da8948f", - "name": "offline_access", - "description": "OpenID Connect built-in scope: offline_access", - "protocol": "openid-connect", - "attributes": { - "consent.screen.text": "${offlineAccessScopeConsentText}", - "display.on.consent.screen": "true" - } - }, - { - "id": "8bd2c2fd-78f3-4d59-a649-d87db12ace5d", - "name": "profile", - "description": "OpenID Connect built-in scope: profile", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${profileScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "3bb38a5c-7792-4246-a72a-b3049d5a0169", - "name": "updated at", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "updatedAt", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "updated_at", - "jsonType.label": "long" - } - }, - { - "id": "8c51b2a7-da37-43d7-a2a0-fda2b88649e2", - "name": "given name", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "firstName", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "given_name", - "jsonType.label": "String" - } - }, - { - "id": "18842a37-9e50-4257-b657-9c863ebef630", - "name": "username", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "username", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "preferred_username", - "jsonType.label": "String" - } - }, - { - "id": "efb10611-3f4a-429d-8849-281bad6428f0", - "name": "zoneinfo", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "zoneinfo", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "zoneinfo", - "jsonType.label": "String" - } - }, - { - "id": "0edb7689-5337-4def-839a-68ed6a7cbb57", - "name": "birthdate", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "birthdate", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "birthdate", - "jsonType.label": "String" - } - }, - { - "id": "8f067106-d136-4c35-ab84-c994b89ef10b", - "name": "locale", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "locale", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "locale", - "jsonType.label": "String" - } - }, - { - "id": "3efe6a01-82f6-4f51-bb92-045cfb22036e", - "name": "gender", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "gender", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "gender", - "jsonType.label": "String" - } - }, - { - "id": "45e533e1-c199-4b78-8979-376aa8997322", - "name": "full name", - "protocol": "openid-connect", - "protocolMapper": "oidc-full-name-mapper", - "consentRequired": false, - "config": { - "id.token.claim": "true", - "introspection.token.claim": "true", - "access.token.claim": "true", - "userinfo.token.claim": "true" - } - }, - { - "id": "3c668b7e-d5b3-470b-bfa1-f9995d22c577", - "name": "middle name", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "middleName", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "middle_name", - "jsonType.label": "String" - } - }, - { - "id": "74415c86-da2c-430f-9c0c-a5c494f89421", - "name": "profile", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "profile", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "profile", - "jsonType.label": "String" - } - }, - { - "id": "b9bc19a7-9535-4599-9142-e95b9acf4ce2", - "name": "family name", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "lastName", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "family_name", - "jsonType.label": "String" - } - }, - { - "id": "849fa957-08ce-49ba-a34e-ebd78da92b0d", - "name": "nickname", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "nickname", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "nickname", - "jsonType.label": "String" - } - }, - { - "id": "c5cf3807-15b8-41bc-a34f-b8bc780496d0", - "name": "website", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "website", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "website", - "jsonType.label": "String" - } - }, - { - "id": "69a079e5-1d07-4711-9ffc-3b64a45b7f69", - "name": "picture", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "picture", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "picture", - "jsonType.label": "String" - } - } - ] - }, - { - "id": "d8e218e1-a539-41c6-9c3a-2f77ca142936", - "name": "basic", - "description": "OpenID Connect scope for add all basic claims to the token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "bb7213ed-9ab5-4615-b30c-1a291e20e01d", - "name": "sub", - "protocol": "openid-connect", - "protocolMapper": "oidc-sub-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "access.token.claim": "true" - } - }, - { - "id": "fb82981f-eaf1-40f9-827d-c8ed77062b8b", - "name": "auth_time", - "protocol": "openid-connect", - "protocolMapper": "oidc-usersessionmodel-note-mapper", - "consentRequired": false, - "config": { - "user.session.note": "AUTH_TIME", - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "auth_time", - "jsonType.label": "long" - } - } - ] - }, - { - "id": "1bba0124-a513-4c57-909a-fd07cede6aa3", - "name": "address", - "description": "OpenID Connect built-in scope: address", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${addressScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "0d70fe9d-ee85-478c-87d5-67276cb88b40", - "name": "address", - "protocol": "openid-connect", - "protocolMapper": "oidc-address-mapper", - "consentRequired": false, - "config": { - "user.attribute.formatted": "formatted", - "user.attribute.country": "country", - "introspection.token.claim": "true", - "user.attribute.postal_code": "postal_code", - "userinfo.token.claim": "true", - "user.attribute.street": "street", - "id.token.claim": "true", - "user.attribute.region": "region", - "access.token.claim": "true", - "user.attribute.locality": "locality" - } - } - ] - }, - { - "id": "ab919ba9-761b-4e12-b53f-bc5b67e82dd7", - "name": "web-origins", - "description": "OpenID Connect scope for add allowed web origins to the access token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "consent.screen.text": "", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "0567da44-1b5a-40a8-b792-7b893b573cef", - "name": "allowed web origins", - "protocol": "openid-connect", - "protocolMapper": "oidc-allowed-origins-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "access.token.claim": "true" - } - } - ] - } - ], - "defaultDefaultClientScopes": [ - "role_list", - "profile", - "email", - "roles", - "web-origins", - "acr", - "basic" - ], - "defaultOptionalClientScopes": [ - "offline_access", - "address", - "phone", - "microprofile-jwt" - ], - "browserSecurityHeaders": { - "contentSecurityPolicyReportOnly": "", - "xContentTypeOptions": "nosniff", - "referrerPolicy": "no-referrer", - "xRobotsTag": "none", - "xFrameOptions": "SAMEORIGIN", - "contentSecurityPolicy": "frame-src 'self'; frame-ancestors 'self'; object-src 'none';", - "xXSSProtection": "1; mode=block", - "strictTransportSecurity": "max-age=31536000; includeSubDomains" - }, - "smtpServer": {}, - "eventsEnabled": false, - "eventsListeners": [ - "jboss-logging" - ], - "enabledEventTypes": [], - "adminEventsEnabled": false, - "adminEventsDetailsEnabled": false, - "identityProviders": [], - "identityProviderMappers": [], - "components": { - "org.keycloak.services.clientregistration.policy.ClientRegistrationPolicy": [ - { - "id": "13c768a7-73bd-4ed5-a792-fc36d0d57717", - "name": "Allowed Protocol Mapper Types", - "providerId": "allowed-protocol-mappers", - "subType": "authenticated", - "subComponents": {}, - "config": { - "allowed-protocol-mapper-types": [ - "oidc-usermodel-property-mapper", - "saml-user-attribute-mapper", - "saml-role-list-mapper", - "oidc-sha256-pairwise-sub-mapper", - "saml-user-property-mapper", - "oidc-address-mapper", - "oidc-full-name-mapper", - "oidc-usermodel-attribute-mapper" - ] - } - }, - { - "id": "1b3a090d-e859-45e1-9b89-02f026b7f32e", - "name": "Allowed Client Scopes", - "providerId": "allowed-client-templates", - "subType": "anonymous", - "subComponents": {}, - "config": { - "allow-default-scopes": [ - "true" - ] - } - }, - { - "id": "4ecc6549-6630-4559-8c38-fdf670a75523", - "name": "Allowed Client Scopes", - "providerId": "allowed-client-templates", - "subType": "authenticated", - "subComponents": {}, - "config": { - "allow-default-scopes": [ - "true" - ] - } - }, - { - "id": "9180bbd5-6fe2-4a13-bdab-4f3a0705cc46", - "name": "Trusted Hosts", - "providerId": "trusted-hosts", - "subType": "anonymous", - "subComponents": {}, - "config": { - "host-sending-registration-request-must-match": [ - "true" - ], - "client-uris-must-match": [ - "true" - ] - } - }, - { - "id": "7798d00c-89df-4284-8e52-657ffb8c7c6b", - "name": "Consent Required", - "providerId": "consent-required", - "subType": "anonymous", - "subComponents": {}, - "config": {} - }, - { - "id": "64afd6b5-471f-4ce5-a8b7-1140e4491ae5", - "name": "Full Scope Disabled", - "providerId": "scope", - "subType": "anonymous", - "subComponents": {}, - "config": {} - }, - { - "id": "92bdf5a1-2e82-4750-aff2-d5d5ac069ccc", - "name": "Allowed Protocol Mapper Types", - "providerId": "allowed-protocol-mappers", - "subType": "anonymous", - "subComponents": {}, - "config": { - "allowed-protocol-mapper-types": [ - "oidc-usermodel-property-mapper", - "saml-role-list-mapper", - "oidc-sha256-pairwise-sub-mapper", - "saml-user-attribute-mapper", - "oidc-usermodel-attribute-mapper", - "saml-user-property-mapper", - "oidc-address-mapper", - "oidc-full-name-mapper" - ] - } - }, - { - "id": "35599b1e-ac69-4ed8-8ce8-d752000b6e4b", - "name": "Max Clients Limit", - "providerId": "max-clients", - "subType": "anonymous", - "subComponents": {}, - "config": { - "max-clients": [ - "200" - ] - } - } - ], - "org.keycloak.keys.KeyProvider": [ - { - "id": "3c026515-7b11-42ed-9863-147135f13834", - "name": "aes-generated", - "providerId": "aes-generated", - "subComponents": {}, - "config": { - "kid": [ - "432414ba-3f96-4e3c-80d5-f5182758cf48" - ], - "secret": [ - "19oawAe_VHqfDvUV2DWOBQ" - ], - "priority": [ - "100" - ] - } - }, - { - "id": "c658d9a6-94b1-42da-9c51-5be49a50604b", - "name": "rsa-generated", - "providerId": "rsa-generated", - "subComponents": {}, - "config": { - "privateKey": [ - "MIIEpAIBAAKCAQEAze0AE/utxv890URpOO1c2hfy61Oq6VLFRujYPrF+Taq8LBSvEsQGeTgrB7hXyZfwbLdbZqcxTqjwrVvwRObZFwtz28B4yCDMTYNy9eRPRZfenr6vTphuEP7bAw6cd9Oq/p6jaI9gw+sVpskd6AiBulEpD23itKIFO9E7dPDKoHEKONwJ+GnT0+Onvr4GMcIMd77Re7nu1OZPVoQDwrPYosw8NYcDl8OzjQwk9qpuzpoFfx1sNdpFRgtAzJAU4RdHtAEfgDrUK41osIoctZqp5uyaQSJqgFUOn9T1TSPGQ0fh+N3FFHFZs89ALXKk3w8E1ZlydBXTYmzXOWk9Lj1/TwIDAQABAoIBAAVUjyrCDWhLQkeUCvOerhQ1iBb86wpv5AwtcGHr29l/nXzraoseNXSwNlAhPqFI14y/Q+E1jrP68Ry4doQYdzux38veZyhdZ1+fEwi3+8odxkHU4Cc1EHqyiusnVt5OXx/vVBeB+2U9RPabDU65eaVfy6PkmkVGtFzG0h0sZnJRe6JQwHDFt0Y1Y7eldJiY665dcJBmv6A5TWVtERXGtdzMpeKOTi545hAa9U0at+e3ObOXB8R61izLHxITZiGmedWBLThPSWdO6S/57SQW0cw2A9YKdsWSCGpP93gVZh6xsA33o4M8DGrMjmd+pfA1kJ8deu8X2O4f8LdL/nlqvcECgYEA9bWgLBHM2KWGocO1b/QMCwNgXHy881L48M/bdmQocXXFWcMU5JyiW4FdJ/eAxD/otKkXHodvXNC7ngNBqE+BhMILZcMXn48052lcD3fTqqpZ8mTXyEZkUkX2LVBHo1Clxf2uTy6LBbnNc0NennnZFsaI5AE7A+Efi8fMRdSHYB8CgYEA1ozVb+5BdrIJMK6eMMM/K0X2ML/U1jzKxzTbXHf9ACZPVnbiSP9AxdC8W5OISLQg1YMJHeMk6KKCLipMpG1lbZg6fZLtdxn5aywHjXND2FP2L/iOet1IQ7GFLMlcItAicvTF19s4p9BUjssDc0ghV2kccMjBF6SqAZ01el3vOtECgYEAxyjl4HK5KK3al8oricg17sNY2v6cpVoOwBqrF6aNhZHhWiWfDMLNcwBDgv7B19C5jZ41SCCdKo1iVezrzkJLiFFErcJZppKMXjpvTXZiEkasS6ZjpUkxTeK5bPdSadUX2YkLPdFLDGQTXKcxzaCUTzqzgKRisn1KdaGION3QsR8CgYEAiXXgBf/Ll4XH15X5Klrd7Ra8/kzZy41Vij42UU9bHK5u5IH0xzorQNJU7ANhLNujschrned7LUV5TKSzSCIC+y2uQ+hQFp/gqqaiDCGOlVpuABwrBVMjSqPBJIm6a1+YwrhKzdrZuMMEehxeEI1lN0DUBPrKpCBPAAu+SLFIZhECgYAH012Znq+wrV91Swi/q7V0RjHpuoyBNvIve3TlS7tNolPUzUPJ5u2UbOzSx/65WmfFrPlfw/i6I5QTABrlecPnNY1tmHxaub7VpqCh2IsOOg73m9jXqimkazFGp0k0rQ8pWQZcfzeG7MErSxgu/s4Am3D4y7fg8bPjwtE4FdRCMQ==" - ], - "certificate": [ - "MIICnTCCAYUCBgGSPmANuTANBgkqhkiG9w0BAQsFADASMRAwDgYDVQQDDAdteXJlYWxtMB4XDTI0MDkyOTE1MjAzNVoXDTM0MDkyOTE1MjIxNVowEjEQMA4GA1UEAwwHbXlyZWFsbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM3tABP7rcb/PdFEaTjtXNoX8utTqulSxUbo2D6xfk2qvCwUrxLEBnk4Kwe4V8mX8Gy3W2anMU6o8K1b8ETm2RcLc9vAeMggzE2DcvXkT0WX3p6+r06YbhD+2wMOnHfTqv6eo2iPYMPrFabJHegIgbpRKQ9t4rSiBTvRO3TwyqBxCjjcCfhp09Pjp76+BjHCDHe+0Xu57tTmT1aEA8Kz2KLMPDWHA5fDs40MJPaqbs6aBX8dbDXaRUYLQMyQFOEXR7QBH4A61CuNaLCKHLWaqebsmkEiaoBVDp/U9U0jxkNH4fjdxRRxWbPPQC1ypN8PBNWZcnQV02Js1zlpPS49f08CAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAbcBbW5t+FkEw5DFfmNQRgj8k/kYtqUVwbOZKjSCsRe3Yxpx+63dFEEuTQZBXX/UFtzqkKqqY7TsQXsq5NPUvxMg+4Vky3FO6htkbdcN2vEsC4zdw6sjy8TzOencl3pIYfQGD83HCTFHlZWP7BIQ8XfN/xnI3kEM+QG/c2tjSx65e2G4Oor1dwscGNghSfvs6dHEdu35Xtp0EJuF8Fdv8bFT+8RsvpMEP+GZa/ji5cetdxmTotvg7MiexOS/Q0Izb33raVTKZ0TUPNnJUtHlKkST7hksfXvryp51JzBuFv4zE8hPUxVYsszCIwJLsmKqKIRfZQtsV8qfDbpvEMonynQ==" - ], - "priority": [ - "100" - ] - } - }, - { - "id": "cc0e6390-eac7-42dd-bc6e-394232f37320", - "name": "hmac-generated-hs512", - "providerId": "hmac-generated", - "subComponents": {}, - "config": { - "kid": [ - "2a2dfa42-0140-4f14-929e-2e2da598a04e" - ], - "secret": [ - "pFfgzXQH0PoWeHwLRv4zpupzsoVW9edI4f3p3KaCnX2_PRLoGRj_8WBX8LrvEHPzTWHONeA7Frgo-VksIkQ_Xi_uROMObmTYzjwVR3HEb074GBXmjVqLozHB6BSuS6ukk-aG1385GUf-1SkUBHatciM2U41yUSeWoqcJpSNQwZg" - ], - "priority": [ - "100" - ], - "algorithm": [ - "HS512" - ] - } - }, - { - "id": "23e1c23d-1c5b-4e14-bfd6-392419d0856c", - "name": "rsa-enc-generated", - "providerId": "rsa-enc-generated", - "subComponents": {}, - "config": { - "privateKey": [ - "MIIEpQIBAAKCAQEAv6pIVhuJrNAMreLxRkyoQr381QYjiyD+PCeW9s75z703MfsZQUK6N27BQ4C/S40iuHVw4dZbCVAhOJLUhPPufRaWrdgOXdu71Dn75C6mya1go5muHJvtsrXIVsml2xsvZIxiE7IpEBDRurGInCqpDvcKs+JmBZAsf37aMVfDdElPC8FGp9Q/V3wo2ak+T8GOa9+apf03DDdq607u2TMWpXy52upAv24qAZVlZV+dOlXs9qz8LMth1ZyUMYbsFPFkkr6boQTxl/Xjz/RF2umOtgoyMLc8m2vOcslAH4kL9miFiefT5nRPEOc8Vz7gh83e3tq0v4rhdSzfOe4GDJTAHQIDAQABAoIBADKqhIHCuNPGkbt71RUk2Yv/JjF39HhoadykCIvI7g/E8KzVOHlgdtKFhDBgffEuZ4HEheklXZ5qIMYQRn647xABIybkiPO1zQLOqzBIRs3kd7n3u6eTbrQByupqVt5DYvVdCOY1ABbfo1mLadYCjvtGQf2IeTi6QpEXiv1lOmVoMEiaS5MfOgAWiugwOJP9CiQboBzDrd+OrdVHQoF3OitxaWSX7GcL5bnZwqR4LglDVUvpv8RAD/GM9PVgQ7lDP57YnKdR3fG+tHioakpcUQYRaow5nDW5G8/3ZCVweGIUbtDHI4Mw+j96mJCq8V02O1fu8Mwc0lpkpFIjU8Y1wo8CgYEA7W/vdo4SU6iVlD76nAeELFgRwJYHJRsyiuC7Tajbvveajf+Y5XWkhK10rzwGNOvsx6v28rvZtktnAJJmvoVdJgnr5RV8xz3d4SmrWOzySCxefoZM0gUm7e+xZF+jcOphs1vTKqsOBq3tMF8wscdB7WiVw5ZvDg9F4W8IU07ctHMCgYEAzqZD/YSptQTx9WsMIUNgYUUUpsJR3mHB8CQnZJ95SGAY77j8mN7ut3iH0QeYKClFcbLmvu3rx1c3Vb8R25nkx4N+HbmL4qGajW1ynnBPZgGwPnRO6Q5t0MQui+Qe0urL4qzWIQAMgAOvCCj5R8oAmtw/Nm7pkCkeQNhqclBZJS8CgYEArXs3r5umcFGg2KwbV512SSAf+GKl3cq9ZxNERz21MRagalfyUtVd20MRGmf08P3gBxPyXvA55iO5ooVVZKb0pDJjlQHaJYlicH2NoG+fpnQkprVhs6HoC7kyF3B5bqsRr4bMB0Tr/p1dzBYA8iPwW5IqurlTcyZdnJUPtC7Ou1kCgYEAzoeXbhmXbuZZWBk7j0cCXVSoVh3hqqrzJClOAZ/sm+wHIBc2xSYRWOaqfrvjU0gkMoVFXk71FU5SbG1A0MRWxRvjAJw/dSpkB7L6GeVPRTisx06AyyXzlPFtP7ynHc8yJALvIx4kYBDObw5cTWZTAnLa7nEdF0oxBUgF4ufwoFsCgYEApI1Bc+fe4Q3wt04Dfb6ubkuqs764+7O3H1JVdjsImhul3VOCohJfaE5kCeSlJFBCD6DPy8C/aLn8+9NLzNpalXfMkQMYBtV4BgySY1WEN9pEHtng0sqrgEMwboP1MRHQb+LxVwethEshG/ES50AMxhkJlAX3QUr5f8xG780wO+E=" - ], - "certificate": [ - "MIICnTCCAYUCBgGSPmAOCzANBgkqhkiG9w0BAQsFADASMRAwDgYDVQQDDAdteXJlYWxtMB4XDTI0MDkyOTE1MjAzNVoXDTM0MDkyOTE1MjIxNVowEjEQMA4GA1UEAwwHbXlyZWFsbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL+qSFYbiazQDK3i8UZMqEK9/NUGI4sg/jwnlvbO+c+9NzH7GUFCujduwUOAv0uNIrh1cOHWWwlQITiS1ITz7n0Wlq3YDl3bu9Q5++QupsmtYKOZrhyb7bK1yFbJpdsbL2SMYhOyKRAQ0bqxiJwqqQ73CrPiZgWQLH9+2jFXw3RJTwvBRqfUP1d8KNmpPk/BjmvfmqX9Nww3autO7tkzFqV8udrqQL9uKgGVZWVfnTpV7Pas/CzLYdWclDGG7BTxZJK+m6EE8Zf148/0RdrpjrYKMjC3PJtrznLJQB+JC/ZohYnn0+Z0TxDnPFc+4IfN3t7atL+K4XUs3znuBgyUwB0CAwEAATANBgkqhkiG9w0BAQsFAAOCAQEABMVvBMPdREqaeZnwD79QLilBsjLGUtiBE6nBtDIbDa0Exaazh/g/bp4xCBMpCcgqbtveVTDNNZC6FGhAwQ3dAzbrFUsfQIZfFwFYVPL82JPodcLtOnls1yg+WnKu6T5fkrL0fs24PMPYeIrx83snh2wAENq6WVXU73yRNDc+eZ+hJ+KgGj79DcSPTtEnjZv+CB0+0O0ifZ/71V0RhFeb6EvK6Nn8LJKLeSK26EfzD9VY1m1oPySGfNysvmJv+htDpVo9VSNklnpaTKqsRpa1OTevnS7INJ2vsKn2lbcRwQ+mjGEuqeh3+XgVg0dO6PYxnpCUFWBlRJ8BJ4dpURTGmw==" - ], - "priority": [ - "100" - ], - "algorithm": [ - "RSA-OAEP" - ] - } - } - ] - }, - "internationalizationEnabled": false, - "supportedLocales": [], - "authenticationFlows": [ - { - "id": "b12f1eb6-8592-4228-9785-245b0a8b97d3", - "alias": "Account verification options", - "description": "Method with which to verity the existing account", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "idp-email-verification", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "ALTERNATIVE", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Verify Existing Account by Re-authentication", - "userSetupAllowed": false - } - ] - }, - { - "id": "ca0d604e-f9d7-41d2-8b99-db33e3509703", - "alias": "Browser - Conditional OTP", - "description": "Flow to determine if the OTP is required for the authentication", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "auth-otp-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "88d1ac6e-a2b3-4134-9a02-32132d6ff2db", - "alias": "Direct Grant - Conditional OTP", - "description": "Flow to determine if the OTP is required for the authentication", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "direct-grant-validate-otp", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "db9ccdfc-b349-4f61-bb2e-05dd92a557b0", - "alias": "First broker login - Conditional OTP", - "description": "Flow to determine if the OTP is required for the authentication", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "auth-otp-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "3902807b-cc97-4523-a7fd-28bca1ea8d30", - "alias": "Handle Existing Account", - "description": "Handle what to do if there is existing account with same email/username like authenticated identity provider", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "idp-confirm-link", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Account verification options", - "userSetupAllowed": false - } - ] - }, - { - "id": "1b4925c6-7891-40f1-b7ea-3b63d47dfa33", - "alias": "Reset - Conditional OTP", - "description": "Flow to determine if the OTP should be reset or not. Set to REQUIRED to force.", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "reset-otp", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "fcb4ca4d-d8f3-470d-acfa-47e02ecd2653", - "alias": "User creation or linking", - "description": "Flow for the existing/non-existing user alternatives", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticatorConfig": "create unique user config", - "authenticator": "idp-create-user-if-unique", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "ALTERNATIVE", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Handle Existing Account", - "userSetupAllowed": false - } - ] - }, - { - "id": "507f3347-f490-4c04-bba9-8301b1543069", - "alias": "Verify Existing Account by Re-authentication", - "description": "Reauthentication of existing account", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "idp-username-password-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "First broker login - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "5e2176d6-cba2-48f3-830d-7bcaa52676e8", - "alias": "browser", - "description": "browser based authentication", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "auth-cookie", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "auth-spnego", - "authenticatorFlow": false, - "requirement": "DISABLED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "identity-provider-redirector", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 25, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "ALTERNATIVE", - "priority": 30, - "autheticatorFlow": true, - "flowAlias": "forms", - "userSetupAllowed": false - } - ] - }, - { - "id": "f5665784-7c8f-4897-9a79-644c00dc2cf9", - "alias": "clients", - "description": "Base authentication for clients", - "providerId": "client-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "client-secret", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "client-jwt", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "client-secret-jwt", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 30, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "client-x509", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 40, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "e2e6c63f-a9f7-45a7-aada-bf088450827d", - "alias": "direct grant", - "description": "OpenID Connect Resource Owner Grant", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "direct-grant-validate-username", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "direct-grant-validate-password", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 30, - "autheticatorFlow": true, - "flowAlias": "Direct Grant - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "03d64d6d-b889-40d1-9de2-d5b1a7a811cb", - "alias": "docker auth", - "description": "Used by Docker clients to authenticate against the IDP", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "docker-http-basic-authenticator", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "f58bb252-9d3c-4f3f-9f54-e72f83c2f63f", - "alias": "first broker login", - "description": "Actions taken after first broker login with identity provider account, which is not yet linked to any Keycloak account", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticatorConfig": "review profile config", - "authenticator": "idp-review-profile", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "User creation or linking", - "userSetupAllowed": false - } - ] - }, - { - "id": "d79051e1-159a-468f-9ef8-add717410de7", - "alias": "forms", - "description": "Username, password, otp and other auth forms.", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "auth-username-password-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Browser - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "413b45b7-b0df-4595-9ff9-8362f113be4e", - "alias": "registration", - "description": "registration flow", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "registration-page-form", - "authenticatorFlow": true, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": true, - "flowAlias": "registration form", - "userSetupAllowed": false - } - ] - }, - { - "id": "a8924333-f24c-46b9-a9cf-b7b9f826f0d8", - "alias": "registration form", - "description": "registration form", - "providerId": "form-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "registration-user-creation", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "registration-password-action", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 50, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "registration-recaptcha-action", - "authenticatorFlow": false, - "requirement": "DISABLED", - "priority": 60, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "registration-terms-and-conditions", - "authenticatorFlow": false, - "requirement": "DISABLED", - "priority": 70, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "11c37574-3294-43b4-af71-c9dbe28385a4", - "alias": "reset credentials", - "description": "Reset credentials for a user if they forgot their password or something", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "reset-credentials-choose-user", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "reset-credential-email", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "reset-password", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 30, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 40, - "autheticatorFlow": true, - "flowAlias": "Reset - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "0883a5fe-90bb-4fe7-a200-46a0051fc5b6", - "alias": "saml ecp", - "description": "SAML ECP Profile Authentication Flow", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "http-basic-authenticator", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - } - ], - "authenticatorConfig": [ - { - "id": "c06b2cb2-6c60-457d-a186-ac1622367ea2", - "alias": "create unique user config", - "config": { - "require.password.update.after.registration": "false" - } - }, - { - "id": "5a741725-5123-41ec-8b12-b83ff2919245", - "alias": "review profile config", - "config": { - "update.profile.on.first.login": "missing" - } - } - ], - "requiredActions": [ - { - "alias": "CONFIGURE_TOTP", - "name": "Configure OTP", - "providerId": "CONFIGURE_TOTP", - "enabled": true, - "defaultAction": false, - "priority": 10, - "config": {} - }, - { - "alias": "TERMS_AND_CONDITIONS", - "name": "Terms and Conditions", - "providerId": "TERMS_AND_CONDITIONS", - "enabled": false, - "defaultAction": false, - "priority": 20, - "config": {} - }, - { - "alias": "UPDATE_PASSWORD", - "name": "Update Password", - "providerId": "UPDATE_PASSWORD", - "enabled": true, - "defaultAction": false, - "priority": 30, - "config": {} - }, - { - "alias": "UPDATE_PROFILE", - "name": "Update Profile", - "providerId": "UPDATE_PROFILE", - "enabled": true, - "defaultAction": false, - "priority": 40, - "config": {} - }, - { - "alias": "VERIFY_EMAIL", - "name": "Verify Email", - "providerId": "VERIFY_EMAIL", - "enabled": true, - "defaultAction": false, - "priority": 50, - "config": {} - }, - { - "alias": "delete_account", - "name": "Delete Account", - "providerId": "delete_account", - "enabled": false, - "defaultAction": false, - "priority": 60, - "config": {} - }, - { - "alias": "webauthn-register", - "name": "Webauthn Register", - "providerId": "webauthn-register", - "enabled": true, - "defaultAction": false, - "priority": 70, - "config": {} - }, - { - "alias": "webauthn-register-passwordless", - "name": "Webauthn Register Passwordless", - "providerId": "webauthn-register-passwordless", - "enabled": true, - "defaultAction": false, - "priority": 80, - "config": {} - }, - { - "alias": "VERIFY_PROFILE", - "name": "Verify Profile", - "providerId": "VERIFY_PROFILE", - "enabled": true, - "defaultAction": false, - "priority": 90, - "config": {} - }, - { - "alias": "delete_credential", - "name": "Delete Credential", - "providerId": "delete_credential", - "enabled": true, - "defaultAction": false, - "priority": 100, - "config": {} - }, - { - "alias": "update_user_locale", - "name": "Update User Locale", - "providerId": "update_user_locale", - "enabled": true, - "defaultAction": false, - "priority": 1000, - "config": {} - } - ], - "browserFlow": "browser", - "registrationFlow": "registration", - "directGrantFlow": "direct grant", - "resetCredentialsFlow": "reset credentials", - "clientAuthenticationFlow": "clients", - "dockerAuthenticationFlow": "docker auth", - "firstBrokerLoginFlow": "first broker login", - "attributes": { - "cibaBackchannelTokenDeliveryMode": "poll", - "cibaAuthRequestedUserHint": "login_hint", - "clientOfflineSessionMaxLifespan": "0", - "oauth2DevicePollingInterval": "5", - "clientSessionIdleTimeout": "0", - "clientOfflineSessionIdleTimeout": "0", - "cibaInterval": "5", - "realmReusableOtpCode": "false", - "cibaExpiresIn": "120", - "oauth2DeviceCodeLifespan": "600", - "parRequestUriLifespan": "60", - "clientSessionMaxLifespan": "0", - "organizationsEnabled": "false" - }, - "keycloakVersion": "25.0.6", - "userManagedAccessAllowed": false, - "organizationsEnabled": false, - "clientProfiles": { - "profiles": [] - }, - "clientPolicies": { - "policies": [] - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/keycloak/realm-export.json b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/keycloak/realm-export.json deleted file mode 100644 index ace2121..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/keycloak/realm-export.json +++ /dev/null @@ -1,2340 +0,0 @@ -{ - "id": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "realm": "myrealm", - "notBefore": 0, - "defaultSignatureAlgorithm": "RS256", - "revokeRefreshToken": false, - "refreshTokenMaxReuse": 0, - "accessTokenLifespan": 300, - "accessTokenLifespanForImplicitFlow": 900, - "ssoSessionIdleTimeout": 1800, - "ssoSessionMaxLifespan": 36000, - "ssoSessionIdleTimeoutRememberMe": 0, - "ssoSessionMaxLifespanRememberMe": 0, - "offlineSessionIdleTimeout": 2592000, - "offlineSessionMaxLifespanEnabled": false, - "offlineSessionMaxLifespan": 5184000, - "clientSessionIdleTimeout": 0, - "clientSessionMaxLifespan": 0, - "clientOfflineSessionIdleTimeout": 0, - "clientOfflineSessionMaxLifespan": 0, - "accessCodeLifespan": 60, - "accessCodeLifespanUserAction": 300, - "accessCodeLifespanLogin": 1800, - "actionTokenGeneratedByAdminLifespan": 43200, - "actionTokenGeneratedByUserLifespan": 300, - "oauth2DeviceCodeLifespan": 600, - "oauth2DevicePollingInterval": 5, - "enabled": true, - "sslRequired": "external", - "registrationAllowed": false, - "registrationEmailAsUsername": false, - "rememberMe": false, - "verifyEmail": false, - "loginWithEmailAllowed": true, - "duplicateEmailsAllowed": false, - "resetPasswordAllowed": false, - "editUsernameAllowed": false, - "bruteForceProtected": false, - "permanentLockout": false, - "maxTemporaryLockouts": 0, - "maxFailureWaitSeconds": 900, - "minimumQuickLoginWaitSeconds": 60, - "waitIncrementSeconds": 60, - "quickLoginCheckMilliSeconds": 1000, - "maxDeltaTimeSeconds": 43200, - "failureFactor": 30, - "roles": { - "realm": [ - { - "id": "e244bb93-131d-4e77-b46d-9e30c3bc71a2", - "name": "default-roles-myrealm", - "description": "${role_default-roles}", - "composite": true, - "composites": { - "realm": [ - "offline_access", - "uma_authorization" - ], - "client": { - "account": [ - "view-profile", - "manage-account" - ] - } - }, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - }, - { - "id": "f7750469-d72b-4e66-a66f-d3d9a9a36333", - "name": "admin", - "description": "", - "composite": false, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - }, - { - "id": "8482f125-8673-47d4-af21-3fb2cf30199c", - "name": "offline_access", - "description": "${role_offline-access}", - "composite": false, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - }, - { - "id": "f538e4dd-964b-450e-902d-1f1066b681e0", - "name": "user", - "description": "", - "composite": false, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - }, - { - "id": "d1e74ae7-4ed2-416c-bded-01b9d0dd728d", - "name": "uma_authorization", - "description": "${role_uma_authorization}", - "composite": false, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd", - "attributes": {} - } - ], - "client": { - "myclient-bearer": [], - "realm-management": [ - { - "id": "152833cd-ad5c-4961-949c-43d544e02400", - "name": "manage-users", - "description": "${role_manage-users}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "266e02b7-c9fc-40ed-9c99-848d6e1d0839", - "name": "view-realm", - "description": "${role_view-realm}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "bae303d6-3bfc-4855-ab5c-277d693f251a", - "name": "manage-authorization", - "description": "${role_manage-authorization}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "7e387d7c-20d5-4416-9e07-e4358a277d9f", - "name": "manage-identity-providers", - "description": "${role_manage-identity-providers}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "e2cd32fb-d248-4d51-af02-b9bd42684785", - "name": "view-identity-providers", - "description": "${role_view-identity-providers}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "ddf3c611-0caa-4875-b43c-6775dec61952", - "name": "realm-admin", - "description": "${role_realm-admin}", - "composite": true, - "composites": { - "client": { - "realm-management": [ - "manage-users", - "view-realm", - "manage-identity-providers", - "manage-authorization", - "view-identity-providers", - "view-authorization", - "impersonation", - "view-clients", - "query-realms", - "manage-clients", - "query-users", - "manage-events", - "create-client", - "manage-realm", - "query-clients", - "query-groups", - "view-users", - "view-events" - ] - } - }, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "abbc0061-271d-4d1c-ac14-064b6da4a8bd", - "name": "view-authorization", - "description": "${role_view-authorization}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "c8db1d55-ae3c-440c-84c8-badac31e02be", - "name": "impersonation", - "description": "${role_impersonation}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "89ed282f-9497-4031-9297-9a6ffb80977e", - "name": "view-clients", - "description": "${role_view-clients}", - "composite": true, - "composites": { - "client": { - "realm-management": [ - "query-clients" - ] - } - }, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "e567304f-dce1-4a2e-bd98-bee580dac531", - "name": "manage-clients", - "description": "${role_manage-clients}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "2fd99287-4b5c-467e-b42e-aa42a86ae5d6", - "name": "query-realms", - "description": "${role_query-realms}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "7bebaed3-0d83-4191-95f7-553deeefb8e4", - "name": "query-users", - "description": "${role_query-users}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "db213033-a1fb-4a13-8df1-1bde21cf512d", - "name": "manage-events", - "description": "${role_manage-events}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "e468db88-7102-4b95-aa0e-a42f02c488b7", - "name": "create-client", - "description": "${role_create-client}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "557bb45d-8f68-4d41-bf7b-b83a056dc41f", - "name": "manage-realm", - "description": "${role_manage-realm}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "4fd5f30d-ce6a-4a19-9ce8-e89495fb934a", - "name": "query-clients", - "description": "${role_query-clients}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "2f9f5d76-95cc-412d-b3d0-1b1f837c63b6", - "name": "query-groups", - "description": "${role_query-groups}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "f4d48608-87c3-481f-b628-f3a1439c0e51", - "name": "view-users", - "description": "${role_view-users}", - "composite": true, - "composites": { - "client": { - "realm-management": [ - "query-groups", - "query-users" - ] - } - }, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - }, - { - "id": "44b02d05-e62d-4f76-8a7c-87c349c137d5", - "name": "view-events", - "description": "${role_view-events}", - "composite": false, - "clientRole": true, - "containerId": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "attributes": {} - } - ], - "myclient-public": [], - "security-admin-console": [], - "admin-cli": [], - "account-console": [], - "broker": [ - { - "id": "dd04258d-d8a9-4656-907b-81db24e7b629", - "name": "read-token", - "description": "${role_read-token}", - "composite": false, - "clientRole": true, - "containerId": "5df8ddbf-d142-41a1-9b6a-f55eeb00a055", - "attributes": {} - } - ], - "account": [ - { - "id": "8aad3990-2117-405a-a2b4-6498d8dcc5f9", - "name": "view-profile", - "description": "${role_view-profile}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "bc6224fe-725a-47ac-99bc-dde5526eb213", - "name": "view-consent", - "description": "${role_view-consent}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "4c33a25e-da86-479a-a53c-bcf0b177ec38", - "name": "manage-account-links", - "description": "${role_manage-account-links}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "ad7cc780-dd3a-49a5-a3b7-ca9a4de8d402", - "name": "manage-consent", - "description": "${role_manage-consent}", - "composite": true, - "composites": { - "client": { - "account": [ - "view-consent" - ] - } - }, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "6754d5b4-d8a6-498f-8b03-a4c5416801c3", - "name": "manage-account", - "description": "${role_manage-account}", - "composite": true, - "composites": { - "client": { - "account": [ - "manage-account-links" - ] - } - }, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "f12c2cd1-989f-491b-9c44-e58ee49dba00", - "name": "delete-account", - "description": "${role_delete-account}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "6e8eacf8-c5d1-4439-813e-b99a6cb8a297", - "name": "view-applications", - "description": "${role_view-applications}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - }, - { - "id": "43a64b6b-6220-4480-bf28-acde5359aca9", - "name": "view-groups", - "description": "${role_view-groups}", - "composite": false, - "clientRole": true, - "containerId": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "attributes": {} - } - ] - } - }, - "groups": [], - "defaultRole": { - "id": "e244bb93-131d-4e77-b46d-9e30c3bc71a2", - "name": "default-roles-myrealm", - "description": "${role_default-roles}", - "composite": true, - "clientRole": false, - "containerId": "817d92d5-22d7-41a7-9053-bbd6c50e1cdd" - }, - "requiredCredentials": [ - "password" - ], - "otpPolicyType": "totp", - "otpPolicyAlgorithm": "HmacSHA1", - "otpPolicyInitialCounter": 0, - "otpPolicyDigits": 6, - "otpPolicyLookAheadWindow": 1, - "otpPolicyPeriod": 30, - "otpPolicyCodeReusable": false, - "otpSupportedApplications": [ - "totpAppFreeOTPName", - "totpAppGoogleName", - "totpAppMicrosoftAuthenticatorName" - ], - "localizationTexts": {}, - "webAuthnPolicyRpEntityName": "keycloak", - "webAuthnPolicySignatureAlgorithms": [ - "ES256" - ], - "webAuthnPolicyRpId": "", - "webAuthnPolicyAttestationConveyancePreference": "not specified", - "webAuthnPolicyAuthenticatorAttachment": "not specified", - "webAuthnPolicyRequireResidentKey": "not specified", - "webAuthnPolicyUserVerificationRequirement": "not specified", - "webAuthnPolicyCreateTimeout": 0, - "webAuthnPolicyAvoidSameAuthenticatorRegister": false, - "webAuthnPolicyAcceptableAaguids": [], - "webAuthnPolicyExtraOrigins": [], - "webAuthnPolicyPasswordlessRpEntityName": "keycloak", - "webAuthnPolicyPasswordlessSignatureAlgorithms": [ - "ES256" - ], - "webAuthnPolicyPasswordlessRpId": "", - "webAuthnPolicyPasswordlessAttestationConveyancePreference": "not specified", - "webAuthnPolicyPasswordlessAuthenticatorAttachment": "not specified", - "webAuthnPolicyPasswordlessRequireResidentKey": "not specified", - "webAuthnPolicyPasswordlessUserVerificationRequirement": "not specified", - "webAuthnPolicyPasswordlessCreateTimeout": 0, - "webAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister": false, - "webAuthnPolicyPasswordlessAcceptableAaguids": [], - "webAuthnPolicyPasswordlessExtraOrigins": [], - "scopeMappings": [ - { - "clientScope": "offline_access", - "roles": [ - "offline_access" - ] - } - ], - "clientScopeMappings": { - "account": [ - { - "client": "account-console", - "roles": [ - "manage-account", - "view-groups" - ] - } - ] - }, - "clients": [ - { - "id": "cd8c2d99-ee41-43c9-a9ea-7081c8dd68c4", - "clientId": "account", - "name": "${client_account}", - "rootUrl": "${authBaseUrl}", - "baseUrl": "/realms/myrealm/account/", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/realms/myrealm/account/*" - ], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "da88a8bb-04e1-4f62-bf9a-05d4a14c849c", - "clientId": "account-console", - "name": "${client_account-console}", - "rootUrl": "${authBaseUrl}", - "baseUrl": "/realms/myrealm/account/", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/realms/myrealm/account/*" - ], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+", - "pkce.code.challenge.method": "S256" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "protocolMappers": [ - { - "id": "697a1862-0ab3-467b-978e-d001f9dbb42b", - "name": "audience resolve", - "protocol": "openid-connect", - "protocolMapper": "oidc-audience-resolve-mapper", - "consentRequired": false, - "config": {} - } - ], - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "84fc5d4a-a2bf-48d1-a558-29249ca06660", - "clientId": "admin-cli", - "name": "${client_admin-cli}", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": false, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": true, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "5df8ddbf-d142-41a1-9b6a-f55eeb00a055", - "clientId": "broker", - "name": "${client_broker}", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": true, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": false, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "1576b754-20a8-4f55-b4d2-458815fc4a68", - "clientId": "myclient-bearer", - "name": "", - "description": "", - "rootUrl": "", - "adminUrl": "", - "baseUrl": "", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/*" - ], - "webOrigins": [ - "/*" - ], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": false, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": true, - "protocol": "openid-connect", - "attributes": { - "oidc.ciba.grant.enabled": "false", - "backchannel.logout.session.required": "true", - "oauth2.device.authorization.grant.enabled": "false", - "backchannel.logout.revoke.offline.tokens": "false" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": true, - "nodeReRegistrationTimeout": -1, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "1689ba73-ec80-40f2-862f-dd66fe525fbc", - "clientId": "myclient-public", - "name": "myclient-public", - "description": "", - "rootUrl": "", - "adminUrl": "", - "baseUrl": "", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "secret": "**********", - "redirectUris": [ - "*" - ], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": true, - "serviceAccountsEnabled": false, - "publicClient": false, - "frontchannelLogout": true, - "protocol": "openid-connect", - "attributes": { - "oidc.ciba.grant.enabled": "false", - "client.secret.creation.time": "1727623916", - "backchannel.logout.session.required": "true", - "post.logout.redirect.uris": "+", - "oauth2.device.authorization.grant.enabled": "false", - "display.on.consent.screen": "false", - "backchannel.logout.revoke.offline.tokens": "false" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": true, - "nodeReRegistrationTimeout": -1, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "493e07c3-a449-41b4-90f7-5e54f51b9b08", - "clientId": "realm-management", - "name": "${client_realm-management}", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": true, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": false, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "f63254a8-fe51-4512-99af-9844b941e5da", - "clientId": "security-admin-console", - "name": "${client_security-admin-console}", - "rootUrl": "${authAdminUrl}", - "baseUrl": "/admin/myrealm/console/", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/admin/myrealm/console/*" - ], - "webOrigins": [ - "+" - ], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+", - "pkce.code.challenge.method": "S256" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "protocolMappers": [ - { - "id": "5d913a22-ecf2-4a53-815c-3f9cdc8eab30", - "name": "locale", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "locale", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "locale", - "jsonType.label": "String" - } - } - ], - "defaultClientScopes": [ - "web-origins", - "acr", - "roles", - "profile", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - } - ], - "clientScopes": [ - { - "id": "cf6d74d8-c0d8-406d-bb82-531f1693a217", - "name": "roles", - "description": "OpenID Connect scope for add user roles to the access token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "consent.screen.text": "${rolesScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "acee1658-0731-4c4d-a89b-088c36ce3607", - "name": "audience resolve", - "protocol": "openid-connect", - "protocolMapper": "oidc-audience-resolve-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "access.token.claim": "true" - } - }, - { - "id": "32b38646-bb6c-4eac-b302-9d1e1b6681ea", - "name": "client roles", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-client-role-mapper", - "consentRequired": false, - "config": { - "user.attribute": "foo", - "introspection.token.claim": "true", - "access.token.claim": "true", - "claim.name": "resource_access.${client_id}.roles", - "jsonType.label": "String", - "multivalued": "true" - } - }, - { - "id": "189d566e-05b5-477b-875b-598e00afdda5", - "name": "realm roles", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-realm-role-mapper", - "consentRequired": false, - "config": { - "user.attribute": "foo", - "introspection.token.claim": "true", - "access.token.claim": "true", - "claim.name": "realm_access.roles", - "jsonType.label": "String", - "multivalued": "true" - } - } - ] - }, - { - "id": "13538e20-7abc-4733-a422-427084f02b1c", - "name": "phone", - "description": "OpenID Connect built-in scope: phone", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${phoneScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "4e121a6a-59f5-4814-a285-cd2602f9ad73", - "name": "phone number", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "phoneNumber", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "phone_number", - "jsonType.label": "String" - } - }, - { - "id": "fe1f7529-94c6-4485-85bd-6059aa227fdc", - "name": "phone number verified", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "phoneNumberVerified", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "phone_number_verified", - "jsonType.label": "boolean" - } - } - ] - }, - { - "id": "7c57ceb5-bbf6-4a12-9680-89be1adabacc", - "name": "microprofile-jwt", - "description": "Microprofile - JWT built-in scope", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "d72580b3-93a3-4df5-91fc-907fe65d5b79", - "name": "groups", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-realm-role-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "multivalued": "true", - "userinfo.token.claim": "true", - "user.attribute": "foo", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "groups", - "jsonType.label": "String" - } - }, - { - "id": "55309e2e-20a4-4ed4-8dc8-4a62b7990cff", - "name": "upn", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "username", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "upn", - "jsonType.label": "String" - } - } - ] - }, - { - "id": "f3d1057a-bff9-45fa-b764-3863c3a32603", - "name": "acr", - "description": "OpenID Connect scope for add acr (authentication context class reference) to the token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "5fdcf129-e159-4a80-820e-9bc9a92724d3", - "name": "acr loa level", - "protocol": "openid-connect", - "protocolMapper": "oidc-acr-mapper", - "consentRequired": false, - "config": { - "id.token.claim": "true", - "introspection.token.claim": "true", - "access.token.claim": "true", - "userinfo.token.claim": "true" - } - } - ] - }, - { - "id": "798989d1-22f8-487a-b756-550d4a904d13", - "name": "role_list", - "description": "SAML role list", - "protocol": "saml", - "attributes": { - "consent.screen.text": "${samlRoleListScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "9e676d48-fbd3-43b3-a2ff-7ceffe2218bc", - "name": "role list", - "protocol": "saml", - "protocolMapper": "saml-role-list-mapper", - "consentRequired": false, - "config": { - "single": "false", - "attribute.nameformat": "Basic", - "attribute.name": "Role" - } - } - ] - }, - { - "id": "ba009541-5f43-4ca1-a993-9e0649ba4063", - "name": "email", - "description": "OpenID Connect built-in scope: email", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${emailScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "c71f478e-d329-4023-9140-c1b2ba1f3785", - "name": "email verified", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-property-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "emailVerified", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "email_verified", - "jsonType.label": "boolean" - } - }, - { - "id": "ea101535-6e03-43e5-8be0-711290fa33a5", - "name": "email", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "email", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "email", - "jsonType.label": "String" - } - } - ] - }, - { - "id": "386ad3cd-f24c-4bd3-be0f-99e56da8948f", - "name": "offline_access", - "description": "OpenID Connect built-in scope: offline_access", - "protocol": "openid-connect", - "attributes": { - "consent.screen.text": "${offlineAccessScopeConsentText}", - "display.on.consent.screen": "true" - } - }, - { - "id": "8bd2c2fd-78f3-4d59-a649-d87db12ace5d", - "name": "profile", - "description": "OpenID Connect built-in scope: profile", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${profileScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "3bb38a5c-7792-4246-a72a-b3049d5a0169", - "name": "updated at", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "updatedAt", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "updated_at", - "jsonType.label": "long" - } - }, - { - "id": "8c51b2a7-da37-43d7-a2a0-fda2b88649e2", - "name": "given name", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "firstName", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "given_name", - "jsonType.label": "String" - } - }, - { - "id": "18842a37-9e50-4257-b657-9c863ebef630", - "name": "username", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "username", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "preferred_username", - "jsonType.label": "String" - } - }, - { - "id": "efb10611-3f4a-429d-8849-281bad6428f0", - "name": "zoneinfo", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "zoneinfo", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "zoneinfo", - "jsonType.label": "String" - } - }, - { - "id": "0edb7689-5337-4def-839a-68ed6a7cbb57", - "name": "birthdate", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "birthdate", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "birthdate", - "jsonType.label": "String" - } - }, - { - "id": "8f067106-d136-4c35-ab84-c994b89ef10b", - "name": "locale", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "locale", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "locale", - "jsonType.label": "String" - } - }, - { - "id": "3efe6a01-82f6-4f51-bb92-045cfb22036e", - "name": "gender", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "gender", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "gender", - "jsonType.label": "String" - } - }, - { - "id": "45e533e1-c199-4b78-8979-376aa8997322", - "name": "full name", - "protocol": "openid-connect", - "protocolMapper": "oidc-full-name-mapper", - "consentRequired": false, - "config": { - "id.token.claim": "true", - "introspection.token.claim": "true", - "access.token.claim": "true", - "userinfo.token.claim": "true" - } - }, - { - "id": "3c668b7e-d5b3-470b-bfa1-f9995d22c577", - "name": "middle name", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "middleName", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "middle_name", - "jsonType.label": "String" - } - }, - { - "id": "74415c86-da2c-430f-9c0c-a5c494f89421", - "name": "profile", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "profile", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "profile", - "jsonType.label": "String" - } - }, - { - "id": "b9bc19a7-9535-4599-9142-e95b9acf4ce2", - "name": "family name", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "lastName", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "family_name", - "jsonType.label": "String" - } - }, - { - "id": "849fa957-08ce-49ba-a34e-ebd78da92b0d", - "name": "nickname", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "nickname", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "nickname", - "jsonType.label": "String" - } - }, - { - "id": "c5cf3807-15b8-41bc-a34f-b8bc780496d0", - "name": "website", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "website", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "website", - "jsonType.label": "String" - } - }, - { - "id": "69a079e5-1d07-4711-9ffc-3b64a45b7f69", - "name": "picture", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "picture", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "picture", - "jsonType.label": "String" - } - } - ] - }, - { - "id": "d8e218e1-a539-41c6-9c3a-2f77ca142936", - "name": "basic", - "description": "OpenID Connect scope for add all basic claims to the token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "bb7213ed-9ab5-4615-b30c-1a291e20e01d", - "name": "sub", - "protocol": "openid-connect", - "protocolMapper": "oidc-sub-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "access.token.claim": "true" - } - }, - { - "id": "fb82981f-eaf1-40f9-827d-c8ed77062b8b", - "name": "auth_time", - "protocol": "openid-connect", - "protocolMapper": "oidc-usersessionmodel-note-mapper", - "consentRequired": false, - "config": { - "user.session.note": "AUTH_TIME", - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "auth_time", - "jsonType.label": "long" - } - } - ] - }, - { - "id": "1bba0124-a513-4c57-909a-fd07cede6aa3", - "name": "address", - "description": "OpenID Connect built-in scope: address", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${addressScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "0d70fe9d-ee85-478c-87d5-67276cb88b40", - "name": "address", - "protocol": "openid-connect", - "protocolMapper": "oidc-address-mapper", - "consentRequired": false, - "config": { - "user.attribute.formatted": "formatted", - "user.attribute.country": "country", - "introspection.token.claim": "true", - "user.attribute.postal_code": "postal_code", - "userinfo.token.claim": "true", - "user.attribute.street": "street", - "id.token.claim": "true", - "user.attribute.region": "region", - "access.token.claim": "true", - "user.attribute.locality": "locality" - } - } - ] - }, - { - "id": "ab919ba9-761b-4e12-b53f-bc5b67e82dd7", - "name": "web-origins", - "description": "OpenID Connect scope for add allowed web origins to the access token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "consent.screen.text": "", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "0567da44-1b5a-40a8-b792-7b893b573cef", - "name": "allowed web origins", - "protocol": "openid-connect", - "protocolMapper": "oidc-allowed-origins-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "access.token.claim": "true" - } - } - ] - } - ], - "defaultDefaultClientScopes": [ - "role_list", - "profile", - "email", - "roles", - "web-origins", - "acr", - "basic" - ], - "defaultOptionalClientScopes": [ - "offline_access", - "address", - "phone", - "microprofile-jwt" - ], - "browserSecurityHeaders": { - "contentSecurityPolicyReportOnly": "", - "xContentTypeOptions": "nosniff", - "referrerPolicy": "no-referrer", - "xRobotsTag": "none", - "xFrameOptions": "SAMEORIGIN", - "contentSecurityPolicy": "frame-src 'self'; frame-ancestors 'self'; object-src 'none';", - "xXSSProtection": "1; mode=block", - "strictTransportSecurity": "max-age=31536000; includeSubDomains" - }, - "smtpServer": {}, - "eventsEnabled": false, - "eventsListeners": [ - "jboss-logging" - ], - "enabledEventTypes": [], - "adminEventsEnabled": false, - "adminEventsDetailsEnabled": false, - "identityProviders": [], - "identityProviderMappers": [], - "components": { - "org.keycloak.services.clientregistration.policy.ClientRegistrationPolicy": [ - { - "id": "13c768a7-73bd-4ed5-a792-fc36d0d57717", - "name": "Allowed Protocol Mapper Types", - "providerId": "allowed-protocol-mappers", - "subType": "authenticated", - "subComponents": {}, - "config": { - "allowed-protocol-mapper-types": [ - "oidc-usermodel-property-mapper", - "saml-user-attribute-mapper", - "saml-role-list-mapper", - "oidc-sha256-pairwise-sub-mapper", - "saml-user-property-mapper", - "oidc-address-mapper", - "oidc-full-name-mapper", - "oidc-usermodel-attribute-mapper" - ] - } - }, - { - "id": "1b3a090d-e859-45e1-9b89-02f026b7f32e", - "name": "Allowed Client Scopes", - "providerId": "allowed-client-templates", - "subType": "anonymous", - "subComponents": {}, - "config": { - "allow-default-scopes": [ - "true" - ] - } - }, - { - "id": "4ecc6549-6630-4559-8c38-fdf670a75523", - "name": "Allowed Client Scopes", - "providerId": "allowed-client-templates", - "subType": "authenticated", - "subComponents": {}, - "config": { - "allow-default-scopes": [ - "true" - ] - } - }, - { - "id": "9180bbd5-6fe2-4a13-bdab-4f3a0705cc46", - "name": "Trusted Hosts", - "providerId": "trusted-hosts", - "subType": "anonymous", - "subComponents": {}, - "config": { - "host-sending-registration-request-must-match": [ - "true" - ], - "client-uris-must-match": [ - "true" - ] - } - }, - { - "id": "7798d00c-89df-4284-8e52-657ffb8c7c6b", - "name": "Consent Required", - "providerId": "consent-required", - "subType": "anonymous", - "subComponents": {}, - "config": {} - }, - { - "id": "64afd6b5-471f-4ce5-a8b7-1140e4491ae5", - "name": "Full Scope Disabled", - "providerId": "scope", - "subType": "anonymous", - "subComponents": {}, - "config": {} - }, - { - "id": "92bdf5a1-2e82-4750-aff2-d5d5ac069ccc", - "name": "Allowed Protocol Mapper Types", - "providerId": "allowed-protocol-mappers", - "subType": "anonymous", - "subComponents": {}, - "config": { - "allowed-protocol-mapper-types": [ - "oidc-usermodel-property-mapper", - "saml-role-list-mapper", - "oidc-sha256-pairwise-sub-mapper", - "saml-user-attribute-mapper", - "oidc-usermodel-attribute-mapper", - "saml-user-property-mapper", - "oidc-address-mapper", - "oidc-full-name-mapper" - ] - } - }, - { - "id": "35599b1e-ac69-4ed8-8ce8-d752000b6e4b", - "name": "Max Clients Limit", - "providerId": "max-clients", - "subType": "anonymous", - "subComponents": {}, - "config": { - "max-clients": [ - "200" - ] - } - } - ], - "org.keycloak.keys.KeyProvider": [ - { - "id": "3c026515-7b11-42ed-9863-147135f13834", - "name": "aes-generated", - "providerId": "aes-generated", - "subComponents": {}, - "config": { - "priority": [ - "100" - ] - } - }, - { - "id": "c658d9a6-94b1-42da-9c51-5be49a50604b", - "name": "rsa-generated", - "providerId": "rsa-generated", - "subComponents": {}, - "config": { - "priority": [ - "100" - ] - } - }, - { - "id": "cc0e6390-eac7-42dd-bc6e-394232f37320", - "name": "hmac-generated-hs512", - "providerId": "hmac-generated", - "subComponents": {}, - "config": { - "priority": [ - "100" - ], - "algorithm": [ - "HS512" - ] - } - }, - { - "id": "23e1c23d-1c5b-4e14-bfd6-392419d0856c", - "name": "rsa-enc-generated", - "providerId": "rsa-enc-generated", - "subComponents": {}, - "config": { - "priority": [ - "100" - ], - "algorithm": [ - "RSA-OAEP" - ] - } - } - ] - }, - "internationalizationEnabled": false, - "supportedLocales": [], - "authenticationFlows": [ - { - "id": "b12f1eb6-8592-4228-9785-245b0a8b97d3", - "alias": "Account verification options", - "description": "Method with which to verity the existing account", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "idp-email-verification", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "ALTERNATIVE", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Verify Existing Account by Re-authentication", - "userSetupAllowed": false - } - ] - }, - { - "id": "ca0d604e-f9d7-41d2-8b99-db33e3509703", - "alias": "Browser - Conditional OTP", - "description": "Flow to determine if the OTP is required for the authentication", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "auth-otp-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "88d1ac6e-a2b3-4134-9a02-32132d6ff2db", - "alias": "Direct Grant - Conditional OTP", - "description": "Flow to determine if the OTP is required for the authentication", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "direct-grant-validate-otp", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "db9ccdfc-b349-4f61-bb2e-05dd92a557b0", - "alias": "First broker login - Conditional OTP", - "description": "Flow to determine if the OTP is required for the authentication", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "auth-otp-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "3902807b-cc97-4523-a7fd-28bca1ea8d30", - "alias": "Handle Existing Account", - "description": "Handle what to do if there is existing account with same email/username like authenticated identity provider", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "idp-confirm-link", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Account verification options", - "userSetupAllowed": false - } - ] - }, - { - "id": "1b4925c6-7891-40f1-b7ea-3b63d47dfa33", - "alias": "Reset - Conditional OTP", - "description": "Flow to determine if the OTP should be reset or not. Set to REQUIRED to force.", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "reset-otp", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "fcb4ca4d-d8f3-470d-acfa-47e02ecd2653", - "alias": "User creation or linking", - "description": "Flow for the existing/non-existing user alternatives", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticatorConfig": "create unique user config", - "authenticator": "idp-create-user-if-unique", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "ALTERNATIVE", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Handle Existing Account", - "userSetupAllowed": false - } - ] - }, - { - "id": "507f3347-f490-4c04-bba9-8301b1543069", - "alias": "Verify Existing Account by Re-authentication", - "description": "Reauthentication of existing account", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "idp-username-password-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "First broker login - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "5e2176d6-cba2-48f3-830d-7bcaa52676e8", - "alias": "browser", - "description": "browser based authentication", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "auth-cookie", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "auth-spnego", - "authenticatorFlow": false, - "requirement": "DISABLED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "identity-provider-redirector", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 25, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "ALTERNATIVE", - "priority": 30, - "autheticatorFlow": true, - "flowAlias": "forms", - "userSetupAllowed": false - } - ] - }, - { - "id": "f5665784-7c8f-4897-9a79-644c00dc2cf9", - "alias": "clients", - "description": "Base authentication for clients", - "providerId": "client-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "client-secret", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "client-jwt", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "client-secret-jwt", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 30, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "client-x509", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 40, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "e2e6c63f-a9f7-45a7-aada-bf088450827d", - "alias": "direct grant", - "description": "OpenID Connect Resource Owner Grant", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "direct-grant-validate-username", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "direct-grant-validate-password", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 30, - "autheticatorFlow": true, - "flowAlias": "Direct Grant - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "03d64d6d-b889-40d1-9de2-d5b1a7a811cb", - "alias": "docker auth", - "description": "Used by Docker clients to authenticate against the IDP", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "docker-http-basic-authenticator", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "f58bb252-9d3c-4f3f-9f54-e72f83c2f63f", - "alias": "first broker login", - "description": "Actions taken after first broker login with identity provider account, which is not yet linked to any Keycloak account", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticatorConfig": "review profile config", - "authenticator": "idp-review-profile", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "User creation or linking", - "userSetupAllowed": false - } - ] - }, - { - "id": "d79051e1-159a-468f-9ef8-add717410de7", - "alias": "forms", - "description": "Username, password, otp and other auth forms.", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "auth-username-password-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Browser - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "413b45b7-b0df-4595-9ff9-8362f113be4e", - "alias": "registration", - "description": "registration flow", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "registration-page-form", - "authenticatorFlow": true, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": true, - "flowAlias": "registration form", - "userSetupAllowed": false - } - ] - }, - { - "id": "a8924333-f24c-46b9-a9cf-b7b9f826f0d8", - "alias": "registration form", - "description": "registration form", - "providerId": "form-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "registration-user-creation", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "registration-password-action", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 50, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "registration-recaptcha-action", - "authenticatorFlow": false, - "requirement": "DISABLED", - "priority": 60, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "registration-terms-and-conditions", - "authenticatorFlow": false, - "requirement": "DISABLED", - "priority": 70, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "11c37574-3294-43b4-af71-c9dbe28385a4", - "alias": "reset credentials", - "description": "Reset credentials for a user if they forgot their password or something", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "reset-credentials-choose-user", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "reset-credential-email", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "reset-password", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 30, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 40, - "autheticatorFlow": true, - "flowAlias": "Reset - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "0883a5fe-90bb-4fe7-a200-46a0051fc5b6", - "alias": "saml ecp", - "description": "SAML ECP Profile Authentication Flow", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "http-basic-authenticator", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - } - ], - "authenticatorConfig": [ - { - "id": "c06b2cb2-6c60-457d-a186-ac1622367ea2", - "alias": "create unique user config", - "config": { - "require.password.update.after.registration": "false" - } - }, - { - "id": "5a741725-5123-41ec-8b12-b83ff2919245", - "alias": "review profile config", - "config": { - "update.profile.on.first.login": "missing" - } - } - ], - "requiredActions": [ - { - "alias": "CONFIGURE_TOTP", - "name": "Configure OTP", - "providerId": "CONFIGURE_TOTP", - "enabled": true, - "defaultAction": false, - "priority": 10, - "config": {} - }, - { - "alias": "TERMS_AND_CONDITIONS", - "name": "Terms and Conditions", - "providerId": "TERMS_AND_CONDITIONS", - "enabled": false, - "defaultAction": false, - "priority": 20, - "config": {} - }, - { - "alias": "UPDATE_PASSWORD", - "name": "Update Password", - "providerId": "UPDATE_PASSWORD", - "enabled": true, - "defaultAction": false, - "priority": 30, - "config": {} - }, - { - "alias": "UPDATE_PROFILE", - "name": "Update Profile", - "providerId": "UPDATE_PROFILE", - "enabled": true, - "defaultAction": false, - "priority": 40, - "config": {} - }, - { - "alias": "VERIFY_EMAIL", - "name": "Verify Email", - "providerId": "VERIFY_EMAIL", - "enabled": true, - "defaultAction": false, - "priority": 50, - "config": {} - }, - { - "alias": "delete_account", - "name": "Delete Account", - "providerId": "delete_account", - "enabled": false, - "defaultAction": false, - "priority": 60, - "config": {} - }, - { - "alias": "webauthn-register", - "name": "Webauthn Register", - "providerId": "webauthn-register", - "enabled": true, - "defaultAction": false, - "priority": 70, - "config": {} - }, - { - "alias": "webauthn-register-passwordless", - "name": "Webauthn Register Passwordless", - "providerId": "webauthn-register-passwordless", - "enabled": true, - "defaultAction": false, - "priority": 80, - "config": {} - }, - { - "alias": "VERIFY_PROFILE", - "name": "Verify Profile", - "providerId": "VERIFY_PROFILE", - "enabled": true, - "defaultAction": false, - "priority": 90, - "config": {} - }, - { - "alias": "delete_credential", - "name": "Delete Credential", - "providerId": "delete_credential", - "enabled": true, - "defaultAction": false, - "priority": 100, - "config": {} - }, - { - "alias": "update_user_locale", - "name": "Update User Locale", - "providerId": "update_user_locale", - "enabled": true, - "defaultAction": false, - "priority": 1000, - "config": {} - } - ], - "browserFlow": "browser", - "registrationFlow": "registration", - "directGrantFlow": "direct grant", - "resetCredentialsFlow": "reset credentials", - "clientAuthenticationFlow": "clients", - "dockerAuthenticationFlow": "docker auth", - "firstBrokerLoginFlow": "first broker login", - "attributes": { - "cibaBackchannelTokenDeliveryMode": "poll", - "cibaAuthRequestedUserHint": "login_hint", - "clientOfflineSessionMaxLifespan": "0", - "oauth2DevicePollingInterval": "5", - "clientSessionIdleTimeout": "0", - "clientOfflineSessionIdleTimeout": "0", - "cibaInterval": "5", - "realmReusableOtpCode": "false", - "cibaExpiresIn": "120", - "oauth2DeviceCodeLifespan": "600", - "parRequestUriLifespan": "60", - "clientSessionMaxLifespan": "0", - "organizationsEnabled": "false" - }, - "keycloakVersion": "25.0.6", - "userManagedAccessAllowed": false, - "organizationsEnabled": false, - "clientProfiles": { - "profiles": [] - }, - "clientPolicies": { - "policies": [] - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/kubernetes/deployment-my-jaxrs-app.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/kubernetes/deployment-my-jaxrs-app.yaml deleted file mode 100644 index 38c913b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/kubernetes/deployment-my-jaxrs-app.yaml +++ /dev/null @@ -1,34 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: my-jaxrs-app-deployment - labels: - app: my-jaxrs-app -spec: - replicas: 1 - selector: - matchLabels: - app: my-jaxrs-app - template: - metadata: - labels: - app: my-jaxrs-app - spec: - containers: - - name: my-jaxrs-app - image: quay.io/tborgato/my-jaxrs-app - ports: - - containerPort: 8080 - - containerPort: 9990 - livenessProbe: - httpGet: - path: /health/live - port: 9990 - readinessProbe: - httpGet: - path: /health/ready - port: 9990 - startupProbe: - httpGet: - path: /health/started - port: 9990 diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/kubernetes/keycloak-nodeport-service.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/kubernetes/keycloak-nodeport-service.yaml deleted file mode 100644 index 9eb3d4b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/kubernetes/keycloak-nodeport-service.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - labels: - app: keycloak - name: keycloak-external -spec: - ports: - - port: 8080 - protocol: TCP - targetPort: 8080 - selector: - app: keycloak - sessionAffinity: None - type: NodePort \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/pom.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/pom.xml deleted file mode 100644 index 6c34355..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/pom.xml +++ /dev/null @@ -1,302 +0,0 @@ - - - - 4.0.0 - org.wildfly.examples - simple-microservice - 1.0.0-SNAPSHOT - - war - simple-microservice-client - Insert description for your project here. - - - - - UTF-8 - - - 5.0.0.Final - 33.0.2.Final - - - 5.10.1 - - - 3.13.0 - 3.0.0 - 3.2.5 - 3.4.0 - - - 11 - - 33.0.2.Final - - 9.24.4.redhat-00001 - - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - default - - true - never - - - false - never - - - - - never - - - never - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - default - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - - true - never - - - false - never - - - - - - - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - - - - - - - - org.wildfly.bom - wildfly-ee-with-tools - ${version.wildfly.bom} - pom - import - - - - org.wildfly.bom - wildfly-microprofile - ${version.bom.microprofile} - pom - import - - - - - - - - - jakarta.enterprise - jakarta.enterprise.cdi-api - provided - - - - - jakarta.ws.rs - jakarta.ws.rs-api - provided - - - - org.eclipse.microprofile.rest.client - microprofile-rest-client-api - provided - - - org.eclipse.microprofile.config - microprofile-config-api - provided - - - - - - - - - org.wildfly.security - wildfly-elytron-http-oidc - provided - - - jakarta.servlet - jakarta.servlet-api - provided - - - - - com.nimbusds - nimbus-jose-jwt - ${version.com.nimbusds.jose-jwt} - test - - - jakarta.json - jakarta.json-api - test - - - org.eclipse.parsson - parsson - test - - - - - - ROOT - - - - - org.apache.maven.plugins - maven-compiler-plugin - ${version.compiler.plugin} - - - - - - org.apache.maven.plugins - maven-war-plugin - ${version.war.plugin} - - - false - - - - - - org.wildfly.plugins - wildfly-maven-plugin - ${version.wildfly.maven.plugin} - - - - org.wildfly:wildfly-galleon-pack:${version.wildfly.bom} - - - org.wildfly.cloud:wildfly-cloud-galleon-pack:7.0.0.Final - - - - - cloud-server - microprofile-config - microprofile-rest-client - microprofile-jwt - elytron-oidc-client - - - - - - package - - - - - - - org.apache.maven.plugins - maven-failsafe-plugin - ${version.failsafe.plugin} - - - **/*IT - - - - - - integration-test - verify - - - - - - - - - - bare-metal - - - - org.wildfly.plugins - wildfly-maven-plugin - ${version.wildfly.maven.plugin} - - - - - - /socket-binding-group=standard-sockets:write-attribute(name=port-offset,value=200) - - - - - - - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/private.pem b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/private.pem deleted file mode 100644 index aff5569..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/private.pem +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCTtB3pEXfA4nbD -ToWXCayaLD6RFfmIgOWLQYCO1a0gHTGv4sEdB9t8Y+Fhbe/NC6Xdd+skJkLhat0/ -zjtm2Jr41336So4k003KF+zoenEbW93rAiCbHjZsYBhCY0TpOw3Twl2+1qTgQTfj -oPtYzYXcwuiqGI8P7ml6PCEbX6uN5zDPYgdf+DAmhATrVkCw01WP3cG3WeCGTdEb -S/VjDGAG3izTQpDJi9cLt/DBbqbrmgO+Rs3QIntkSdMvhDrzCr8tZczA/mgwmanF -uL+Q8Cw7GiND0VU7ccyQvlJ1zlsIC15jwjmxspPq3l2McprhGZ6AhDZeGZQ2FJIe -yJc0GKQtAgMBAAECggEARg2YXhFN1erS3yDf1VneRiUT66YberV/qUOA4L3RZbjS -9xO5+bXfUKjinV4R7RNIMLkOik+nSthvZTLAE7BKGBnEgzBXKHobm+0rDLv95zb0 -EuEoa8mxkEcnWl1QsrmyfiviYH/XJRFpm4mfjGe1xJWg2gPZ3nl6B2J7ZUtDx4IV -Su1pdNJ+WTyRRMnEnxUIbDx4asaqPnzKl/D2Ien4UeqxQtmxHvYtscOCkeIzkHNn -N5rS2MDzrI2Qn/mF8loYlk8CU6+/kYnPw/q8jT+2dK+JEMaVeGvzrfT1jMmjuBHw -MZOXM8vywZ2iYSMov3/VuB/6f3TR49nR4SdQO3jaVQKBgQDQc7bQZYZ2b0q65XNy -WYVoyQ66SqLSn3a5FQNMBxQ6C0Fe8yZCenbh6fLL2BryzcohYpYHTj9WcIfhJO7F -ukGLx58L6o+ECXC7rIfF5CAgR+siMpi0t7/AjorsHDS/pfNdAl0DjcNfUVNveQWc -IEX32olby6UDanfCTGmRDMf/xwKBgQC1ZROnCRrRUGoRICzNoDAOlU2LlgBjOb5e -YPdMIOysdh+EOXrdIenBFsowq1Hlbab4bjzZjXGudvjHhcj9xIjFXHCoMJNiBYdz -yX7ZxNOj1+wnjTWDA1NU+OFuSqZtH7beIEZk5rkdcZYp+FVEo3w7bI17js/5aXMs -OMjP/LFkawKBgAbdKJHoJetUctOAprKHPBtdM3zy5DWnRpOFm5wvR305zadAvmvF -+JAr0fDgZtLD7/n1cxc+fltsTS0euDYOkgX2RshvqtYgMXQclEPx5RTrCVUQ8XJR -8qB2kSCBNUNyRXc0kreBPYOv+91Z0NN5RJSKv6ckJ4TbRqJBPeCm2RcVAoGAAz0E -tsywz9/RpPCgHCOp9/iuY7mP1DWpsmGkyJUl5IZPVbr4+I2scKgJgAju81ubyX+e -Unv19ZlmI5m91tn1XyChWj9TwkI7AtQsEZMz/A7Uxnf85pPenvu6eo+WnQgd6aVF -3HNKBr6KYcFvNER+6Uis1fHcwKUjSzzQSPZH7HUCgYEAyinFxVM2sCjxUx1tyglD -nEthz00IuFgcbn3O8P8Tz+RkekVObOFMFXonixynVJYL2KLhdVf+bmbNvNydSlM1 -fMUbE5x2GtdlSwYcV78IORXQHomRdF9zKBePchpcYm5ooNYaGhlR/ECaCYZihfV3 -la+zt8D6pt8EB1RU5BMJxbU= ------END PRIVATE KEY----- diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedApplication.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedApplication.java deleted file mode 100644 index 1557ac8..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedApplication.java +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.ws.rs.ApplicationPath; -import jakarta.ws.rs.core.Application; - -@ApplicationPath("/hello") -public class GettingStartedApplication extends Application { - -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java deleted file mode 100644 index 69273c3..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.inject.Inject; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.ws.rs.GET; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.PathParam; -import jakarta.ws.rs.Produces; -import jakarta.ws.rs.core.Context; -import jakarta.ws.rs.core.MediaType; -import jakarta.ws.rs.core.Response; -import org.eclipse.microprofile.rest.client.inject.RestClient; -import org.wildfly.security.http.oidc.OidcSecurityContext; - -@Path("/") -public class GettingStartedEndpoint { - - @Context - private HttpServletRequest httpServletRequest; - - @Inject - @RestClient - private GettingStartedEndpointInterface remoteService; - - @GET - @Path("/{name}") - @Produces(MediaType.TEXT_PLAIN) - public Response sayHello(final @PathParam("name") String name) { - OidcSecurityContext oidcSecurityContext = getOidcSecurityContext(httpServletRequest); - if (oidcSecurityContext != null) { - String authzHeaderValue = "Bearer " + oidcSecurityContext.getTokenString(); - System.out.println("\n\n[JWT] Token: " + authzHeaderValue + "\n\n"); - return remoteService.sayHello(authzHeaderValue, name); - } else { - System.out.println("\n\n[JWT] No token :(\n\n"); - return remoteService.sayHello(null, name); - } - } - - private OidcSecurityContext getOidcSecurityContext(HttpServletRequest req) { - return (OidcSecurityContext) req.getAttribute(OidcSecurityContext.class.getName()); - } -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedEndpointInterface.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedEndpointInterface.java deleted file mode 100644 index ea37ef0..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedEndpointInterface.java +++ /dev/null @@ -1,22 +0,0 @@ -package org.wildfly.examples; - -import jakarta.ws.rs.GET; -import jakarta.ws.rs.HeaderParam; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.PathParam; -import jakarta.ws.rs.Produces; -import jakarta.ws.rs.core.MediaType; -import jakarta.ws.rs.core.Response; -import org.eclipse.microprofile.rest.client.annotation.RegisterClientHeaders; -import org.eclipse.microprofile.rest.client.inject.RegisterRestClient; - -@RegisterClientHeaders -@RegisterRestClient(configKey="simple-microservice-server") -@Path("/") -public interface GettingStartedEndpointInterface { - - @GET - @Path("/{name}") - @Produces(MediaType.TEXT_PLAIN) - Response sayHello(@HeaderParam("Authorization") String authorization, final @PathParam("name") String name); -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedService.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedService.java deleted file mode 100644 index fea7420..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/java/org/wildfly/examples/GettingStartedService.java +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.enterprise.context.ApplicationScoped; - -@ApplicationScoped -public class GettingStartedService { - - public String hello(String name) { - return String.format("Hello '%s'.", name); - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/resources/META-INF/microprofile-config.properties b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/resources/META-INF/microprofile-config.properties deleted file mode 100644 index 16c524e..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/resources/META-INF/microprofile-config.properties +++ /dev/null @@ -1,4 +0,0 @@ -simple-microservice-server/mp-rest/uri=http://127.0.0.1:8180/hello -org.eclipse.microprofile.rest.client.propagateHeaders=Authorization -#mp.jwt.verify.publickey.location=META-INF/public.pem -#mp.jwt.verify.issuer=quickstart-jwt-issuer \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/WEB-INF/beans.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/WEB-INF/beans.xml deleted file mode 100644 index 86e3de8..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/WEB-INF/beans.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/WEB-INF/oidc.json b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/WEB-INF/oidc.json deleted file mode 100644 index c64aa6c..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/WEB-INF/oidc.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "client-id" : "myclient-public", - "provider-url" : "${env.OIDC_PROVIDER_URL:http://localhost:8080}/realms/myrealm", - "ssl-required" : "EXTERNAL", - "credentials" : { - "secret" : "${oidc.client.secret:JxA26xeQc85N3HD3w9cEOkmAjGIwVHQ3}" - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/WEB-INF/web.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 18005b1..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - secured - /* - - - * - - - - - OIDC - - - - * - - - - resteasy.server.tracing.type - ALL - resteasy.server.tracing.threshold - SUMMARY - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/bkg.gif b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/bkg.gif deleted file mode 100644 index 523877c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/bkg.gif and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/favicon.ico b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/favicon.ico deleted file mode 100644 index f19166c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/favicon.ico and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/index.html b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/index.html deleted file mode 100644 index f0e421b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/index.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - Welcome to WildFly Application Server - - - - - - - - -
-
- -

Getting Started

-
-
- - - -
-

-

-
-
-
- - - diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/normalize.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/normalize.css deleted file mode 100644 index 458eea1..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/normalize.css +++ /dev/null @@ -1,427 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ - -/** - * 1. Set default font family to sans-serif. - * 2. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - */ - -html { - font-family: sans-serif; /* 1 */ - -ms-text-size-adjust: 100%; /* 2 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} - -/** - * Remove default margin. - */ - -body { - margin: 0; -} - -/* HTML5 display definitions - ========================================================================== */ - -/** - * Correct `block` display not defined for any HTML5 element in IE 8/9. - * Correct `block` display not defined for `details` or `summary` in IE 10/11 - * and Firefox. - * Correct `block` display not defined for `main` in IE 11. - */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} - -/** - * 1. Correct `inline-block` display not defined in IE 8/9. - * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. - */ - -audio, -canvas, -progress, -video { - display: inline-block; /* 1 */ - vertical-align: baseline; /* 2 */ -} - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Address `[hidden]` styling not present in IE 8/9/10. - * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. - */ - -[hidden], -template { - display: none; -} - -/* Links - ========================================================================== */ - -/** - * Remove the gray background color from active links in IE 10. - */ - -a { - background-color: transparent; -} - -/** - * Improve readability when focused and also mouse hovered in all browsers. - */ - -a:active, -a:hover { - outline: 0; -} - -/* Text-level semantics - ========================================================================== */ - -/** - * Address styling not present in IE 8/9/10/11, Safari, and Chrome. - */ - -abbr[title] { - border-bottom: 1px dotted; -} - -/** - * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. - */ - -b, -strong { - font-weight: bold; -} - -/** - * Address styling not present in Safari and Chrome. - */ - -dfn { - font-style: italic; -} - -/** - * Address variable `h1` font-size and margin within `section` and `article` - * contexts in Firefox 4+, Safari, and Chrome. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -/** - * Address styling not present in IE 8/9. - */ - -mark { - background: #ff0; - color: #000; -} - -/** - * Address inconsistent and variable font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -/* Embedded content - ========================================================================== */ - -/** - * Remove border when inside `a` element in IE 8/9/10. - */ - -img { - border: 0; -} - -/** - * Correct overflow not hidden in IE 9/10/11. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* Grouping content - ========================================================================== */ - -/** - * Address margin not present in IE 8/9 and Safari. - */ - -figure { - margin: 1em 40px; -} - -/** - * Address differences between Firefox and other browsers. - */ - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -/** - * Contain overflow in all browsers. - */ - -pre { - overflow: auto; -} - -/** - * Address odd `em`-unit font size rendering in all browsers. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -/* Forms - ========================================================================== */ - -/** - * Known limitation: by default, Chrome and Safari on OS X allow very limited - * styling of `select`, unless a `border` property is set. - */ - -/** - * 1. Correct color not being inherited. - * Known issue: affects color of disabled elements. - * 2. Correct font properties not being inherited. - * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. - */ - -button, -input, -optgroup, -select, -textarea { - color: inherit; /* 1 */ - font: inherit; /* 2 */ - margin: 0; /* 3 */ -} - -/** - * Address `overflow` set to `hidden` in IE 8/9/10/11. - */ - -button { - overflow: visible; -} - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. - * Correct `select` style inheritance in Firefox. - */ - -button, -select { - text-transform: none; -} - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - */ - -button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ -} - -/** - * Re-set default cursor for disabled elements. - */ - -button[disabled], -html input[disabled] { - cursor: default; -} - -/** - * Remove inner padding and border in Firefox 4+. - */ - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -/** - * Address Firefox 4+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ - -input { - line-height: normal; -} - -/** - * It's recommended that you don't attempt to style these elements. - * Firefox's implementation doesn't respect box-sizing, padding, or width. - * - * 1. Address box sizing set to `content-box` in IE 8/9/10. - * 2. Remove excess padding in IE 8/9/10. - */ - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Fix the cursor style for Chrome's increment/decrement buttons. For certain - * `font-size` values of the `input`, it causes the cursor style of the - * decrement button to change from `default` to `text`. - */ - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -/** - * 1. Address `appearance` set to `searchfield` in Safari and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari and Chrome - * (include `-moz` to future-proof). - */ - -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} - -/** - * Remove inner padding and search cancel button in Safari and Chrome on OS X. - * Safari (but not Chrome) clips the cancel button when the search input has - * padding (and `textfield` appearance). - */ - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Define consistent border, margin, and padding. - */ - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -/** - * 1. Correct `color` not being inherited in IE 8/9/10/11. - * 2. Remove padding so people aren't caught out if they zero out fieldsets. - */ - -legend { - border: 0; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Remove default vertical scrollbar in IE 8/9/10/11. - */ - -textarea { - overflow: auto; -} - -/** - * Don't inherit the `font-weight` (applied by a rule above). - * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. - */ - -optgroup { - font-weight: bold; -} - -/* Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} - -td, -th { - padding: 0; -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/normalize.min.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/normalize.min.css deleted file mode 100644 index f6e0b65..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/normalize.min.css +++ /dev/null @@ -1 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/wildfly.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/wildfly.css deleted file mode 100644 index c360191..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/wildfly.css +++ /dev/null @@ -1,79 +0,0 @@ -/* - ~ Copyright The WildFly Authors - ~ SPDX-License-Identifier: Apache-2.0 -*/ - -html { - color: #222; - font-family: "Open Sans", Geneva, Verdana, Arial, sans-serif; - font-size: 1em; - line-height: 1.4; -} - -::-moz-selection { - background: #b3d4fc; - text-shadow: none; -} - -::selection { - background: #b3d4fc; - text-shadow: none; -} - -body { - background: url(bkg.gif) repeat-x; - color: #5B5B5B; - margin-top: 100px; - text-align: center; -} - -h1 { - padding-top: 20px; - color: #7b1e1e; -} - -a { - text-decoration: none; - color: #5e8a9a; -} - -a:hover { - text-decoration: underline; - color: #8ec6d9; -} - -img { - border: 0; -} - -code { - background-color: rgba(27, 31, 35, 0.05); - border-radius: 3px; - font-family: Consolas, Menlo, Courier, monospace; - font-size: 90%; - padding: 0.2em; -} - -.wrapper { - margin-left: auto; - margin-right: auto; - width: 50em; - text-align: left; -} - -.content { - margin: 0; - padding: 0; -} - -.logo { - margin-bottom: 10px; -} - -footer { - position:fixed; - bottom:0; - left:0; - width:100%; - height: 90px; -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/wildfly_logo.png b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/wildfly_logo.png deleted file mode 100644 index 51e55c3..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/main/webapp/wildfly_logo.png and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/test/java/org/wildfly/examples/TokenUtil.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/test/java/org/wildfly/examples/TokenUtil.java deleted file mode 100644 index d415622..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-old/src/test/java/org/wildfly/examples/TokenUtil.java +++ /dev/null @@ -1,105 +0,0 @@ -package org.wildfly.examples; - -/* - * JBoss, Home of Professional Open Source - * Copyright 2020 Red Hat, Inc., and individual contributors - * as indicated by the @author tags. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import java.io.FileInputStream; -import java.io.InputStream; -import java.nio.charset.StandardCharsets; -import java.security.KeyFactory; -import java.security.PrivateKey; -import java.security.spec.PKCS8EncodedKeySpec; -import java.util.Base64; -import java.util.UUID; - -import jakarta.json.Json; -import jakarta.json.JsonArrayBuilder; -import jakarta.json.JsonObjectBuilder; - -import com.nimbusds.jose.JOSEObjectType; -import com.nimbusds.jose.JWSAlgorithm; -import com.nimbusds.jose.JWSHeader; -import com.nimbusds.jose.JWSObject; -import com.nimbusds.jose.JWSSigner; -import com.nimbusds.jose.Payload; -import com.nimbusds.jose.crypto.RSASSASigner; - -public class TokenUtil { - - private static PrivateKey loadPrivateKey(final String fileName) throws Exception { - try (InputStream is = new FileInputStream(fileName)) { - byte[] contents = new byte[4096]; - int length = is.read(contents); - String rawKey = new String(contents, 0, length, StandardCharsets.UTF_8) - .replaceAll("-----BEGIN (.*)-----", "") - .replaceAll("-----END (.*)----", "") - .replaceAll("\r\n", "").replaceAll("\n", "") - .trim(); - - PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(Base64.getDecoder().decode(rawKey)); - KeyFactory keyFactory = KeyFactory.getInstance("RSA"); - - return keyFactory.generatePrivate(keySpec); - } - } - - public static String generateJWT(final String principal, final String birthdate, final String... groups) throws Exception { - PrivateKey privateKey = loadPrivateKey("private.pem"); - - JWSSigner signer = new RSASSASigner(privateKey); - JsonArrayBuilder groupsBuilder = Json.createArrayBuilder(); - for (String group : groups) { - groupsBuilder.add(group); - } - - long currentTime = System.currentTimeMillis() / 1000; - JsonObjectBuilder claimsBuilder = Json.createObjectBuilder() - .add("sub", principal) - .add("upn", principal) - .add("iss", "quickstart-jwt-issuer") - .add("aud", "jwt-audience") - .add("groups", groupsBuilder.build()) - .add("birthdate", birthdate) - .add("jti", UUID.randomUUID().toString()) - .add("iat", currentTime) - .add("exp", currentTime + 14400); - - JWSObject jwsObject = new JWSObject( - new JWSHeader.Builder(JWSAlgorithm.RS256).type(new JOSEObjectType("jwt")).keyID("Test Key").build(), - new Payload(claimsBuilder.build().toString())); - - jwsObject.sign(signer); - - return jwsObject.serialize(); - } - - public static void main(String[] args) throws Exception { - if (args.length < 2) - throw new IllegalArgumentException("Usage org.wildfly.examples.TokenUtil {principal} {birthdate} {groups}"); - String principal = args[0]; - String birthdate = args[1]; - String[] groups = new String[args.length - 2]; - System.arraycopy(args, 2, groups, 0, groups.length); - - String token = generateJWT(principal, birthdate, groups); - String[] parts = token.split("\\."); - System.out.println(String.format("\nJWT Header - %s", new String(Base64.getDecoder().decode(parts[0]), StandardCharsets.UTF_8))); - System.out.println(String.format("\nJWT Claims - %s", new String(Base64.getDecoder().decode(parts[1]), StandardCharsets.UTF_8))); - System.out.println(String.format("\nGenerated JWT Token \n%s\n", token)); - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/Dockerfile b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/Dockerfile deleted file mode 100644 index e0f9660..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/Dockerfile +++ /dev/null @@ -1,4 +0,0 @@ -ARG runtime_image=quay.io/wildfly/wildfly-runtime:latest -FROM ${runtime_image} -COPY --chown=jboss:root target/server $JBOSS_HOME -RUN chmod -R ug+rwX $JBOSS_HOME \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/README.adoc b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/README.adoc deleted file mode 100644 index f3c2509..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/README.adoc +++ /dev/null @@ -1,41 +0,0 @@ - -= simple-microservice-client - -== Build the application - -[source,bash] ----- -mvn clean package ----- - -== Build the Docker Image - -[source,bash,subs="normal"] ----- -podman build -t my-jaxrs-app-client-secured:latest . -podman tag my-jaxrs-app-client-secured quay.io/tborgato/my-jaxrs-app-client-secured -podman push quay.io/tborgato/my-jaxrs-app-client-secured ----- - -== Run on Kubernetes - -[source,bash,subs="normal"] ----- -kubectl apply -f kubernetes/my-jaxrs-app-client-secured-deployment.yaml -kubectl apply -f kubernetes/my-jaxrs-app-client-secured-service.yaml -minikube service my-jaxrs-app-client-secured-service --url ----- - -== Run the Docker Image - -[source,bash,subs="normal"] ----- -podman run --rm -p 8080:8080 -p 9990:9990 \ - --network=demo-network \ - --env "SIMPLE_MICROSERVICE_SERVER1_URI=http://my-jaxrs-app-server:8080/hello" \ - --env "SIMPLE_MICROSERVICE_SERVER2_URI=http://my-jaxrs-app-server:8080/hello" \ - --env "OIDC_PROVIDER_URL=http://keycloak-internal:8080" \ - --env "OIDC_CLIENT_SECRET=pBVLIeIBlB1cyhZVbfctl7DsKZpdhqRL" \ - --name=my-jaxrs-app-client-secured \ - my-jaxrs-app-client-secured ----- \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/keycloak-realm-realm.json b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/keycloak-realm-realm.json deleted file mode 100644 index be789a6..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/keycloak-realm-realm.json +++ /dev/null @@ -1,2043 +0,0 @@ -{ - "id" : "cb68dd2c-e1b9-4474-ba4e-990a68cca6fb", - "realm" : "keycloak-realm", - "notBefore" : 0, - "defaultSignatureAlgorithm" : "RS256", - "revokeRefreshToken" : false, - "refreshTokenMaxReuse" : 0, - "accessTokenLifespan" : 300, - "accessTokenLifespanForImplicitFlow" : 900, - "ssoSessionIdleTimeout" : 1800, - "ssoSessionMaxLifespan" : 36000, - "ssoSessionIdleTimeoutRememberMe" : 0, - "ssoSessionMaxLifespanRememberMe" : 0, - "offlineSessionIdleTimeout" : 2592000, - "offlineSessionMaxLifespanEnabled" : false, - "offlineSessionMaxLifespan" : 5184000, - "clientSessionIdleTimeout" : 0, - "clientSessionMaxLifespan" : 0, - "clientOfflineSessionIdleTimeout" : 0, - "clientOfflineSessionMaxLifespan" : 0, - "accessCodeLifespan" : 60, - "accessCodeLifespanUserAction" : 300, - "accessCodeLifespanLogin" : 1800, - "actionTokenGeneratedByAdminLifespan" : 43200, - "actionTokenGeneratedByUserLifespan" : 300, - "oauth2DeviceCodeLifespan" : 600, - "oauth2DevicePollingInterval" : 5, - "enabled" : true, - "sslRequired" : "external", - "registrationAllowed" : false, - "registrationEmailAsUsername" : false, - "rememberMe" : false, - "verifyEmail" : false, - "loginWithEmailAllowed" : true, - "duplicateEmailsAllowed" : false, - "resetPasswordAllowed" : false, - "editUsernameAllowed" : false, - "bruteForceProtected" : false, - "permanentLockout" : false, - "maxTemporaryLockouts" : 0, - "maxFailureWaitSeconds" : 900, - "minimumQuickLoginWaitSeconds" : 60, - "waitIncrementSeconds" : 60, - "quickLoginCheckMilliSeconds" : 1000, - "maxDeltaTimeSeconds" : 43200, - "failureFactor" : 30, - "roles" : { - "realm" : [ { - "id" : "a3093c87-e91c-4366-8c6f-b25f614fe20f", - "name" : "default-roles-keycloak-realm", - "description" : "${role_default-roles}", - "composite" : true, - "composites" : { - "realm" : [ "offline_access", "uma_authorization" ], - "client" : { - "account" : [ "manage-account", "view-profile" ] - } - }, - "clientRole" : false, - "containerId" : "cb68dd2c-e1b9-4474-ba4e-990a68cca6fb", - "attributes" : { } - }, { - "id" : "12c28a09-4c86-4822-a159-0c324ac20d0f", - "name" : "user", - "description" : "", - "composite" : false, - "clientRole" : false, - "containerId" : "cb68dd2c-e1b9-4474-ba4e-990a68cca6fb", - "attributes" : { } - }, { - "id" : "63b7ac0f-b171-4ddb-b271-e88ae8be83b0", - "name" : "offline_access", - "description" : "${role_offline-access}", - "composite" : false, - "clientRole" : false, - "containerId" : "cb68dd2c-e1b9-4474-ba4e-990a68cca6fb", - "attributes" : { } - }, { - "id" : "d8a142ff-be7b-4e26-85ac-17df470d0125", - "name" : "uma_authorization", - "description" : "${role_uma_authorization}", - "composite" : false, - "clientRole" : false, - "containerId" : "cb68dd2c-e1b9-4474-ba4e-990a68cca6fb", - "attributes" : { } - }, { - "id" : "3750dc3d-3a5d-49bd-b68d-91861fa2f433", - "name" : "admin", - "description" : "", - "composite" : false, - "clientRole" : false, - "containerId" : "cb68dd2c-e1b9-4474-ba4e-990a68cca6fb", - "attributes" : { } - } ], - "client" : { - "realm-management" : [ { - "id" : "b64eea53-9d0a-4904-8dc9-b57f0087f533", - "name" : "create-client", - "description" : "${role_create-client}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "669c7a88-0e27-461a-a826-d699b8b70ba9", - "name" : "query-realms", - "description" : "${role_query-realms}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "8212f344-9573-46a0-ba06-5614d7750693", - "name" : "manage-events", - "description" : "${role_manage-events}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "076b3ffc-3ba3-4dfb-9265-15121f3666bc", - "name" : "query-groups", - "description" : "${role_query-groups}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "5e3c2815-b2c2-4377-9468-f74834bd938b", - "name" : "view-authorization", - "description" : "${role_view-authorization}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "c6d5abea-e7e3-4acd-9445-3c353cffb481", - "name" : "manage-users", - "description" : "${role_manage-users}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "adc2c2a2-7f67-4bb8-b282-997f58cbaf4c", - "name" : "view-identity-providers", - "description" : "${role_view-identity-providers}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "964e637f-b663-49a4-8db1-8f693ce9cc82", - "name" : "impersonation", - "description" : "${role_impersonation}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "da75508b-fdf8-43bc-b683-e0cc79314cb9", - "name" : "query-users", - "description" : "${role_query-users}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "28090f4e-76eb-4e3f-87fe-1e7197698608", - "name" : "realm-admin", - "description" : "${role_realm-admin}", - "composite" : true, - "composites" : { - "client" : { - "realm-management" : [ "query-realms", "create-client", "manage-events", "query-groups", "view-authorization", "view-identity-providers", "manage-users", "impersonation", "query-users", "view-events", "manage-authorization", "manage-realm", "view-users", "manage-identity-providers", "manage-clients", "view-clients", "view-realm", "query-clients" ] - } - }, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "3248b55a-9fa0-46b1-b221-c7a1c9074f32", - "name" : "view-events", - "description" : "${role_view-events}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "c8cd36b8-81ab-4a4d-9056-2b55c65dc0b9", - "name" : "manage-authorization", - "description" : "${role_manage-authorization}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "372ffd86-8d29-48ac-96d7-6d2a33818f3d", - "name" : "manage-realm", - "description" : "${role_manage-realm}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "d595f505-c5cf-4b11-9cb9-58e49ab8e0bb", - "name" : "manage-identity-providers", - "description" : "${role_manage-identity-providers}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "68bf4972-a992-4569-84a8-f05fb2be40f4", - "name" : "view-users", - "description" : "${role_view-users}", - "composite" : true, - "composites" : { - "client" : { - "realm-management" : [ "query-groups", "query-users" ] - } - }, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "bd44c3c4-199e-4138-8872-e60847bf0c1d", - "name" : "manage-clients", - "description" : "${role_manage-clients}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "1a5c2480-e9d7-4f08-a00c-4dd1e2441062", - "name" : "view-clients", - "description" : "${role_view-clients}", - "composite" : true, - "composites" : { - "client" : { - "realm-management" : [ "query-clients" ] - } - }, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "ff360814-1d34-47f5-adbc-1f4e51b45292", - "name" : "query-clients", - "description" : "${role_query-clients}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - }, { - "id" : "2780a47d-ef17-466c-a0d2-6b2103905282", - "name" : "view-realm", - "description" : "${role_view-realm}", - "composite" : false, - "clientRole" : true, - "containerId" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "attributes" : { } - } ], - "security-admin-console" : [ ], - "simple-microservice-client-secured" : [ ], - "admin-cli" : [ ], - "account-console" : [ ], - "broker" : [ { - "id" : "2fc9740d-d755-4361-baba-7e6b3dcb6458", - "name" : "read-token", - "description" : "${role_read-token}", - "composite" : false, - "clientRole" : true, - "containerId" : "8bab20d5-5b98-430c-8ee6-323c74d90885", - "attributes" : { } - } ], - "account" : [ { - "id" : "b06f9957-cbae-4fdb-95a4-7f6b5f0d0b6b", - "name" : "manage-account", - "description" : "${role_manage-account}", - "composite" : true, - "composites" : { - "client" : { - "account" : [ "manage-account-links" ] - } - }, - "clientRole" : true, - "containerId" : "4ff5569b-6e75-4436-8d8e-7e8ff321d4ea", - "attributes" : { } - }, { - "id" : "c6158a70-1018-41fd-930e-c703adcae729", - "name" : "view-consent", - "description" : "${role_view-consent}", - "composite" : false, - "clientRole" : true, - "containerId" : "4ff5569b-6e75-4436-8d8e-7e8ff321d4ea", - "attributes" : { } - }, { - "id" : "87f1e5f4-97b6-4265-bf68-7d311919547e", - "name" : "view-applications", - "description" : "${role_view-applications}", - "composite" : false, - "clientRole" : true, - "containerId" : "4ff5569b-6e75-4436-8d8e-7e8ff321d4ea", - "attributes" : { } - }, { - "id" : "ee74914d-17b6-4138-a5e3-6bdf335d08ab", - "name" : "manage-consent", - "description" : "${role_manage-consent}", - "composite" : true, - "composites" : { - "client" : { - "account" : [ "view-consent" ] - } - }, - "clientRole" : true, - "containerId" : "4ff5569b-6e75-4436-8d8e-7e8ff321d4ea", - "attributes" : { } - }, { - "id" : "12da4306-1fca-484f-82ec-841ff0f63458", - "name" : "view-groups", - "description" : "${role_view-groups}", - "composite" : false, - "clientRole" : true, - "containerId" : "4ff5569b-6e75-4436-8d8e-7e8ff321d4ea", - "attributes" : { } - }, { - "id" : "b6ce6e37-1678-4782-8338-3e2015931390", - "name" : "view-profile", - "description" : "${role_view-profile}", - "composite" : false, - "clientRole" : true, - "containerId" : "4ff5569b-6e75-4436-8d8e-7e8ff321d4ea", - "attributes" : { } - }, { - "id" : "c9e8bec5-8de9-4f07-a9b7-aad6662b3394", - "name" : "delete-account", - "description" : "${role_delete-account}", - "composite" : false, - "clientRole" : true, - "containerId" : "4ff5569b-6e75-4436-8d8e-7e8ff321d4ea", - "attributes" : { } - }, { - "id" : "6e0036fe-7823-4f26-bdbe-c31c509bfa71", - "name" : "manage-account-links", - "description" : "${role_manage-account-links}", - "composite" : false, - "clientRole" : true, - "containerId" : "4ff5569b-6e75-4436-8d8e-7e8ff321d4ea", - "attributes" : { } - } ] - } - }, - "groups" : [ ], - "defaultRole" : { - "id" : "a3093c87-e91c-4366-8c6f-b25f614fe20f", - "name" : "default-roles-keycloak-realm", - "description" : "${role_default-roles}", - "composite" : true, - "clientRole" : false, - "containerId" : "cb68dd2c-e1b9-4474-ba4e-990a68cca6fb" - }, - "requiredCredentials" : [ "password" ], - "otpPolicyType" : "totp", - "otpPolicyAlgorithm" : "HmacSHA1", - "otpPolicyInitialCounter" : 0, - "otpPolicyDigits" : 6, - "otpPolicyLookAheadWindow" : 1, - "otpPolicyPeriod" : 30, - "otpPolicyCodeReusable" : false, - "otpSupportedApplications" : [ "totpAppFreeOTPName", "totpAppGoogleName", "totpAppMicrosoftAuthenticatorName" ], - "localizationTexts" : { }, - "webAuthnPolicyRpEntityName" : "keycloak", - "webAuthnPolicySignatureAlgorithms" : [ "ES256", "RS256" ], - "webAuthnPolicyRpId" : "", - "webAuthnPolicyAttestationConveyancePreference" : "not specified", - "webAuthnPolicyAuthenticatorAttachment" : "not specified", - "webAuthnPolicyRequireResidentKey" : "not specified", - "webAuthnPolicyUserVerificationRequirement" : "not specified", - "webAuthnPolicyCreateTimeout" : 0, - "webAuthnPolicyAvoidSameAuthenticatorRegister" : false, - "webAuthnPolicyAcceptableAaguids" : [ ], - "webAuthnPolicyExtraOrigins" : [ ], - "webAuthnPolicyPasswordlessRpEntityName" : "keycloak", - "webAuthnPolicyPasswordlessSignatureAlgorithms" : [ "ES256", "RS256" ], - "webAuthnPolicyPasswordlessRpId" : "", - "webAuthnPolicyPasswordlessAttestationConveyancePreference" : "not specified", - "webAuthnPolicyPasswordlessAuthenticatorAttachment" : "not specified", - "webAuthnPolicyPasswordlessRequireResidentKey" : "not specified", - "webAuthnPolicyPasswordlessUserVerificationRequirement" : "not specified", - "webAuthnPolicyPasswordlessCreateTimeout" : 0, - "webAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister" : false, - "webAuthnPolicyPasswordlessAcceptableAaguids" : [ ], - "webAuthnPolicyPasswordlessExtraOrigins" : [ ], - "users" : [ { - "id" : "aaef43ee-4005-4d2d-a5f0-0e0d11a1f831", - "username" : "alice", - "firstName" : "alice", - "lastName" : "inwonderland", - "email" : "alice@wonderland.com", - "emailVerified" : false, - "createdTimestamp" : 1729007813451, - "enabled" : true, - "totp" : false, - "credentials" : [ { - "id" : "5549dd0e-67f7-4350-9a12-b36e9996e95a", - "type" : "password", - "userLabel" : "My password", - "createdDate" : 1729007850113, - "secretData" : "{\"value\":\"fBRGUe2cky6mYPpbf/68icuB90wgnBmELGwNBnwKWbU=\",\"salt\":\"ch+bsMmuJ89Fk0/Eu4nt9w==\",\"additionalParameters\":{}}", - "credentialData" : "{\"hashIterations\":5,\"algorithm\":\"argon2\",\"additionalParameters\":{\"hashLength\":[\"32\"],\"memory\":[\"7168\"],\"type\":[\"id\"],\"version\":[\"1.3\"],\"parallelism\":[\"1\"]}}" - } ], - "disableableCredentialTypes" : [ ], - "requiredActions" : [ ], - "realmRoles" : [ "default-roles-keycloak-realm", "user", "admin" ], - "notBefore" : 0, - "groups" : [ ] - }, { - "id" : "72b17bac-353d-47c7-a532-a7e2977ec467", - "username" : "bob", - "firstName" : "bob", - "lastName" : "notanadmin", - "email" : "bob@notanadmin.com", - "emailVerified" : false, - "createdTimestamp" : 1729007867190, - "enabled" : true, - "totp" : false, - "credentials" : [ { - "id" : "7fee94a8-0f2f-4c89-b281-5c9dd5cb9ce5", - "type" : "password", - "userLabel" : "My password", - "createdDate" : 1729007891066, - "secretData" : "{\"value\":\"ajNVOzmR2sz2/Onnx25ZLLPjh7izZaZOgg+0fSEcxfk=\",\"salt\":\"mLp3fu0tjvgl2JWmR0Ge+Q==\",\"additionalParameters\":{}}", - "credentialData" : "{\"hashIterations\":5,\"algorithm\":\"argon2\",\"additionalParameters\":{\"hashLength\":[\"32\"],\"memory\":[\"7168\"],\"type\":[\"id\"],\"version\":[\"1.3\"],\"parallelism\":[\"1\"]}}" - } ], - "disableableCredentialTypes" : [ ], - "requiredActions" : [ ], - "realmRoles" : [ "default-roles-keycloak-realm", "user" ], - "notBefore" : 0, - "groups" : [ ] - } ], - "scopeMappings" : [ { - "clientScope" : "offline_access", - "roles" : [ "offline_access" ] - } ], - "clientScopeMappings" : { - "account" : [ { - "client" : "account-console", - "roles" : [ "manage-account", "view-groups" ] - } ] - }, - "clients" : [ { - "id" : "4ff5569b-6e75-4436-8d8e-7e8ff321d4ea", - "clientId" : "account", - "name" : "${client_account}", - "rootUrl" : "${authBaseUrl}", - "baseUrl" : "/realms/keycloak-realm/account/", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ "/realms/keycloak-realm/account/*" ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : true, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "realm_client" : "false", - "post.logout.redirect.uris" : "+" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "basic", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "organization", "microprofile-jwt" ] - }, { - "id" : "8ca411e5-df8a-474d-96d1-9cbe48210453", - "clientId" : "account-console", - "name" : "${client_account-console}", - "rootUrl" : "${authBaseUrl}", - "baseUrl" : "/realms/keycloak-realm/account/", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ "/realms/keycloak-realm/account/*" ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : true, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "realm_client" : "false", - "post.logout.redirect.uris" : "+", - "pkce.code.challenge.method" : "S256" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "protocolMappers" : [ { - "id" : "0b7d0bdf-e658-4d2a-9f83-e3d4f8117330", - "name" : "audience resolve", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-audience-resolve-mapper", - "consentRequired" : false, - "config" : { } - } ], - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "basic", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "organization", "microprofile-jwt" ] - }, { - "id" : "b25f5a34-bdc2-4902-a4f1-298a6f6f01b5", - "clientId" : "admin-cli", - "name" : "${client_admin-cli}", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : false, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : true, - "serviceAccountsEnabled" : false, - "publicClient" : true, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "realm_client" : "false", - "client.use.lightweight.access.token.enabled" : "true" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : true, - "nodeReRegistrationTimeout" : 0, - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "basic", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "organization", "microprofile-jwt" ] - }, { - "id" : "8bab20d5-5b98-430c-8ee6-323c74d90885", - "clientId" : "broker", - "name" : "${client_broker}", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : true, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : false, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "realm_client" : "true" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "basic", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "organization", "microprofile-jwt" ] - }, { - "id" : "f1ff7fbf-9597-4b94-a8f5-a55b320b92e5", - "clientId" : "realm-management", - "name" : "${client_realm-management}", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ ], - "webOrigins" : [ ], - "notBefore" : 0, - "bearerOnly" : true, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : false, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "realm_client" : "true" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : false, - "nodeReRegistrationTimeout" : 0, - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "basic", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "organization", "microprofile-jwt" ] - }, { - "id" : "224ecfeb-8d75-4e2e-a79f-41be3b7cd52c", - "clientId" : "security-admin-console", - "name" : "${client_security-admin-console}", - "rootUrl" : "${authAdminUrl}", - "baseUrl" : "/admin/keycloak-realm/console/", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "redirectUris" : [ "/admin/keycloak-realm/console/*" ], - "webOrigins" : [ "+" ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : false, - "serviceAccountsEnabled" : false, - "publicClient" : true, - "frontchannelLogout" : false, - "protocol" : "openid-connect", - "attributes" : { - "realm_client" : "false", - "client.use.lightweight.access.token.enabled" : "true", - "post.logout.redirect.uris" : "+", - "pkce.code.challenge.method" : "S256" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : true, - "nodeReRegistrationTimeout" : 0, - "protocolMappers" : [ { - "id" : "42061776-5f40-421c-a524-cf8d63aeb6db", - "name" : "locale", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "locale", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "locale", - "jsonType.label" : "String" - } - } ], - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "basic", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "organization", "microprofile-jwt" ] - }, { - "id" : "61cfab3d-5ae9-449d-995a-66ba964d52b3", - "clientId" : "simple-microservice-client-secured", - "name" : "", - "description" : "", - "rootUrl" : "", - "adminUrl" : "", - "baseUrl" : "", - "surrogateAuthRequired" : false, - "enabled" : true, - "alwaysDisplayInConsole" : false, - "clientAuthenticatorType" : "client-secret", - "secret" : "KqIQIzNHD9LnCRjsCxblDnfEl4rcNoKB", - "redirectUris" : [ "*" ], - "webOrigins" : [ "+" ], - "notBefore" : 0, - "bearerOnly" : false, - "consentRequired" : false, - "standardFlowEnabled" : true, - "implicitFlowEnabled" : false, - "directAccessGrantsEnabled" : true, - "serviceAccountsEnabled" : false, - "publicClient" : false, - "frontchannelLogout" : true, - "protocol" : "openid-connect", - "attributes" : { - "realm_client" : "false", - "oidc.ciba.grant.enabled" : "false", - "client.secret.creation.time" : "1729080432", - "backchannel.logout.session.required" : "true", - "oauth2.device.authorization.grant.enabled" : "false", - "backchannel.logout.revoke.offline.tokens" : "false" - }, - "authenticationFlowBindingOverrides" : { }, - "fullScopeAllowed" : true, - "nodeReRegistrationTimeout" : -1, - "defaultClientScopes" : [ "web-origins", "acr", "profile", "roles", "basic", "email" ], - "optionalClientScopes" : [ "address", "phone", "offline_access", "organization", "microprofile-jwt" ] - } ], - "clientScopes" : [ { - "id" : "71fa6e34-b06b-4e66-9eab-b72916a79af4", - "name" : "acr", - "description" : "OpenID Connect scope for add acr (authentication context class reference) to the token", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "false", - "display.on.consent.screen" : "false" - }, - "protocolMappers" : [ { - "id" : "e214afcb-05f0-4b38-8511-da3e53f46113", - "name" : "acr loa level", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-acr-mapper", - "consentRequired" : false, - "config" : { - "id.token.claim" : "true", - "introspection.token.claim" : "true", - "access.token.claim" : "true" - } - } ] - }, { - "id" : "7af33d38-8975-4054-97d0-75c7e020ae04", - "name" : "basic", - "description" : "OpenID Connect scope for add all basic claims to the token", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "false", - "display.on.consent.screen" : "false" - }, - "protocolMappers" : [ { - "id" : "12bd0b1d-843b-4b2d-a909-ca38fd7025ea", - "name" : "auth_time", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usersessionmodel-note-mapper", - "consentRequired" : false, - "config" : { - "user.session.note" : "AUTH_TIME", - "introspection.token.claim" : "true", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "auth_time", - "jsonType.label" : "long" - } - }, { - "id" : "6582fe24-22a4-48be-bd61-486514953a6f", - "name" : "sub", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-sub-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "access.token.claim" : "true" - } - } ] - }, { - "id" : "e9156a99-e012-42a1-b8d1-63ed70bc3933", - "name" : "web-origins", - "description" : "OpenID Connect scope for add allowed web origins to the access token", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "false", - "display.on.consent.screen" : "false", - "consent.screen.text" : "" - }, - "protocolMappers" : [ { - "id" : "041862c1-8280-4b04-9ccb-57a81769832a", - "name" : "allowed web origins", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-allowed-origins-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "access.token.claim" : "true" - } - } ] - }, { - "id" : "06272d64-e8e8-4b3f-8acf-1c47ee226105", - "name" : "roles", - "description" : "OpenID Connect scope for add user roles to the access token", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "false", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${rolesScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "50786cda-51e7-4b66-b194-4911d7be9c26", - "name" : "client roles", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-client-role-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "multivalued" : "true", - "user.attribute" : "foo", - "access.token.claim" : "true", - "claim.name" : "resource_access.${client_id}.roles", - "jsonType.label" : "String" - } - }, { - "id" : "cef813b6-0df2-4a20-9103-02fc56a875ef", - "name" : "audience resolve", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-audience-resolve-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "access.token.claim" : "true" - } - }, { - "id" : "4bd2ebc0-89f3-4bcf-b646-d12e663949a5", - "name" : "realm roles", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-realm-role-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "multivalued" : "true", - "user.attribute" : "foo", - "access.token.claim" : "true", - "claim.name" : "realm_access.roles", - "jsonType.label" : "String" - } - } ] - }, { - "id" : "8e2a01e1-7680-49ee-9562-b4f449589f53", - "name" : "organization", - "description" : "Additional claims about the organization a subject belongs to", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${organizationScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "56718449-1b7d-46ee-b7de-779ec0a620bb", - "name" : "organization", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-organization-membership-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "multivalued" : "true", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "organization", - "jsonType.label" : "String" - } - } ] - }, { - "id" : "2a385a97-2cd6-462b-b32e-5bd2cc8c875c", - "name" : "phone", - "description" : "OpenID Connect built-in scope: phone", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${phoneScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "9105d0a5-a9b8-4633-9557-e47a28c0ef60", - "name" : "phone number", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "phoneNumber", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "phone_number", - "jsonType.label" : "String" - } - }, { - "id" : "003e0148-3384-404d-aee9-7d9499b984cc", - "name" : "phone number verified", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "phoneNumberVerified", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "phone_number_verified", - "jsonType.label" : "boolean" - } - } ] - }, { - "id" : "fe01b021-f995-4067-89c0-9f2ddf7c881f", - "name" : "offline_access", - "description" : "OpenID Connect built-in scope: offline_access", - "protocol" : "openid-connect", - "attributes" : { - "consent.screen.text" : "${offlineAccessScopeConsentText}", - "display.on.consent.screen" : "true" - } - }, { - "id" : "7f522618-6d82-44ef-8bf9-2b8a28cbfcc9", - "name" : "saml_organization", - "description" : "Organization Membership", - "protocol" : "saml", - "attributes" : { - "display.on.consent.screen" : "false" - }, - "protocolMappers" : [ { - "id" : "43dfc689-5779-4084-86b0-ffb048be7532", - "name" : "organization", - "protocol" : "saml", - "protocolMapper" : "saml-organization-membership-mapper", - "consentRequired" : false, - "config" : { } - } ] - }, { - "id" : "98045ba0-7da7-4169-81bd-3e7d2e28f3ad", - "name" : "role_list", - "description" : "SAML role list", - "protocol" : "saml", - "attributes" : { - "consent.screen.text" : "${samlRoleListScopeConsentText}", - "display.on.consent.screen" : "true" - }, - "protocolMappers" : [ { - "id" : "f4cea688-6b8b-47f6-afa3-3d68a9aa9144", - "name" : "role list", - "protocol" : "saml", - "protocolMapper" : "saml-role-list-mapper", - "consentRequired" : false, - "config" : { - "single" : "false", - "attribute.nameformat" : "Basic", - "attribute.name" : "Role" - } - } ] - }, { - "id" : "c4d1b809-3898-40ea-8a45-9d8dc8ed8d54", - "name" : "profile", - "description" : "OpenID Connect built-in scope: profile", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${profileScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "77b2db2e-0f9e-4d17-b1f9-a0e6548c1107", - "name" : "updated at", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "updatedAt", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "updated_at", - "jsonType.label" : "long" - } - }, { - "id" : "a047497a-491e-448e-84c3-4dca44c4c43f", - "name" : "gender", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "gender", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "gender", - "jsonType.label" : "String" - } - }, { - "id" : "d4125bb8-70ec-430b-bab8-0ec0a7d87881", - "name" : "birthdate", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "birthdate", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "birthdate", - "jsonType.label" : "String" - } - }, { - "id" : "a2d93f3e-9941-459b-a5a1-bf0fa0afbabb", - "name" : "nickname", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "nickname", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "nickname", - "jsonType.label" : "String" - } - }, { - "id" : "5ba87e71-f3ed-493a-83c7-990e00fdd804", - "name" : "zoneinfo", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "zoneinfo", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "zoneinfo", - "jsonType.label" : "String" - } - }, { - "id" : "f9ead9e8-f3ed-4eeb-8d67-464070f1ceee", - "name" : "picture", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "picture", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "picture", - "jsonType.label" : "String" - } - }, { - "id" : "ccca9b9c-207d-4474-a02c-10fd8b8ef4be", - "name" : "username", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "username", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "preferred_username", - "jsonType.label" : "String" - } - }, { - "id" : "d8c7a836-4d2c-4878-a91b-a7b30638c9a1", - "name" : "profile", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "profile", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "profile", - "jsonType.label" : "String" - } - }, { - "id" : "a64b7c6e-668f-4a55-a4e6-496129d2c119", - "name" : "website", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "website", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "website", - "jsonType.label" : "String" - } - }, { - "id" : "7bd04d60-0aff-427b-bf9e-2a6d4ac66169", - "name" : "middle name", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "middleName", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "middle_name", - "jsonType.label" : "String" - } - }, { - "id" : "d5efcf3f-82c8-4b88-8b2c-30e89d4ddcde", - "name" : "family name", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "lastName", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "family_name", - "jsonType.label" : "String" - } - }, { - "id" : "54a57f1f-e851-4e87-9dd8-f3d97f934301", - "name" : "given name", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "firstName", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "given_name", - "jsonType.label" : "String" - } - }, { - "id" : "6931a693-96f9-44d6-b4dd-e13ebc182e6d", - "name" : "locale", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "locale", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "locale", - "jsonType.label" : "String" - } - }, { - "id" : "f379297d-04db-4e5d-b67e-f1a1625d4e5e", - "name" : "full name", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-full-name-mapper", - "consentRequired" : false, - "config" : { - "id.token.claim" : "true", - "introspection.token.claim" : "true", - "access.token.claim" : "true", - "userinfo.token.claim" : "true" - } - } ] - }, { - "id" : "dd61d3c4-540c-4a6f-873f-129ba2b50161", - "name" : "address", - "description" : "OpenID Connect built-in scope: address", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${addressScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "fa23b60d-48eb-4651-8026-a2f6f07e9bdb", - "name" : "address", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-address-mapper", - "consentRequired" : false, - "config" : { - "user.attribute.formatted" : "formatted", - "user.attribute.country" : "country", - "introspection.token.claim" : "true", - "user.attribute.postal_code" : "postal_code", - "userinfo.token.claim" : "true", - "user.attribute.street" : "street", - "id.token.claim" : "true", - "user.attribute.region" : "region", - "access.token.claim" : "true", - "user.attribute.locality" : "locality" - } - } ] - }, { - "id" : "c9c60cb4-0005-4cf4-b48f-63e8eb38a4d3", - "name" : "microprofile-jwt", - "description" : "Microprofile - JWT built-in scope", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "false" - }, - "protocolMappers" : [ { - "id" : "cc6f6d2a-2ed0-429d-b323-25dca4d4b99e", - "name" : "upn", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "username", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "upn", - "jsonType.label" : "String" - } - }, { - "id" : "c331872d-a25a-463b-817f-3fd7ec4ffa23", - "name" : "groups", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-realm-role-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "multivalued" : "true", - "user.attribute" : "foo", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "groups", - "jsonType.label" : "String" - } - } ] - }, { - "id" : "aedd8570-5e41-4838-bbc3-38443367267c", - "name" : "email", - "description" : "OpenID Connect built-in scope: email", - "protocol" : "openid-connect", - "attributes" : { - "include.in.token.scope" : "true", - "display.on.consent.screen" : "true", - "consent.screen.text" : "${emailScopeConsentText}" - }, - "protocolMappers" : [ { - "id" : "b374decf-e83c-4dd2-b22f-eb076eadfc9d", - "name" : "email verified", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-property-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "emailVerified", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "email_verified", - "jsonType.label" : "boolean" - } - }, { - "id" : "fc64867b-930c-4f78-8e70-581c70d0542f", - "name" : "email", - "protocol" : "openid-connect", - "protocolMapper" : "oidc-usermodel-attribute-mapper", - "consentRequired" : false, - "config" : { - "introspection.token.claim" : "true", - "userinfo.token.claim" : "true", - "user.attribute" : "email", - "id.token.claim" : "true", - "access.token.claim" : "true", - "claim.name" : "email", - "jsonType.label" : "String" - } - } ] - } ], - "defaultDefaultClientScopes" : [ "role_list", "saml_organization", "profile", "email", "roles", "web-origins", "acr", "basic" ], - "defaultOptionalClientScopes" : [ "offline_access", "address", "phone", "microprofile-jwt", "organization" ], - "browserSecurityHeaders" : { - "contentSecurityPolicyReportOnly" : "", - "xContentTypeOptions" : "nosniff", - "referrerPolicy" : "no-referrer", - "xRobotsTag" : "none", - "xFrameOptions" : "SAMEORIGIN", - "contentSecurityPolicy" : "frame-src 'self'; frame-ancestors 'self'; object-src 'none';", - "xXSSProtection" : "1; mode=block", - "strictTransportSecurity" : "max-age=31536000; includeSubDomains" - }, - "smtpServer" : { }, - "eventsEnabled" : false, - "eventsListeners" : [ "jboss-logging" ], - "enabledEventTypes" : [ ], - "adminEventsEnabled" : false, - "adminEventsDetailsEnabled" : false, - "identityProviders" : [ ], - "identityProviderMappers" : [ ], - "components" : { - "org.keycloak.services.clientregistration.policy.ClientRegistrationPolicy" : [ { - "id" : "dfcebc4c-09ca-41b3-a0a3-df73399186a4", - "name" : "Allowed Protocol Mapper Types", - "providerId" : "allowed-protocol-mappers", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { - "allowed-protocol-mapper-types" : [ "oidc-full-name-mapper", "saml-role-list-mapper", "oidc-address-mapper", "oidc-usermodel-attribute-mapper", "saml-user-attribute-mapper", "oidc-usermodel-property-mapper", "saml-user-property-mapper", "oidc-sha256-pairwise-sub-mapper" ] - } - }, { - "id" : "5faa1d6d-77d6-43f5-859b-58d9f307a0aa", - "name" : "Consent Required", - "providerId" : "consent-required", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { } - }, { - "id" : "e2d83d24-85bb-427b-8503-bf73b897a728", - "name" : "Trusted Hosts", - "providerId" : "trusted-hosts", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { - "host-sending-registration-request-must-match" : [ "true" ], - "client-uris-must-match" : [ "true" ] - } - }, { - "id" : "ba483ae9-92e0-4373-a6cb-3709b8b20c7f", - "name" : "Max Clients Limit", - "providerId" : "max-clients", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { - "max-clients" : [ "200" ] - } - }, { - "id" : "10022229-5282-4c8e-b9ff-a756aa7cfba2", - "name" : "Allowed Protocol Mapper Types", - "providerId" : "allowed-protocol-mappers", - "subType" : "authenticated", - "subComponents" : { }, - "config" : { - "allowed-protocol-mapper-types" : [ "oidc-usermodel-attribute-mapper", "oidc-address-mapper", "oidc-usermodel-property-mapper", "saml-user-attribute-mapper", "saml-user-property-mapper", "saml-role-list-mapper", "oidc-full-name-mapper", "oidc-sha256-pairwise-sub-mapper" ] - } - }, { - "id" : "bd575dc5-241c-4455-bcf4-9b0f72211d19", - "name" : "Allowed Client Scopes", - "providerId" : "allowed-client-templates", - "subType" : "authenticated", - "subComponents" : { }, - "config" : { - "allow-default-scopes" : [ "true" ] - } - }, { - "id" : "9132b476-dea7-4cbf-9899-8cd875fffadd", - "name" : "Allowed Client Scopes", - "providerId" : "allowed-client-templates", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { - "allow-default-scopes" : [ "true" ] - } - }, { - "id" : "d6309ee2-02f4-41b1-9715-a9df9d8c06fd", - "name" : "Full Scope Disabled", - "providerId" : "scope", - "subType" : "anonymous", - "subComponents" : { }, - "config" : { } - } ], - "org.keycloak.keys.KeyProvider" : [ { - "id" : "81f2eac4-a5e0-4aaf-a289-806d7473e603", - "name" : "rsa-generated", - "providerId" : "rsa-generated", - "subComponents" : { }, - "config" : { - "privateKey" : [ "MIIEowIBAAKCAQEApRC6lwzPCOKuoHCvI0R1BFBW/z56y4uw6Nja1l9NDIAh+QPihIlkSCdcZYAD/autSXymcoPHrjDRXAI77A0O4s3Jbmioe6mjvMB4TJwhqXQXgyP8B7PA1IBrkadg4GbWsC0SqG/Azv5RWPOKkdI151KCNIuOzEDQP9IfINMDxSbOSnSfxQTos+XX83NwlMURckmpVa7kdVB9Fnzq5HBud24jUKlL7npdoT3jTL/+CHmlR66svdK5Zz4ulLpW1z3o/LytX7i1Zz2xMWd2g5bLPDE013dRI/2ciIC9EYnw+TfO07MKVQS+J0P4eqtZ8ory7OBcI/8bE10GPcKR/6Hi1wIDAQABAoIBAE0JI6v/RFiHQqyKKpKxDlO3EwMIq9J3HVdubaOC0ri0zCYlVAA7BtxN0mdkeXhYOQWE8UGckwKOsgbY3BJsfbgIBqxKl+cu4sXipcJLU8J79cU0dBk8IRCL5qgRj7rrA+MxBfYqQbfZJSn4b4Fis9mDvlS7lSdqUEaY0AJHuQi3NRmCaAuB0ZZ0ipcDVWW3HpM1IDDQi+v+rxaNVPf/0fW7ihn7rrvCksD0xK78IK1s/2j+Hm/otOxPHMTyNrptl8Y+NvX+eBnzaP7ltO5Mvmsjzxf9HT6TvKUjA/yQNacLBCzAsIjAvMm70BmCcp9aAwmegwwjfyVqx0dtwe8gGBECgYEA39KIITVRnxxF/2PgPRvewg2lfWjn8AiZ7wIBaWV0be2YZ3IeShvOdY0ohJH5iOba1b0aYr4jwsWOHTJMui7mIbkNDDZqn3hrUm3/gxTwk/AhryBkGeZKiY1bsZOfPICnhK9yl1cj4hNcc1MxuIr+Drx1aQ6uN1OQAI5PFrKBGAUCgYEAvMu6D7qFh1wDZ6N+8U7phY9dDLj+wjwLt6rzs2cS0ZITNBByID5dG8qRGJemCR0nUNsAKhNxhZR61+qqC4Cd7sV8VD2hu6tDtOc01FAm/Qb5W2YexcgyCNAPQdUYb5wyYvOmMu8AvGK1tEg2ntQI8icyro/yRCU6LQWaAUdAkisCgYAhSbuLTNXF1zul3yHTlNiNfeAWBcsxDOZwAJlbJoapbsPS5ssQdJBBNWxIQzmcndEAJu7MrsC80Arx1rBIpH7/lvkUzucOrqcvjEKLKUsahYVM+YFJxNFjIc34XB87rVq8xidB0Oj6T6zZTg9ABhQA9xBzPoa0nc319zRWCNhgTQKBgB7E8UEI/CQwadmlOtYnL0X2NIsTR2nukVZQxUES5m1Dal/M4lzA7TnPTNB+PrAzkSnLV36EBrdnmJHCDA6t2o+Enhu4o7hLVFCScfi8S25niZJM1W0UkJsBFct76GygP1IDNa4NZ8hMKiMEteoy0nZszwTGLwzOKGoYBJ56t1pbAoGBAJNmx2r6+xUFEdwZ6kVKoYqRTlJx2rSG6ztSXhN9JxIMl3E3mJrCr2tVCblSXtTG/K6m0ip/KM/ACnWvYWByXnSECHmnVmTv7xux0tEoGggExx+6Oxol3STw2MNeues1LOQ3DKHVtV8+m4c76t9+t2PF48g9VxuiFH/cYTqTR4ZQ" ], - "keyUse" : [ "SIG" ], - "certificate" : [ "MIICqzCCAZMCBgGSkNnHODANBgkqhkiG9w0BAQsFADAZMRcwFQYDVQQDDA5rZXljbG9hay1yZWFsbTAeFw0yNDEwMTUxNTQyMjRaFw0zNDEwMTUxNTQ0MDRaMBkxFzAVBgNVBAMMDmtleWNsb2FrLXJlYWxtMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApRC6lwzPCOKuoHCvI0R1BFBW/z56y4uw6Nja1l9NDIAh+QPihIlkSCdcZYAD/autSXymcoPHrjDRXAI77A0O4s3Jbmioe6mjvMB4TJwhqXQXgyP8B7PA1IBrkadg4GbWsC0SqG/Azv5RWPOKkdI151KCNIuOzEDQP9IfINMDxSbOSnSfxQTos+XX83NwlMURckmpVa7kdVB9Fnzq5HBud24jUKlL7npdoT3jTL/+CHmlR66svdK5Zz4ulLpW1z3o/LytX7i1Zz2xMWd2g5bLPDE013dRI/2ciIC9EYnw+TfO07MKVQS+J0P4eqtZ8ory7OBcI/8bE10GPcKR/6Hi1wIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQAXa1MXG57y39ZJz9eK15/kaOG7Ud9Ykd2qYMH1rk9EuL0RgvA6sDDTELoV0QIKR12pfyIdK/EtYp9WWCM+0Lhl1Jogub2/9ushHcLzeGMTFMFfAdpFDtzBs4JPqL3NkAzHNnSk9UzTaJXnCU1ifaHCoHfLTrTxO3tygaJa2XzU/UYe+XU/oRSdfsAxYchFpnYgbMAK66/3N8Q1DS2d11aDHx564u4FQFLAZCDmRxBPFzuU3ozphm641/TVBk74JTPDfwLth1YHlz/yn6ikw/QVtdVsUC7WE2bsFpfO2oOZcUixaWR58phV2PiPEC/Vj/hCt/XdVyC2+Gjbke2yyiYx" ], - "priority" : [ "100" ] - } - }, { - "id" : "7734748e-5b2e-405c-9aec-2008312c1870", - "name" : "aes-generated", - "providerId" : "aes-generated", - "subComponents" : { }, - "config" : { - "kid" : [ "576890dd-983c-49ea-94c9-a25f52474c73" ], - "secret" : [ "f65zWZc8WKInoheMuyMpUg" ], - "priority" : [ "100" ] - } - }, { - "id" : "80c14997-2326-49a1-a00d-0ff78a9e6793", - "name" : "rsa-enc-generated", - "providerId" : "rsa-enc-generated", - "subComponents" : { }, - "config" : { - "privateKey" : [ "MIIEogIBAAKCAQEAodiEUlaHmW1u3a7uLBwYk4s8RF8e8jToW4AtIhjWXvc+8k48ZIw0XQR+9kTmXOwicQ/9jbTRUB3+NUqhiFd7u0VyS8KR5866464FuZUF/TBuZu7XqEbkEmHH76LXbDyB0EI3TAoj1I/hhn5Unvc5S8vhf+wFS/Ozy1Qkm1SrclZbzzOMbakFarrGye+LDQQXByjA0JUDFA6hjotyMei02jilmnElF6XWrxsCbX6qS79qriFm4k8+kght+KhWwgVPqTkU83/ykY4AsqxrW2f2oIsIPSYJHul4A9EB6vTIj6vdmdMUCHRb1Frec0WFtz5bWP1METsuSeY+Dk4EUl2h0QIDAQABAoIBAAnmLN2+ZifXvi63+uBezZAEtah26vUkkEu8cMZDn6UKWWLHr0D1JGTGGB/nAfIQDWE9+aO3ug+87eYDjRLCSxKewklo+rSje+HeLIJ333hnhHEuTamAwIVxTqHVI3j+0G/VBP3VJvDi5gfsZS+d7na43y+MV5yYKNiYam7HxH7HOXHA+i5usIxj+lHSsgkZjQUjITit+3gW/AQq9HU5TNHB0IqBHAuyWkWYJ+d/w3ysq9AC/uirheqF4FhmflNjASsjpTedxvvtwtw1fnbEex4KMfhmQbN3GSdWWfObq6+6D6MjpgL7YkSmuBqjGwaSLHcdqgXcmcxvb4bP/VarwnsCgYEA3nMhyUHBfGVJ9mJxcA/z1/Mo+w8a9fBVXnZWACU+KaKqK8sFmYdYu847QLMBlPcuxpDR/gcMfe0PLpmhWRF+RP+ffkVu/5s/8MkzkN0Ka6FHJhvTvWffJFFKbLCZtDRq+Gy79fa4QR3ko0Yg9RVPFv05B4pJtiex84djuof+4FMCgYEAukFxZz6f+f33hbpKq/k54NWYGQwGernfIHhsEsjTagkuuWYQ+3+LFljxiwTQ38i5WvprrLOjJnDv/uHtbko6TiA9YLKqL11VlGZ+6NisS4PDe8gWrApEsPmrkuZFSHG/9j89z0CeKv7y2JQ9A7yV0qEty2gnGuOytoF0KV5/QMsCgYAT3rjf303HLM0Egxqa5fHkEkZQ1rKT0VnuzCc2cB0zXuJQcxwW8K4OaIeGafb0NXgqKHl5dWu6O9ilUvfEmvlqdGLsxor5rgZyHabLg9MQdiGC1+1797FI7zH0r3mrTRtZAW1wtQ8UUfVAWF1NRw//f7L+Z23aJYWRuUBBQzCTHQKBgANzPuSItnHtEG67urJg1X+itUSRgnU3iDiTwny+l5v5O5JXn6zo+eyaDS9kEXJzx2s2BFSYp0cJBIkWKk3GtjnIQxrNdHWYJwOuul8Z1Gc5s59RX4okTo1wsorwFQx4fvPSzBRQwB1Px7PXWyH8llHmhnCkJ0VKPn8++qXhiD3tAoGAXx/O3zGrN6Fxk+MiCeuf/3//OJIlkcOJJdvNpzjJGzElp/S8ak6RGTIM2F12R7oQW2x7ZEn0jDtXRRHU4PjbsUXJoogML0ttRsKaEfVabSW0MApECF2FFid3uLiYedygOETHmy1fc9HZkIA2LCVrum6x8slqGulzpsNpL5o8DV0=" ], - "keyUse" : [ "ENC" ], - "certificate" : [ "MIICqzCCAZMCBgGSkNnHsDANBgkqhkiG9w0BAQsFADAZMRcwFQYDVQQDDA5rZXljbG9hay1yZWFsbTAeFw0yNDEwMTUxNTQyMjRaFw0zNDEwMTUxNTQ0MDRaMBkxFzAVBgNVBAMMDmtleWNsb2FrLXJlYWxtMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAodiEUlaHmW1u3a7uLBwYk4s8RF8e8jToW4AtIhjWXvc+8k48ZIw0XQR+9kTmXOwicQ/9jbTRUB3+NUqhiFd7u0VyS8KR5866464FuZUF/TBuZu7XqEbkEmHH76LXbDyB0EI3TAoj1I/hhn5Unvc5S8vhf+wFS/Ozy1Qkm1SrclZbzzOMbakFarrGye+LDQQXByjA0JUDFA6hjotyMei02jilmnElF6XWrxsCbX6qS79qriFm4k8+kght+KhWwgVPqTkU83/ykY4AsqxrW2f2oIsIPSYJHul4A9EB6vTIj6vdmdMUCHRb1Frec0WFtz5bWP1METsuSeY+Dk4EUl2h0QIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQB+6wLX3M9doibNw35TrjNkOxKktdVL+IkrgAjK4hd+y/rwlavI1+ig/ug2+5gFH4wY1QLPIDig69XWk+jgDYpLxWatnKXO0JpqKWovTOs9RW3i7jfYrznTVJfX8UuNnKqkoth2VZzWNNxGA7C80ciAtS+Jyf1c3DpCTklj90nYw5NHMezG6VuVwzK32IaNNht618LTSy4Fg9OtZ/O0BLpH/xhVoIDTeQPbcGTKld3yWUHyEjEZ8H+FzqJbsaXrnXeGbIDGVZBd9opVzCgU5j95qPMPBNx2ym4Pwi9U5thCNYzGCqVdrvWsmmPACrR6WR80ljP1AFjoNk8bahM4udTA" ], - "priority" : [ "100" ], - "algorithm" : [ "RSA-OAEP" ] - } - }, { - "id" : "af60a5d6-5b5d-4ea0-aa5b-64da4b069e9d", - "name" : "hmac-generated-hs512", - "providerId" : "hmac-generated", - "subComponents" : { }, - "config" : { - "kid" : [ "c72fbcfb-e7c9-4ada-85bc-3e2d74dfeba3" ], - "secret" : [ "2fWZRZxm6giOOBxfTaX_ikWy_ULJz8j7M9bHcZVMr84b3l_NLEL6RAUqhXRqtOjALWu1_KE9NDX11qBFSrz3o3hneHpdiarrGNzHBSDO6q46tB06-mpK8ZxPf-ImqNJsp8MJeTrJLyEY1Wx4F05zMwgIq0LQTiEOxGKyyOBnGQ0" ], - "priority" : [ "100" ], - "algorithm" : [ "HS512" ] - } - } ] - }, - "internationalizationEnabled" : false, - "supportedLocales" : [ ], - "authenticationFlows" : [ { - "id" : "ddfdca2c-3ccc-4c5c-a765-0c5a21027733", - "alias" : "Account verification options", - "description" : "Method with which to verity the existing account", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "idp-email-verification", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "ALTERNATIVE", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "Verify Existing Account by Re-authentication", - "userSetupAllowed" : false - } ] - }, { - "id" : "6f0b5b13-8cd7-4d9d-ac6c-8404ad309257", - "alias" : "Browser - Conditional OTP", - "description" : "Flow to determine if the OTP is required for the authentication", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "auth-otp-form", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "9f61aaab-6e55-40e6-9d8d-78ecd30b7ab7", - "alias" : "Browser - Conditional Organization", - "description" : "Flow to determine if the organization identity-first login is to be used", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "organization", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "7c2b0b12-3ecb-41e9-bae2-05c684a6c8a2", - "alias" : "Direct Grant - Conditional OTP", - "description" : "Flow to determine if the OTP is required for the authentication", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "direct-grant-validate-otp", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "ebf3420e-762b-44a8-83dc-9037348ebbf7", - "alias" : "First Broker Login - Conditional Organization", - "description" : "Flow to determine if the authenticator that adds organization members is to be used", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "idp-add-organization-member", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "ae0e2046-e041-4596-8f39-5edf44e3397a", - "alias" : "First broker login - Conditional OTP", - "description" : "Flow to determine if the OTP is required for the authentication", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "auth-otp-form", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "6ec411f2-e04a-4611-87ee-58c34167643e", - "alias" : "Handle Existing Account", - "description" : "Handle what to do if there is existing account with same email/username like authenticated identity provider", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "idp-confirm-link", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "Account verification options", - "userSetupAllowed" : false - } ] - }, { - "id" : "b3fa0a78-f499-4deb-9efe-c6c579fc3bcc", - "alias" : "Organization", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 10, - "autheticatorFlow" : true, - "flowAlias" : "Browser - Conditional Organization", - "userSetupAllowed" : false - } ] - }, { - "id" : "ce3599a1-1f8e-456e-b219-ec39fdbe73c3", - "alias" : "Reset - Conditional OTP", - "description" : "Flow to determine if the OTP should be reset or not. Set to REQUIRED to force.", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "conditional-user-configured", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "reset-otp", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "b8db8d9d-10be-43fb-8b26-b11852eca4d9", - "alias" : "User creation or linking", - "description" : "Flow for the existing/non-existing user alternatives", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticatorConfig" : "create unique user config", - "authenticator" : "idp-create-user-if-unique", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "ALTERNATIVE", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "Handle Existing Account", - "userSetupAllowed" : false - } ] - }, { - "id" : "e3db61f0-d996-45a5-8ba7-e5e5630e0fec", - "alias" : "Verify Existing Account by Re-authentication", - "description" : "Reauthentication of existing account", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "idp-username-password-form", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "First broker login - Conditional OTP", - "userSetupAllowed" : false - } ] - }, { - "id" : "2d96218c-6e4f-4b01-90fb-06bd6b18f1c8", - "alias" : "browser", - "description" : "Browser based authentication", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "auth-cookie", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "auth-spnego", - "authenticatorFlow" : false, - "requirement" : "DISABLED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "identity-provider-redirector", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 25, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "ALTERNATIVE", - "priority" : 26, - "autheticatorFlow" : true, - "flowAlias" : "Organization", - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "ALTERNATIVE", - "priority" : 30, - "autheticatorFlow" : true, - "flowAlias" : "forms", - "userSetupAllowed" : false - } ] - }, { - "id" : "fccd07ab-0951-4b2a-9f33-c829f5ab417b", - "alias" : "clients", - "description" : "Base authentication for clients", - "providerId" : "client-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "client-secret", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "client-jwt", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "client-secret-jwt", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 30, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "client-x509", - "authenticatorFlow" : false, - "requirement" : "ALTERNATIVE", - "priority" : 40, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "15ea83a4-2fe7-40eb-9313-0731411a6776", - "alias" : "direct grant", - "description" : "OpenID Connect Resource Owner Grant", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "direct-grant-validate-username", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "direct-grant-validate-password", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 30, - "autheticatorFlow" : true, - "flowAlias" : "Direct Grant - Conditional OTP", - "userSetupAllowed" : false - } ] - }, { - "id" : "62c65281-bd23-458b-a413-5c0a5478f829", - "alias" : "docker auth", - "description" : "Used by Docker clients to authenticate against the IDP", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "docker-http-basic-authenticator", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "20b0de16-a687-4d89-aff6-642f603a04eb", - "alias" : "first broker login", - "description" : "Actions taken after first broker login with identity provider account, which is not yet linked to any Keycloak account", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticatorConfig" : "review profile config", - "authenticator" : "idp-review-profile", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "User creation or linking", - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 50, - "autheticatorFlow" : true, - "flowAlias" : "First Broker Login - Conditional Organization", - "userSetupAllowed" : false - } ] - }, { - "id" : "7e870e12-37cd-4e37-9259-cdfcf2a53257", - "alias" : "forms", - "description" : "Username, password, otp and other auth forms.", - "providerId" : "basic-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "auth-username-password-form", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 20, - "autheticatorFlow" : true, - "flowAlias" : "Browser - Conditional OTP", - "userSetupAllowed" : false - } ] - }, { - "id" : "aa921bb4-5df9-4c5c-9cec-5b420d4a2fe4", - "alias" : "registration", - "description" : "Registration flow", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "registration-page-form", - "authenticatorFlow" : true, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : true, - "flowAlias" : "registration form", - "userSetupAllowed" : false - } ] - }, { - "id" : "76de36b3-b825-40c7-8670-ecb116157549", - "alias" : "registration form", - "description" : "Registration form", - "providerId" : "form-flow", - "topLevel" : false, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "registration-user-creation", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "registration-password-action", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 50, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "registration-recaptcha-action", - "authenticatorFlow" : false, - "requirement" : "DISABLED", - "priority" : 60, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "registration-terms-and-conditions", - "authenticatorFlow" : false, - "requirement" : "DISABLED", - "priority" : 70, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - }, { - "id" : "2e9e2f34-e79b-41c0-a52c-d5b2af6ee13f", - "alias" : "reset credentials", - "description" : "Reset credentials for a user if they forgot their password or something", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "reset-credentials-choose-user", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "reset-credential-email", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 20, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticator" : "reset-password", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 30, - "autheticatorFlow" : false, - "userSetupAllowed" : false - }, { - "authenticatorFlow" : true, - "requirement" : "CONDITIONAL", - "priority" : 40, - "autheticatorFlow" : true, - "flowAlias" : "Reset - Conditional OTP", - "userSetupAllowed" : false - } ] - }, { - "id" : "1dc718d5-a12f-4f31-9775-a7e74d8c8df7", - "alias" : "saml ecp", - "description" : "SAML ECP Profile Authentication Flow", - "providerId" : "basic-flow", - "topLevel" : true, - "builtIn" : true, - "authenticationExecutions" : [ { - "authenticator" : "http-basic-authenticator", - "authenticatorFlow" : false, - "requirement" : "REQUIRED", - "priority" : 10, - "autheticatorFlow" : false, - "userSetupAllowed" : false - } ] - } ], - "authenticatorConfig" : [ { - "id" : "58d9deb7-aec0-458a-a64a-01f09f25450c", - "alias" : "create unique user config", - "config" : { - "require.password.update.after.registration" : "false" - } - }, { - "id" : "f2a3a95b-d2f7-4c64-8c7a-7044dacd003e", - "alias" : "review profile config", - "config" : { - "update.profile.on.first.login" : "missing" - } - } ], - "requiredActions" : [ { - "alias" : "CONFIGURE_TOTP", - "name" : "Configure OTP", - "providerId" : "CONFIGURE_TOTP", - "enabled" : true, - "defaultAction" : false, - "priority" : 10, - "config" : { } - }, { - "alias" : "TERMS_AND_CONDITIONS", - "name" : "Terms and Conditions", - "providerId" : "TERMS_AND_CONDITIONS", - "enabled" : false, - "defaultAction" : false, - "priority" : 20, - "config" : { } - }, { - "alias" : "UPDATE_PASSWORD", - "name" : "Update Password", - "providerId" : "UPDATE_PASSWORD", - "enabled" : true, - "defaultAction" : false, - "priority" : 30, - "config" : { } - }, { - "alias" : "UPDATE_PROFILE", - "name" : "Update Profile", - "providerId" : "UPDATE_PROFILE", - "enabled" : true, - "defaultAction" : false, - "priority" : 40, - "config" : { } - }, { - "alias" : "VERIFY_EMAIL", - "name" : "Verify Email", - "providerId" : "VERIFY_EMAIL", - "enabled" : true, - "defaultAction" : false, - "priority" : 50, - "config" : { } - }, { - "alias" : "delete_account", - "name" : "Delete Account", - "providerId" : "delete_account", - "enabled" : false, - "defaultAction" : false, - "priority" : 60, - "config" : { } - }, { - "alias" : "webauthn-register", - "name" : "Webauthn Register", - "providerId" : "webauthn-register", - "enabled" : true, - "defaultAction" : false, - "priority" : 70, - "config" : { } - }, { - "alias" : "webauthn-register-passwordless", - "name" : "Webauthn Register Passwordless", - "providerId" : "webauthn-register-passwordless", - "enabled" : true, - "defaultAction" : false, - "priority" : 80, - "config" : { } - }, { - "alias" : "VERIFY_PROFILE", - "name" : "Verify Profile", - "providerId" : "VERIFY_PROFILE", - "enabled" : true, - "defaultAction" : false, - "priority" : 90, - "config" : { } - }, { - "alias" : "delete_credential", - "name" : "Delete Credential", - "providerId" : "delete_credential", - "enabled" : true, - "defaultAction" : false, - "priority" : 100, - "config" : { } - }, { - "alias" : "update_user_locale", - "name" : "Update User Locale", - "providerId" : "update_user_locale", - "enabled" : true, - "defaultAction" : false, - "priority" : 1000, - "config" : { } - } ], - "browserFlow" : "browser", - "registrationFlow" : "registration", - "directGrantFlow" : "direct grant", - "resetCredentialsFlow" : "reset credentials", - "clientAuthenticationFlow" : "clients", - "dockerAuthenticationFlow" : "docker auth", - "firstBrokerLoginFlow" : "first broker login", - "attributes" : { - "cibaBackchannelTokenDeliveryMode" : "poll", - "cibaExpiresIn" : "120", - "cibaAuthRequestedUserHint" : "login_hint", - "oauth2DeviceCodeLifespan" : "600", - "oauth2DevicePollingInterval" : "5", - "parRequestUriLifespan" : "60", - "cibaInterval" : "5", - "realmReusableOtpCode" : "false" - }, - "keycloakVersion" : "26.0.0", - "userManagedAccessAllowed" : false, - "organizationsEnabled" : false, - "clientProfiles" : { - "profiles" : [ ] - }, - "clientPolicies" : { - "policies" : [ ] - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/keycloak.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/keycloak.yaml deleted file mode 100644 index db6c54d..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/keycloak.yaml +++ /dev/null @@ -1,66 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: keycloak-external - labels: - app: keycloak -spec: - ports: - - name: http - port: 8080 - targetPort: 8080 - selector: - app: keycloak - type: NodePort ---- -apiVersion: v1 -kind: Service -metadata: - name: keycloak-internal - labels: - app: keycloak -spec: - ports: - - name: http - port: 8080 - targetPort: 8080 - selector: - app: keycloak - type: ClusterIP ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - name: keycloak - labels: - app: keycloak -spec: - replicas: 1 - selector: - matchLabels: - app: keycloak - template: - metadata: - labels: - app: keycloak - spec: - containers: - - name: keycloak - image: quay.io/keycloak/keycloak:25.0.6 - args: ["start-dev"] - env: - - name: KEYCLOAK_ADMIN - value: "admin" - - name: KEYCLOAK_ADMIN_PASSWORD - value: "admin" - - name: KC_PROXY - value: "edge" - - name: KC_HOSTNAME_URL - value: "http://test.keycloak:8080" - ports: - - name: http - containerPort: 8080 - readinessProbe: - httpGet: - path: /realms/master - port: 8080 diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/my-jaxrs-app-client-secured-deployment.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/my-jaxrs-app-client-secured-deployment.yaml deleted file mode 100644 index bcfd0b0..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/my-jaxrs-app-client-secured-deployment.yaml +++ /dev/null @@ -1,44 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: my-jaxrs-app-client-secured-deployment - labels: - app: my-jaxrs-app-client-secured -spec: - replicas: 1 - selector: - matchLabels: - app: my-jaxrs-app-client-secured - template: - metadata: - labels: - app: my-jaxrs-app-client-secured - spec: - containers: - - name: my-jaxrs-app-client-secured - image: quay.io/tborgato/my-jaxrs-app-client-secured - ports: - - containerPort: 8080 - - containerPort: 9990 - livenessProbe: - httpGet: - path: /health/live - port: 9990 - readinessProbe: - httpGet: - path: /health/ready - port: 9990 - startupProbe: - httpGet: - path: /health/started - port: 9990 - env: - - name: SIMPLE_MICROSERVICE_SERVER1_URI - value: "http://my-jaxrs-app-server1-secured-service:8080/hello" - - name: SIMPLE_MICROSERVICE_SERVER2_URI - value: "http://my-jaxrs-app-server2-secured-service:8080/hello" - - name: OIDC_PROVIDER_URL - # minikube service keycloak-external --url - value: "http://192.168.39.143:30999" - - name: OIDC_CLIENT_SECRET - value: "6aphM9GAucpQRYOU695i0mEYlhdU5vG7" diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/my-jaxrs-app-client-secured-service.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/my-jaxrs-app-client-secured-service.yaml deleted file mode 100644 index 4c40dd6..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/my-jaxrs-app-client-secured-service.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: my-jaxrs-app-client-secured-service - labels: - app: my-jaxrs-app-client-secured -spec: - ports: - - name: http - protocol: TCP - port: 8080 - targetPort: 8080 - selector: - app: my-jaxrs-app-client-secured - type: NodePort diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/myrealm.json b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/myrealm.json deleted file mode 100644 index 9559351..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/kubernetes/myrealm.json +++ /dev/null @@ -1,2273 +0,0 @@ -{ - "id": "ecbdc575-ff9f-4115-95d1-0f188a896c7d", - "realm": "myrealm", - "notBefore": 0, - "defaultSignatureAlgorithm": "RS256", - "revokeRefreshToken": false, - "refreshTokenMaxReuse": 0, - "accessTokenLifespan": 300, - "accessTokenLifespanForImplicitFlow": 900, - "ssoSessionIdleTimeout": 1800, - "ssoSessionMaxLifespan": 36000, - "ssoSessionIdleTimeoutRememberMe": 0, - "ssoSessionMaxLifespanRememberMe": 0, - "offlineSessionIdleTimeout": 2592000, - "offlineSessionMaxLifespanEnabled": false, - "offlineSessionMaxLifespan": 5184000, - "clientSessionIdleTimeout": 0, - "clientSessionMaxLifespan": 0, - "clientOfflineSessionIdleTimeout": 0, - "clientOfflineSessionMaxLifespan": 0, - "accessCodeLifespan": 60, - "accessCodeLifespanUserAction": 300, - "accessCodeLifespanLogin": 1800, - "actionTokenGeneratedByAdminLifespan": 43200, - "actionTokenGeneratedByUserLifespan": 300, - "oauth2DeviceCodeLifespan": 600, - "oauth2DevicePollingInterval": 5, - "enabled": true, - "sslRequired": "external", - "registrationAllowed": false, - "registrationEmailAsUsername": false, - "rememberMe": false, - "verifyEmail": false, - "loginWithEmailAllowed": true, - "duplicateEmailsAllowed": false, - "resetPasswordAllowed": false, - "editUsernameAllowed": false, - "bruteForceProtected": false, - "permanentLockout": false, - "maxTemporaryLockouts": 0, - "maxFailureWaitSeconds": 900, - "minimumQuickLoginWaitSeconds": 60, - "waitIncrementSeconds": 60, - "quickLoginCheckMilliSeconds": 1000, - "maxDeltaTimeSeconds": 43200, - "failureFactor": 30, - "roles": { - "realm": [ - { - "id": "bda34c6f-40ef-4b7d-bab6-b70b05224ae4", - "name": "user", - "description": "", - "composite": false, - "clientRole": false, - "containerId": "ecbdc575-ff9f-4115-95d1-0f188a896c7d", - "attributes": {} - }, - { - "id": "67fe691c-eff8-4818-b40f-06f16357a2c5", - "name": "uma_authorization", - "description": "${role_uma_authorization}", - "composite": false, - "clientRole": false, - "containerId": "ecbdc575-ff9f-4115-95d1-0f188a896c7d", - "attributes": {} - }, - { - "id": "8a705f24-5312-472e-9f16-1f85dfb8d279", - "name": "offline_access", - "description": "${role_offline-access}", - "composite": false, - "clientRole": false, - "containerId": "ecbdc575-ff9f-4115-95d1-0f188a896c7d", - "attributes": {} - }, - { - "id": "de87b97a-b721-404d-ba5f-3ad1678da687", - "name": "admin", - "description": "", - "composite": false, - "clientRole": false, - "containerId": "ecbdc575-ff9f-4115-95d1-0f188a896c7d", - "attributes": {} - }, - { - "id": "b8adee11-e545-4c87-b594-28c729e4a590", - "name": "default-roles-myrealm", - "description": "${role_default-roles}", - "composite": true, - "composites": { - "realm": [ - "offline_access", - "uma_authorization" - ], - "client": { - "account": [ - "manage-account", - "view-profile" - ] - } - }, - "clientRole": false, - "containerId": "ecbdc575-ff9f-4115-95d1-0f188a896c7d", - "attributes": {} - } - ], - "client": { - "realm-management": [ - { - "id": "0b0a3f66-3033-47ff-8a3a-068c79a01117", - "name": "manage-clients", - "description": "${role_manage-clients}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "37cda924-7b4c-4c14-913a-c6c782af2dd2", - "name": "realm-admin", - "description": "${role_realm-admin}", - "composite": true, - "composites": { - "client": { - "realm-management": [ - "manage-clients", - "create-client", - "view-events", - "view-identity-providers", - "impersonation", - "view-users", - "view-realm", - "query-groups", - "manage-identity-providers", - "query-realms", - "view-authorization", - "manage-realm", - "manage-authorization", - "query-clients", - "view-clients", - "query-users", - "manage-events", - "manage-users" - ] - } - }, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "f0894968-5162-4b92-86ae-65e912c672e0", - "name": "create-client", - "description": "${role_create-client}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "3c129277-4e14-4d95-b259-14211e6a5569", - "name": "view-events", - "description": "${role_view-events}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "6229201b-33cd-4252-b11e-832592f95506", - "name": "view-identity-providers", - "description": "${role_view-identity-providers}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "56a5384a-6932-4aff-a0dd-58a2b73f94f6", - "name": "impersonation", - "description": "${role_impersonation}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "c04d1fa5-251c-4b58-9fbb-cc08f3209096", - "name": "view-realm", - "description": "${role_view-realm}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "9116329e-291a-4838-86f4-2ea3c7a61e5b", - "name": "view-users", - "description": "${role_view-users}", - "composite": true, - "composites": { - "client": { - "realm-management": [ - "query-users", - "query-groups" - ] - } - }, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "85a2f6e9-012f-4d58-ab69-26ee119dcaad", - "name": "query-groups", - "description": "${role_query-groups}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "790f0bc4-1cf5-4bda-a5f6-e008511cd8b1", - "name": "manage-identity-providers", - "description": "${role_manage-identity-providers}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "6ae6547e-99a9-491e-8609-cb5c34a55ae7", - "name": "query-realms", - "description": "${role_query-realms}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "68534f69-8840-47a8-ac83-a2e3286c5efa", - "name": "view-authorization", - "description": "${role_view-authorization}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "7ea0b983-d72b-4469-b149-fc9d37f383d1", - "name": "manage-authorization", - "description": "${role_manage-authorization}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "4e2c70a7-7c9a-4de1-9640-b1cb471ddf8b", - "name": "manage-realm", - "description": "${role_manage-realm}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "c91f2185-c9e8-48e4-a23e-42ce540c659d", - "name": "query-clients", - "description": "${role_query-clients}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "dadb4ed2-f147-4bd5-a11d-36268f9ac7ba", - "name": "view-clients", - "description": "${role_view-clients}", - "composite": true, - "composites": { - "client": { - "realm-management": [ - "query-clients" - ] - } - }, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "90c62736-3e8c-448c-aad8-59c00cde19bd", - "name": "query-users", - "description": "${role_query-users}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "070df681-342e-4481-a3c7-b7b50325c487", - "name": "manage-events", - "description": "${role_manage-events}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - }, - { - "id": "90058e3f-4636-4780-b4da-917e55bd9152", - "name": "manage-users", - "description": "${role_manage-users}", - "composite": false, - "clientRole": true, - "containerId": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "attributes": {} - } - ], - "my-jaxrs-app-client-secured": [], - "security-admin-console": [], - "admin-cli": [], - "account-console": [], - "broker": [ - { - "id": "ea0b1508-1feb-4a4f-b44c-272f7b3910a8", - "name": "read-token", - "description": "${role_read-token}", - "composite": false, - "clientRole": true, - "containerId": "81a373a9-7053-4a0e-b798-42684316d535", - "attributes": {} - } - ], - "account": [ - { - "id": "3ea1fa97-f07d-4719-9176-a3a6c0e51d4d", - "name": "manage-account", - "description": "${role_manage-account}", - "composite": true, - "composites": { - "client": { - "account": [ - "manage-account-links" - ] - } - }, - "clientRole": true, - "containerId": "1f3a011e-06b4-4e62-88ac-204a090650a9", - "attributes": {} - }, - { - "id": "884a0734-ecf3-4e27-a3ea-5c8c93d70023", - "name": "manage-consent", - "description": "${role_manage-consent}", - "composite": true, - "composites": { - "client": { - "account": [ - "view-consent" - ] - } - }, - "clientRole": true, - "containerId": "1f3a011e-06b4-4e62-88ac-204a090650a9", - "attributes": {} - }, - { - "id": "60903a23-3478-459f-8a1a-4c4e4e62f8f2", - "name": "view-applications", - "description": "${role_view-applications}", - "composite": false, - "clientRole": true, - "containerId": "1f3a011e-06b4-4e62-88ac-204a090650a9", - "attributes": {} - }, - { - "id": "6f4707ab-8aaf-4652-b29b-da33f5870bc7", - "name": "view-groups", - "description": "${role_view-groups}", - "composite": false, - "clientRole": true, - "containerId": "1f3a011e-06b4-4e62-88ac-204a090650a9", - "attributes": {} - }, - { - "id": "3f95f293-72b1-405c-b055-ef537dbffce5", - "name": "delete-account", - "description": "${role_delete-account}", - "composite": false, - "clientRole": true, - "containerId": "1f3a011e-06b4-4e62-88ac-204a090650a9", - "attributes": {} - }, - { - "id": "233911d6-4be8-48be-8e6c-ef7aceb96d8b", - "name": "manage-account-links", - "description": "${role_manage-account-links}", - "composite": false, - "clientRole": true, - "containerId": "1f3a011e-06b4-4e62-88ac-204a090650a9", - "attributes": {} - }, - { - "id": "325a0d84-f674-45e3-8e80-f24c65679905", - "name": "view-consent", - "description": "${role_view-consent}", - "composite": false, - "clientRole": true, - "containerId": "1f3a011e-06b4-4e62-88ac-204a090650a9", - "attributes": {} - }, - { - "id": "c89b734b-4271-4f66-8df6-e6819c71c17c", - "name": "view-profile", - "description": "${role_view-profile}", - "composite": false, - "clientRole": true, - "containerId": "1f3a011e-06b4-4e62-88ac-204a090650a9", - "attributes": {} - } - ] - } - }, - "groups": [], - "defaultRole": { - "id": "b8adee11-e545-4c87-b594-28c729e4a590", - "name": "default-roles-myrealm", - "description": "${role_default-roles}", - "composite": true, - "clientRole": false, - "containerId": "ecbdc575-ff9f-4115-95d1-0f188a896c7d" - }, - "requiredCredentials": [ - "password" - ], - "otpPolicyType": "totp", - "otpPolicyAlgorithm": "HmacSHA1", - "otpPolicyInitialCounter": 0, - "otpPolicyDigits": 6, - "otpPolicyLookAheadWindow": 1, - "otpPolicyPeriod": 30, - "otpPolicyCodeReusable": false, - "otpSupportedApplications": [ - "totpAppFreeOTPName", - "totpAppGoogleName", - "totpAppMicrosoftAuthenticatorName" - ], - "localizationTexts": {}, - "webAuthnPolicyRpEntityName": "keycloak", - "webAuthnPolicySignatureAlgorithms": [ - "ES256" - ], - "webAuthnPolicyRpId": "", - "webAuthnPolicyAttestationConveyancePreference": "not specified", - "webAuthnPolicyAuthenticatorAttachment": "not specified", - "webAuthnPolicyRequireResidentKey": "not specified", - "webAuthnPolicyUserVerificationRequirement": "not specified", - "webAuthnPolicyCreateTimeout": 0, - "webAuthnPolicyAvoidSameAuthenticatorRegister": false, - "webAuthnPolicyAcceptableAaguids": [], - "webAuthnPolicyExtraOrigins": [], - "webAuthnPolicyPasswordlessRpEntityName": "keycloak", - "webAuthnPolicyPasswordlessSignatureAlgorithms": [ - "ES256" - ], - "webAuthnPolicyPasswordlessRpId": "", - "webAuthnPolicyPasswordlessAttestationConveyancePreference": "not specified", - "webAuthnPolicyPasswordlessAuthenticatorAttachment": "not specified", - "webAuthnPolicyPasswordlessRequireResidentKey": "not specified", - "webAuthnPolicyPasswordlessUserVerificationRequirement": "not specified", - "webAuthnPolicyPasswordlessCreateTimeout": 0, - "webAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister": false, - "webAuthnPolicyPasswordlessAcceptableAaguids": [], - "webAuthnPolicyPasswordlessExtraOrigins": [], - "scopeMappings": [ - { - "clientScope": "offline_access", - "roles": [ - "offline_access" - ] - } - ], - "clientScopeMappings": { - "account": [ - { - "client": "account-console", - "roles": [ - "manage-account", - "view-groups" - ] - } - ] - }, - "clients": [ - { - "id": "1f3a011e-06b4-4e62-88ac-204a090650a9", - "clientId": "account", - "name": "${client_account}", - "rootUrl": "${authBaseUrl}", - "baseUrl": "/realms/myrealm/account/", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/realms/myrealm/account/*" - ], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "profile", - "roles", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "daf1f599-d5e4-4e0d-8072-b0dd22eed234", - "clientId": "account-console", - "name": "${client_account-console}", - "rootUrl": "${authBaseUrl}", - "baseUrl": "/realms/myrealm/account/", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/realms/myrealm/account/*" - ], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+", - "pkce.code.challenge.method": "S256" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "protocolMappers": [ - { - "id": "bd558042-be83-4f8d-baf1-f56a7fb64bd2", - "name": "audience resolve", - "protocol": "openid-connect", - "protocolMapper": "oidc-audience-resolve-mapper", - "consentRequired": false, - "config": {} - } - ], - "defaultClientScopes": [ - "web-origins", - "acr", - "profile", - "roles", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "4c9ff889-9c32-4af9-88ce-7080ea3888ee", - "clientId": "admin-cli", - "name": "${client_admin-cli}", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": false, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": true, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": {}, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "profile", - "roles", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "81a373a9-7053-4a0e-b798-42684316d535", - "clientId": "broker", - "name": "${client_broker}", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": true, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": false, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": {}, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "profile", - "roles", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "f2603d22-24bf-422f-b48e-7b61c3cd4695", - "clientId": "my-jaxrs-app-client-secured", - "name": "", - "description": "", - "rootUrl": "", - "adminUrl": "", - "baseUrl": "", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "secret": "**********", - "redirectUris": [ - "*" - ], - "webOrigins": [ - "+" - ], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": true, - "serviceAccountsEnabled": false, - "publicClient": false, - "frontchannelLogout": true, - "protocol": "openid-connect", - "attributes": { - "oidc.ciba.grant.enabled": "false", - "client.secret.creation.time": "1727971209", - "backchannel.logout.session.required": "true", - "oauth2.device.authorization.grant.enabled": "false", - "backchannel.logout.revoke.offline.tokens": "false" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": true, - "nodeReRegistrationTimeout": -1, - "defaultClientScopes": [ - "web-origins", - "acr", - "profile", - "roles", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "129f0f3a-9b00-42f1-ac08-cd17c5786bbf", - "clientId": "realm-management", - "name": "${client_realm-management}", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [], - "webOrigins": [], - "notBefore": 0, - "bearerOnly": true, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": false, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": {}, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "defaultClientScopes": [ - "web-origins", - "acr", - "profile", - "roles", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - }, - { - "id": "5e3a6150-1589-44cd-b3cc-625715505900", - "clientId": "security-admin-console", - "name": "${client_security-admin-console}", - "rootUrl": "${authAdminUrl}", - "baseUrl": "/admin/myrealm/console/", - "surrogateAuthRequired": false, - "enabled": true, - "alwaysDisplayInConsole": false, - "clientAuthenticatorType": "client-secret", - "redirectUris": [ - "/admin/myrealm/console/*" - ], - "webOrigins": [ - "+" - ], - "notBefore": 0, - "bearerOnly": false, - "consentRequired": false, - "standardFlowEnabled": true, - "implicitFlowEnabled": false, - "directAccessGrantsEnabled": false, - "serviceAccountsEnabled": false, - "publicClient": true, - "frontchannelLogout": false, - "protocol": "openid-connect", - "attributes": { - "post.logout.redirect.uris": "+", - "pkce.code.challenge.method": "S256" - }, - "authenticationFlowBindingOverrides": {}, - "fullScopeAllowed": false, - "nodeReRegistrationTimeout": 0, - "protocolMappers": [ - { - "id": "357f3ec6-0100-4a5e-b8c6-67a54b78425b", - "name": "locale", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "locale", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "locale", - "jsonType.label": "String" - } - } - ], - "defaultClientScopes": [ - "web-origins", - "acr", - "profile", - "roles", - "basic", - "email" - ], - "optionalClientScopes": [ - "address", - "phone", - "offline_access", - "microprofile-jwt" - ] - } - ], - "clientScopes": [ - { - "id": "98fa6b5f-309e-428e-a044-b59f2ddb729b", - "name": "role_list", - "description": "SAML role list", - "protocol": "saml", - "attributes": { - "consent.screen.text": "${samlRoleListScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "8d77d6f2-d825-428d-8a12-4630dcdbd72e", - "name": "role list", - "protocol": "saml", - "protocolMapper": "saml-role-list-mapper", - "consentRequired": false, - "config": { - "single": "false", - "attribute.nameformat": "Basic", - "attribute.name": "Role" - } - } - ] - }, - { - "id": "70df737b-5dde-47e6-b2b3-2b39ac9a5518", - "name": "basic", - "description": "OpenID Connect scope for add all basic claims to the token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "e130d882-11c3-4af6-9fb3-38f796e90d70", - "name": "auth_time", - "protocol": "openid-connect", - "protocolMapper": "oidc-usersessionmodel-note-mapper", - "consentRequired": false, - "config": { - "user.session.note": "AUTH_TIME", - "id.token.claim": "true", - "introspection.token.claim": "true", - "access.token.claim": "true", - "claim.name": "auth_time", - "jsonType.label": "long" - } - }, - { - "id": "5ce0efde-d6a4-405c-8f68-b8f3e3c02674", - "name": "sub", - "protocol": "openid-connect", - "protocolMapper": "oidc-sub-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "access.token.claim": "true" - } - } - ] - }, - { - "id": "424a25d5-6455-4640-9421-d46c9ee056c6", - "name": "profile", - "description": "OpenID Connect built-in scope: profile", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${profileScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "bcb1f8a4-d9a4-44f0-a7d7-0cda7d256668", - "name": "middle name", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "middleName", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "middle_name", - "jsonType.label": "String" - } - }, - { - "id": "d1bbef80-747d-4d56-8de9-cb19c65b83ef", - "name": "updated at", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "updatedAt", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "updated_at", - "jsonType.label": "long" - } - }, - { - "id": "e1ba9165-5515-4d7a-8e59-c40560867ba8", - "name": "given name", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "firstName", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "given_name", - "jsonType.label": "String" - } - }, - { - "id": "049290ea-fe64-49ae-9fa8-24b886f80c7b", - "name": "username", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "username", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "preferred_username", - "jsonType.label": "String" - } - }, - { - "id": "450126bc-3326-48b2-af59-9e18dde2ed82", - "name": "profile", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "profile", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "profile", - "jsonType.label": "String" - } - }, - { - "id": "44868b2f-1a48-40bd-a6eb-71b5a0ecad2d", - "name": "gender", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "gender", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "gender", - "jsonType.label": "String" - } - }, - { - "id": "8d94de0e-51b0-4e08-88fa-ec61f1a49863", - "name": "picture", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "picture", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "picture", - "jsonType.label": "String" - } - }, - { - "id": "fbab1a80-642b-4857-8d71-89a3e079c62d", - "name": "website", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "website", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "website", - "jsonType.label": "String" - } - }, - { - "id": "d2d72181-c93f-4431-b47f-ea9050b3c0ee", - "name": "locale", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "locale", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "locale", - "jsonType.label": "String" - } - }, - { - "id": "910a14af-ad9c-40e4-ab18-3b47679c0375", - "name": "full name", - "protocol": "openid-connect", - "protocolMapper": "oidc-full-name-mapper", - "consentRequired": false, - "config": { - "id.token.claim": "true", - "introspection.token.claim": "true", - "access.token.claim": "true", - "userinfo.token.claim": "true" - } - }, - { - "id": "9ffa430c-faff-463f-af1d-d6496e645b57", - "name": "family name", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "lastName", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "family_name", - "jsonType.label": "String" - } - }, - { - "id": "9fd30079-074c-4ee0-81fd-2b7b2bdf2539", - "name": "nickname", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "nickname", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "nickname", - "jsonType.label": "String" - } - }, - { - "id": "2779b86d-63b0-4f5d-91ea-7ee9e37db958", - "name": "birthdate", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "birthdate", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "birthdate", - "jsonType.label": "String" - } - }, - { - "id": "76b36cc1-958c-4de5-97b3-25d7a7ff2a37", - "name": "zoneinfo", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "zoneinfo", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "zoneinfo", - "jsonType.label": "String" - } - } - ] - }, - { - "id": "51f317c8-2a7c-4db6-90d7-fd09bdafc9b3", - "name": "microprofile-jwt", - "description": "Microprofile - JWT built-in scope", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "18cae4e2-1629-4f87-ab66-4d99c45e41a0", - "name": "upn", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "username", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "upn", - "jsonType.label": "String" - } - }, - { - "id": "4a300524-25f7-4cf5-b7a5-19fe6365d524", - "name": "groups", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-realm-role-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "multivalued": "true", - "user.attribute": "foo", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "groups", - "jsonType.label": "String" - } - } - ] - }, - { - "id": "cd25fdf8-a41e-405b-bfd8-3dc5ac8c2237", - "name": "email", - "description": "OpenID Connect built-in scope: email", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${emailScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "f00f341f-30cc-41e2-ac2a-ff6e2d2f1bcf", - "name": "email", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "email", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "email", - "jsonType.label": "String" - } - }, - { - "id": "521d882f-df61-4166-bb58-1243ac75e1c8", - "name": "email verified", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-property-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "emailVerified", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "email_verified", - "jsonType.label": "boolean" - } - } - ] - }, - { - "id": "72b726c6-8aba-4050-a05f-4a2f966172c3", - "name": "offline_access", - "description": "OpenID Connect built-in scope: offline_access", - "protocol": "openid-connect", - "attributes": { - "consent.screen.text": "${offlineAccessScopeConsentText}", - "display.on.consent.screen": "true" - } - }, - { - "id": "d392f529-0d90-49c7-aafd-ef475167ab72", - "name": "address", - "description": "OpenID Connect built-in scope: address", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${addressScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "dea2da85-4732-4873-a38d-0a189edf3bdd", - "name": "address", - "protocol": "openid-connect", - "protocolMapper": "oidc-address-mapper", - "consentRequired": false, - "config": { - "user.attribute.formatted": "formatted", - "user.attribute.country": "country", - "introspection.token.claim": "true", - "user.attribute.postal_code": "postal_code", - "userinfo.token.claim": "true", - "user.attribute.street": "street", - "id.token.claim": "true", - "user.attribute.region": "region", - "access.token.claim": "true", - "user.attribute.locality": "locality" - } - } - ] - }, - { - "id": "c7670a6d-0256-4623-a2f0-ecdea412266f", - "name": "phone", - "description": "OpenID Connect built-in scope: phone", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "true", - "consent.screen.text": "${phoneScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "b7c61c6a-6c58-400f-aa53-e80c8092e703", - "name": "phone number verified", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "phoneNumberVerified", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "phone_number_verified", - "jsonType.label": "boolean" - } - }, - { - "id": "9ece5223-5b35-4842-b57b-98b1ed4be7d4", - "name": "phone number", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-attribute-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "userinfo.token.claim": "true", - "user.attribute": "phoneNumber", - "id.token.claim": "true", - "access.token.claim": "true", - "claim.name": "phone_number", - "jsonType.label": "String" - } - } - ] - }, - { - "id": "6d4f353b-f486-4991-9850-ca9baed35e28", - "name": "roles", - "description": "OpenID Connect scope for add user roles to the access token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "consent.screen.text": "${rolesScopeConsentText}", - "display.on.consent.screen": "true" - }, - "protocolMappers": [ - { - "id": "72a79a7e-542d-46fe-87e8-44d08f8b0935", - "name": "client roles", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-client-role-mapper", - "consentRequired": false, - "config": { - "user.attribute": "foo", - "introspection.token.claim": "true", - "access.token.claim": "true", - "claim.name": "resource_access.${client_id}.roles", - "jsonType.label": "String", - "multivalued": "true" - } - }, - { - "id": "635e54db-8d3c-4d7a-b9e1-53c6146ad2e2", - "name": "realm roles", - "protocol": "openid-connect", - "protocolMapper": "oidc-usermodel-realm-role-mapper", - "consentRequired": false, - "config": { - "user.attribute": "foo", - "introspection.token.claim": "true", - "access.token.claim": "true", - "claim.name": "realm_access.roles", - "jsonType.label": "String", - "multivalued": "true" - } - }, - { - "id": "eb5d9d64-4280-4512-a2df-490796f6ecad", - "name": "audience resolve", - "protocol": "openid-connect", - "protocolMapper": "oidc-audience-resolve-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "access.token.claim": "true" - } - } - ] - }, - { - "id": "4d7a62d3-1300-453e-bc59-f6c4e2f51fe3", - "name": "acr", - "description": "OpenID Connect scope for add acr (authentication context class reference) to the token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "54b3e633-c59d-4778-a7c1-32b0a09e87de", - "name": "acr loa level", - "protocol": "openid-connect", - "protocolMapper": "oidc-acr-mapper", - "consentRequired": false, - "config": { - "id.token.claim": "true", - "introspection.token.claim": "true", - "access.token.claim": "true" - } - } - ] - }, - { - "id": "18c2924d-dad0-487e-b279-49160a5f40d9", - "name": "web-origins", - "description": "OpenID Connect scope for add allowed web origins to the access token", - "protocol": "openid-connect", - "attributes": { - "include.in.token.scope": "false", - "consent.screen.text": "", - "display.on.consent.screen": "false" - }, - "protocolMappers": [ - { - "id": "f05997d7-0ad0-4efb-a301-345b0b27f721", - "name": "allowed web origins", - "protocol": "openid-connect", - "protocolMapper": "oidc-allowed-origins-mapper", - "consentRequired": false, - "config": { - "introspection.token.claim": "true", - "access.token.claim": "true" - } - } - ] - } - ], - "defaultDefaultClientScopes": [ - "role_list", - "profile", - "email", - "roles", - "web-origins", - "acr", - "basic" - ], - "defaultOptionalClientScopes": [ - "offline_access", - "address", - "phone", - "microprofile-jwt" - ], - "browserSecurityHeaders": { - "contentSecurityPolicyReportOnly": "", - "xContentTypeOptions": "nosniff", - "referrerPolicy": "no-referrer", - "xRobotsTag": "none", - "xFrameOptions": "SAMEORIGIN", - "contentSecurityPolicy": "frame-src 'self'; frame-ancestors 'self'; object-src 'none';", - "xXSSProtection": "1; mode=block", - "strictTransportSecurity": "max-age=31536000; includeSubDomains" - }, - "smtpServer": {}, - "eventsEnabled": false, - "eventsListeners": [ - "jboss-logging" - ], - "enabledEventTypes": [], - "adminEventsEnabled": false, - "adminEventsDetailsEnabled": false, - "identityProviders": [], - "identityProviderMappers": [], - "components": { - "org.keycloak.services.clientregistration.policy.ClientRegistrationPolicy": [ - { - "id": "ecc40818-ef6e-45ee-9bc7-6eb24b61b52e", - "name": "Allowed Protocol Mapper Types", - "providerId": "allowed-protocol-mappers", - "subType": "authenticated", - "subComponents": {}, - "config": { - "allowed-protocol-mapper-types": [ - "oidc-usermodel-property-mapper", - "saml-user-property-mapper", - "oidc-usermodel-attribute-mapper", - "oidc-full-name-mapper", - "oidc-address-mapper", - "oidc-sha256-pairwise-sub-mapper", - "saml-user-attribute-mapper", - "saml-role-list-mapper" - ] - } - }, - { - "id": "bdfd753d-7b57-470c-8d05-f32910661add", - "name": "Allowed Protocol Mapper Types", - "providerId": "allowed-protocol-mappers", - "subType": "anonymous", - "subComponents": {}, - "config": { - "allowed-protocol-mapper-types": [ - "oidc-sha256-pairwise-sub-mapper", - "oidc-usermodel-attribute-mapper", - "saml-user-attribute-mapper", - "saml-user-property-mapper", - "oidc-address-mapper", - "oidc-usermodel-property-mapper", - "oidc-full-name-mapper", - "saml-role-list-mapper" - ] - } - }, - { - "id": "e83f24cd-c6b2-4567-a68a-bcddc2c05c28", - "name": "Max Clients Limit", - "providerId": "max-clients", - "subType": "anonymous", - "subComponents": {}, - "config": { - "max-clients": [ - "200" - ] - } - }, - { - "id": "6a97e6f2-0eaf-49e1-99bc-7b98f33bf08a", - "name": "Allowed Client Scopes", - "providerId": "allowed-client-templates", - "subType": "authenticated", - "subComponents": {}, - "config": { - "allow-default-scopes": [ - "true" - ] - } - }, - { - "id": "ff60237b-388d-449b-b91a-48946c02fffb", - "name": "Allowed Client Scopes", - "providerId": "allowed-client-templates", - "subType": "anonymous", - "subComponents": {}, - "config": { - "allow-default-scopes": [ - "true" - ] - } - }, - { - "id": "0c16ff69-09e7-4a6c-96ee-aadf52ba0465", - "name": "Full Scope Disabled", - "providerId": "scope", - "subType": "anonymous", - "subComponents": {}, - "config": {} - }, - { - "id": "af204bd5-dd23-4cda-a07f-bd458931afd1", - "name": "Consent Required", - "providerId": "consent-required", - "subType": "anonymous", - "subComponents": {}, - "config": {} - }, - { - "id": "e2209397-236b-4778-9d4f-c1735a670c2c", - "name": "Trusted Hosts", - "providerId": "trusted-hosts", - "subType": "anonymous", - "subComponents": {}, - "config": { - "host-sending-registration-request-must-match": [ - "true" - ], - "client-uris-must-match": [ - "true" - ] - } - } - ], - "org.keycloak.keys.KeyProvider": [ - { - "id": "8cd96434-2793-41eb-b9db-cfa71d6e6411", - "name": "rsa-generated", - "providerId": "rsa-generated", - "subComponents": {}, - "config": { - "priority": [ - "100" - ] - } - }, - { - "id": "f1f00505-f061-4aea-8e2a-fd5e4c158cad", - "name": "rsa-enc-generated", - "providerId": "rsa-enc-generated", - "subComponents": {}, - "config": { - "priority": [ - "100" - ], - "algorithm": [ - "RSA-OAEP" - ] - } - }, - { - "id": "bd058e8d-05e5-41f0-af0e-f115c295f74b", - "name": "aes-generated", - "providerId": "aes-generated", - "subComponents": {}, - "config": { - "priority": [ - "100" - ] - } - }, - { - "id": "a98d2cf8-aef5-46a3-9de9-5cd628991ce3", - "name": "hmac-generated-hs512", - "providerId": "hmac-generated", - "subComponents": {}, - "config": { - "priority": [ - "100" - ], - "algorithm": [ - "HS512" - ] - } - } - ] - }, - "internationalizationEnabled": false, - "supportedLocales": [], - "authenticationFlows": [ - { - "id": "f20c5140-ca8f-4049-9af9-40657c0555f6", - "alias": "Account verification options", - "description": "Method with which to verity the existing account", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "idp-email-verification", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "ALTERNATIVE", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Verify Existing Account by Re-authentication", - "userSetupAllowed": false - } - ] - }, - { - "id": "2c4ec1b8-0bda-423a-acd4-57f54be8aac4", - "alias": "Browser - Conditional OTP", - "description": "Flow to determine if the OTP is required for the authentication", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "auth-otp-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "5864a2cd-149e-4e20-8831-0f70ec1249ec", - "alias": "Direct Grant - Conditional OTP", - "description": "Flow to determine if the OTP is required for the authentication", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "direct-grant-validate-otp", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "2ec1e311-9660-4418-9b2c-3e1e55b5e35b", - "alias": "First broker login - Conditional OTP", - "description": "Flow to determine if the OTP is required for the authentication", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "auth-otp-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "7c65befe-8840-4b9f-9643-a61d397d93a3", - "alias": "Handle Existing Account", - "description": "Handle what to do if there is existing account with same email/username like authenticated identity provider", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "idp-confirm-link", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Account verification options", - "userSetupAllowed": false - } - ] - }, - { - "id": "c04b527c-bb54-46d2-9538-695261f0abae", - "alias": "Reset - Conditional OTP", - "description": "Flow to determine if the OTP should be reset or not. Set to REQUIRED to force.", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "conditional-user-configured", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "reset-otp", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "099507cb-c151-4b89-9efa-c5be4340688a", - "alias": "User creation or linking", - "description": "Flow for the existing/non-existing user alternatives", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticatorConfig": "create unique user config", - "authenticator": "idp-create-user-if-unique", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "ALTERNATIVE", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Handle Existing Account", - "userSetupAllowed": false - } - ] - }, - { - "id": "e2dbe050-938e-4108-b053-d1fea1bd7c5e", - "alias": "Verify Existing Account by Re-authentication", - "description": "Reauthentication of existing account", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "idp-username-password-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "First broker login - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "afcb014d-8816-4063-bd2d-b8643448d37d", - "alias": "browser", - "description": "browser based authentication", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "auth-cookie", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "auth-spnego", - "authenticatorFlow": false, - "requirement": "DISABLED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "identity-provider-redirector", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 25, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "ALTERNATIVE", - "priority": 30, - "autheticatorFlow": true, - "flowAlias": "forms", - "userSetupAllowed": false - } - ] - }, - { - "id": "4e64c93b-4c0c-43d5-a751-80471d9ceae1", - "alias": "clients", - "description": "Base authentication for clients", - "providerId": "client-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "client-secret", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "client-jwt", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "client-secret-jwt", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 30, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "client-x509", - "authenticatorFlow": false, - "requirement": "ALTERNATIVE", - "priority": 40, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "4d241500-5449-4552-80ff-ed504370d055", - "alias": "direct grant", - "description": "OpenID Connect Resource Owner Grant", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "direct-grant-validate-username", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "direct-grant-validate-password", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 30, - "autheticatorFlow": true, - "flowAlias": "Direct Grant - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "e409eece-22e3-4aca-b393-a1e6e3b30c80", - "alias": "docker auth", - "description": "Used by Docker clients to authenticate against the IDP", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "docker-http-basic-authenticator", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "c133a895-b01c-4731-aba6-d0cb9d843599", - "alias": "first broker login", - "description": "Actions taken after first broker login with identity provider account, which is not yet linked to any Keycloak account", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticatorConfig": "review profile config", - "authenticator": "idp-review-profile", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "User creation or linking", - "userSetupAllowed": false - } - ] - }, - { - "id": "3fcccd88-a21b-41d5-a79d-4661dd2cd051", - "alias": "forms", - "description": "Username, password, otp and other auth forms.", - "providerId": "basic-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "auth-username-password-form", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 20, - "autheticatorFlow": true, - "flowAlias": "Browser - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "ceecf379-1f2d-4150-984b-686a3fa439bd", - "alias": "registration", - "description": "registration flow", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "registration-page-form", - "authenticatorFlow": true, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": true, - "flowAlias": "registration form", - "userSetupAllowed": false - } - ] - }, - { - "id": "313370ad-8c3b-4c28-965d-cdc8ace8634c", - "alias": "registration form", - "description": "registration form", - "providerId": "form-flow", - "topLevel": false, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "registration-user-creation", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "registration-password-action", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 50, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "registration-recaptcha-action", - "authenticatorFlow": false, - "requirement": "DISABLED", - "priority": 60, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "registration-terms-and-conditions", - "authenticatorFlow": false, - "requirement": "DISABLED", - "priority": 70, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - }, - { - "id": "81b00c93-7cec-45b4-a2b6-9b87747e46c1", - "alias": "reset credentials", - "description": "Reset credentials for a user if they forgot their password or something", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "reset-credentials-choose-user", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "reset-credential-email", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 20, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticator": "reset-password", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 30, - "autheticatorFlow": false, - "userSetupAllowed": false - }, - { - "authenticatorFlow": true, - "requirement": "CONDITIONAL", - "priority": 40, - "autheticatorFlow": true, - "flowAlias": "Reset - Conditional OTP", - "userSetupAllowed": false - } - ] - }, - { - "id": "b5b0a777-28bf-438a-82e1-6d09ebdf4a1b", - "alias": "saml ecp", - "description": "SAML ECP Profile Authentication Flow", - "providerId": "basic-flow", - "topLevel": true, - "builtIn": true, - "authenticationExecutions": [ - { - "authenticator": "http-basic-authenticator", - "authenticatorFlow": false, - "requirement": "REQUIRED", - "priority": 10, - "autheticatorFlow": false, - "userSetupAllowed": false - } - ] - } - ], - "authenticatorConfig": [ - { - "id": "f1f272b7-8618-4509-8b7a-79f9ca6049e0", - "alias": "create unique user config", - "config": { - "require.password.update.after.registration": "false" - } - }, - { - "id": "7d618846-3831-4205-9294-4d54851890cf", - "alias": "review profile config", - "config": { - "update.profile.on.first.login": "missing" - } - } - ], - "requiredActions": [ - { - "alias": "CONFIGURE_TOTP", - "name": "Configure OTP", - "providerId": "CONFIGURE_TOTP", - "enabled": true, - "defaultAction": false, - "priority": 10, - "config": {} - }, - { - "alias": "TERMS_AND_CONDITIONS", - "name": "Terms and Conditions", - "providerId": "TERMS_AND_CONDITIONS", - "enabled": false, - "defaultAction": false, - "priority": 20, - "config": {} - }, - { - "alias": "UPDATE_PASSWORD", - "name": "Update Password", - "providerId": "UPDATE_PASSWORD", - "enabled": true, - "defaultAction": false, - "priority": 30, - "config": {} - }, - { - "alias": "UPDATE_PROFILE", - "name": "Update Profile", - "providerId": "UPDATE_PROFILE", - "enabled": true, - "defaultAction": false, - "priority": 40, - "config": {} - }, - { - "alias": "VERIFY_EMAIL", - "name": "Verify Email", - "providerId": "VERIFY_EMAIL", - "enabled": true, - "defaultAction": false, - "priority": 50, - "config": {} - }, - { - "alias": "delete_account", - "name": "Delete Account", - "providerId": "delete_account", - "enabled": false, - "defaultAction": false, - "priority": 60, - "config": {} - }, - { - "alias": "webauthn-register", - "name": "Webauthn Register", - "providerId": "webauthn-register", - "enabled": true, - "defaultAction": false, - "priority": 70, - "config": {} - }, - { - "alias": "webauthn-register-passwordless", - "name": "Webauthn Register Passwordless", - "providerId": "webauthn-register-passwordless", - "enabled": true, - "defaultAction": false, - "priority": 80, - "config": {} - }, - { - "alias": "VERIFY_PROFILE", - "name": "Verify Profile", - "providerId": "VERIFY_PROFILE", - "enabled": true, - "defaultAction": false, - "priority": 90, - "config": {} - }, - { - "alias": "delete_credential", - "name": "Delete Credential", - "providerId": "delete_credential", - "enabled": true, - "defaultAction": false, - "priority": 100, - "config": {} - }, - { - "alias": "update_user_locale", - "name": "Update User Locale", - "providerId": "update_user_locale", - "enabled": true, - "defaultAction": false, - "priority": 1000, - "config": {} - } - ], - "browserFlow": "browser", - "registrationFlow": "registration", - "directGrantFlow": "direct grant", - "resetCredentialsFlow": "reset credentials", - "clientAuthenticationFlow": "clients", - "dockerAuthenticationFlow": "docker auth", - "firstBrokerLoginFlow": "first broker login", - "attributes": { - "cibaBackchannelTokenDeliveryMode": "poll", - "cibaExpiresIn": "120", - "cibaAuthRequestedUserHint": "login_hint", - "oauth2DeviceCodeLifespan": "600", - "oauth2DevicePollingInterval": "5", - "parRequestUriLifespan": "60", - "cibaInterval": "5", - "realmReusableOtpCode": "false" - }, - "keycloakVersion": "25.0.6", - "userManagedAccessAllowed": false, - "organizationsEnabled": false, - "clientProfiles": { - "profiles": [] - }, - "clientPolicies": { - "policies": [] - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/pom.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/pom.xml deleted file mode 100644 index 0b0e6d4..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/pom.xml +++ /dev/null @@ -1,247 +0,0 @@ - - - - 4.0.0 - org.wildfly.examples - simple-microservice-client-secured - 1.0.0-SNAPSHOT - - war - simple-microservice-client-secured - Insert description for your project here. - - - - - UTF-8 - - - 5.0.0.Final - 33.0.2.Final - - - 5.10.1 - - - 3.13.0 - 3.0.0 - 3.2.5 - 3.4.0 - - - 11 - - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - default - - true - never - - - false - never - - - - - never - - - never - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - default - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - - true - never - - - false - never - - - - - - - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - - - - - - - - org.wildfly.bom - wildfly-ee-with-tools - ${version.wildfly.bom} - pom - import - - - - - org.junit - junit-bom - 5.10.1 - pom - import - - - - org.wildfly.bom - wildfly-microprofile - ${version.wildfly.bom} - pom - import - - - - - - - - - jakarta.enterprise - jakarta.enterprise.cdi-api - provided - - - - - jakarta.ws.rs - jakarta.ws.rs-api - provided - - - - org.eclipse.microprofile.rest.client - microprofile-rest-client-api - provided - - - org.eclipse.microprofile.config - microprofile-config-api - provided - - - - org.wildfly.security - wildfly-elytron-http-oidc - provided - - - jakarta.servlet - jakarta.servlet-api - provided - - - - - - ROOT - - - - - org.apache.maven.plugins - maven-compiler-plugin - ${version.compiler.plugin} - - - - - - org.apache.maven.plugins - maven-war-plugin - ${version.war.plugin} - - - false - - - - - - org.wildfly.plugins - wildfly-maven-plugin - ${version.wildfly.maven.plugin} - - - - org.wildfly:wildfly-galleon-pack:${version.wildfly.bom} - - - org.wildfly.cloud:wildfly-cloud-galleon-pack:7.0.2.Final - - - - - cloud-server - microprofile-config - microprofile-rest-client - elytron-oidc-client - - - - - - package - - - - - - - org.apache.maven.plugins - maven-failsafe-plugin - ${version.failsafe.plugin} - - - **/*IT - - - - - - integration-test - verify - - - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedApplication.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedApplication.java deleted file mode 100644 index 1557ac8..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedApplication.java +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.ws.rs.ApplicationPath; -import jakarta.ws.rs.core.Application; - -@ApplicationPath("/hello") -public class GettingStartedApplication extends Application { - -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java deleted file mode 100644 index 5761ef3..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.inject.Inject; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.ws.rs.GET; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.PathParam; -import jakarta.ws.rs.Produces; -import jakarta.ws.rs.core.Context; -import jakarta.ws.rs.core.MediaType; -import jakarta.ws.rs.core.Response; -import org.eclipse.microprofile.rest.client.inject.RestClient; -import org.wildfly.security.http.oidc.OidcSecurityContext; - -import java.io.IOException; - -@Path("/") -public class GettingStartedEndpoint { - - @Context - private HttpServletRequest httpServletRequest; - - @Inject - @RestClient - private GettingStartedEndpoint1Interface service1; - - @Inject - @RestClient - private GettingStartedEndpoint2Interface service2; - - @GET - @Path("/{name}") - @Produces(MediaType.TEXT_PLAIN) - public Response sayHello(final @PathParam("name") String name) throws IOException { - Response response; - OidcSecurityContext oidcSecurityContext = getOidcSecurityContext(httpServletRequest); - if (oidcSecurityContext != null) { - String authzHeaderValue = "Bearer " + oidcSecurityContext.getTokenString(); - System.out.println("\n\n[JWT] service2 Token: " + authzHeaderValue + "\n\n"); - return service2.sayHello(authzHeaderValue, name); - } else { - System.out.println("\n\n[JWT] No token :(\n\n"); - return service2.sayHello(null, name); - } - } - - private OidcSecurityContext getOidcSecurityContext(HttpServletRequest req) { - return (OidcSecurityContext) req.getAttribute(OidcSecurityContext.class.getName()); - } -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint1Interface.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint1Interface.java deleted file mode 100644 index 3510ad1..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint1Interface.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.wildfly.examples; - -import jakarta.ws.rs.GET; -import jakarta.ws.rs.HeaderParam; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.PathParam; -import jakarta.ws.rs.Produces; -import jakarta.ws.rs.core.MediaType; -import jakarta.ws.rs.core.Response; -import org.eclipse.microprofile.rest.client.annotation.RegisterClientHeaders; -import org.eclipse.microprofile.rest.client.inject.RegisterRestClient; - -@RegisterClientHeaders -@RegisterRestClient(configKey="simple-microservice-server1") -@Path("/") -public interface GettingStartedEndpoint1Interface { - @GET - @Path("/{name}") - @Produces(MediaType.TEXT_PLAIN) - public Response sayHello(@HeaderParam("Authorization") String authorization, final @PathParam("name") String name); -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint2Interface.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint2Interface.java deleted file mode 100644 index aaf1a2b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint2Interface.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.wildfly.examples; - -import jakarta.ws.rs.GET; -import jakarta.ws.rs.HeaderParam; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.PathParam; -import jakarta.ws.rs.Produces; -import jakarta.ws.rs.core.MediaType; -import jakarta.ws.rs.core.Response; -import org.eclipse.microprofile.rest.client.annotation.RegisterClientHeaders; -import org.eclipse.microprofile.rest.client.inject.RegisterRestClient; - -@RegisterClientHeaders -@RegisterRestClient(configKey="simple-microservice-server2") -@Path("/") -public interface GettingStartedEndpoint2Interface { - @GET - @Path("/{name}") - @Produces(MediaType.TEXT_PLAIN) - public Response sayHello(@HeaderParam("Authorization") String authorization, final @PathParam("name") String name); -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/resources/META-INF/microprofile-config.properties b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/resources/META-INF/microprofile-config.properties deleted file mode 100644 index 52d4380..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/resources/META-INF/microprofile-config.properties +++ /dev/null @@ -1,5 +0,0 @@ -simple-microservice-server1/mp-rest/uri=${simple-microservice-server1-uri:http://127.0.0.1:8080/hello} -simple-microservice-server1/mp-rest/connectTimeout=3000 -simple-microservice-server2/mp-rest/uri=${simple-microservice-server2-uri:http://127.0.0.1:8080/hello} -simple-microservice-server2/mp-rest/connectTimeout=3000 -org.eclipse.microprofile.rest.client.propagateHeaders=Authorization diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/WEB-INF/beans.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/WEB-INF/beans.xml deleted file mode 100644 index 86e3de8..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/WEB-INF/beans.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/WEB-INF/oidc.json b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/WEB-INF/oidc.json deleted file mode 100644 index 98a7384..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/WEB-INF/oidc.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "client-id" : "my-jaxrs-app-client-secured", - "provider-url" : "${env.OIDC_PROVIDER_URL:http://192.168.39.143:30999}/realms/myrealm", - "ssl-required" : "EXTERNAL", - "credentials" : { - "secret" : "${env.OIDC_CLIENT_SECRET:6aphM9GAucpQRYOU695i0mEYlhdU5vG7}" - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/WEB-INF/web.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index be053c3..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - secured - /* - - - * - - - - - OIDC - - - - * - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/bkg.gif b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/bkg.gif deleted file mode 100644 index 523877c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/bkg.gif and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/favicon.ico b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/favicon.ico deleted file mode 100644 index f19166c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/favicon.ico and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/index.html b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/index.html deleted file mode 100644 index f0e421b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/index.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - Welcome to WildFly Application Server - - - - - - - - -
-
- -

Getting Started

-
-
- - - -
-

-

-
-
-
- - - diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/normalize.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/normalize.css deleted file mode 100644 index 458eea1..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/normalize.css +++ /dev/null @@ -1,427 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ - -/** - * 1. Set default font family to sans-serif. - * 2. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - */ - -html { - font-family: sans-serif; /* 1 */ - -ms-text-size-adjust: 100%; /* 2 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} - -/** - * Remove default margin. - */ - -body { - margin: 0; -} - -/* HTML5 display definitions - ========================================================================== */ - -/** - * Correct `block` display not defined for any HTML5 element in IE 8/9. - * Correct `block` display not defined for `details` or `summary` in IE 10/11 - * and Firefox. - * Correct `block` display not defined for `main` in IE 11. - */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} - -/** - * 1. Correct `inline-block` display not defined in IE 8/9. - * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. - */ - -audio, -canvas, -progress, -video { - display: inline-block; /* 1 */ - vertical-align: baseline; /* 2 */ -} - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Address `[hidden]` styling not present in IE 8/9/10. - * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. - */ - -[hidden], -template { - display: none; -} - -/* Links - ========================================================================== */ - -/** - * Remove the gray background color from active links in IE 10. - */ - -a { - background-color: transparent; -} - -/** - * Improve readability when focused and also mouse hovered in all browsers. - */ - -a:active, -a:hover { - outline: 0; -} - -/* Text-level semantics - ========================================================================== */ - -/** - * Address styling not present in IE 8/9/10/11, Safari, and Chrome. - */ - -abbr[title] { - border-bottom: 1px dotted; -} - -/** - * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. - */ - -b, -strong { - font-weight: bold; -} - -/** - * Address styling not present in Safari and Chrome. - */ - -dfn { - font-style: italic; -} - -/** - * Address variable `h1` font-size and margin within `section` and `article` - * contexts in Firefox 4+, Safari, and Chrome. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -/** - * Address styling not present in IE 8/9. - */ - -mark { - background: #ff0; - color: #000; -} - -/** - * Address inconsistent and variable font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -/* Embedded content - ========================================================================== */ - -/** - * Remove border when inside `a` element in IE 8/9/10. - */ - -img { - border: 0; -} - -/** - * Correct overflow not hidden in IE 9/10/11. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* Grouping content - ========================================================================== */ - -/** - * Address margin not present in IE 8/9 and Safari. - */ - -figure { - margin: 1em 40px; -} - -/** - * Address differences between Firefox and other browsers. - */ - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -/** - * Contain overflow in all browsers. - */ - -pre { - overflow: auto; -} - -/** - * Address odd `em`-unit font size rendering in all browsers. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -/* Forms - ========================================================================== */ - -/** - * Known limitation: by default, Chrome and Safari on OS X allow very limited - * styling of `select`, unless a `border` property is set. - */ - -/** - * 1. Correct color not being inherited. - * Known issue: affects color of disabled elements. - * 2. Correct font properties not being inherited. - * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. - */ - -button, -input, -optgroup, -select, -textarea { - color: inherit; /* 1 */ - font: inherit; /* 2 */ - margin: 0; /* 3 */ -} - -/** - * Address `overflow` set to `hidden` in IE 8/9/10/11. - */ - -button { - overflow: visible; -} - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. - * Correct `select` style inheritance in Firefox. - */ - -button, -select { - text-transform: none; -} - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - */ - -button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ -} - -/** - * Re-set default cursor for disabled elements. - */ - -button[disabled], -html input[disabled] { - cursor: default; -} - -/** - * Remove inner padding and border in Firefox 4+. - */ - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -/** - * Address Firefox 4+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ - -input { - line-height: normal; -} - -/** - * It's recommended that you don't attempt to style these elements. - * Firefox's implementation doesn't respect box-sizing, padding, or width. - * - * 1. Address box sizing set to `content-box` in IE 8/9/10. - * 2. Remove excess padding in IE 8/9/10. - */ - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Fix the cursor style for Chrome's increment/decrement buttons. For certain - * `font-size` values of the `input`, it causes the cursor style of the - * decrement button to change from `default` to `text`. - */ - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -/** - * 1. Address `appearance` set to `searchfield` in Safari and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari and Chrome - * (include `-moz` to future-proof). - */ - -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} - -/** - * Remove inner padding and search cancel button in Safari and Chrome on OS X. - * Safari (but not Chrome) clips the cancel button when the search input has - * padding (and `textfield` appearance). - */ - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Define consistent border, margin, and padding. - */ - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -/** - * 1. Correct `color` not being inherited in IE 8/9/10/11. - * 2. Remove padding so people aren't caught out if they zero out fieldsets. - */ - -legend { - border: 0; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Remove default vertical scrollbar in IE 8/9/10/11. - */ - -textarea { - overflow: auto; -} - -/** - * Don't inherit the `font-weight` (applied by a rule above). - * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. - */ - -optgroup { - font-weight: bold; -} - -/* Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} - -td, -th { - padding: 0; -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/normalize.min.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/normalize.min.css deleted file mode 100644 index f6e0b65..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/normalize.min.css +++ /dev/null @@ -1 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/wildfly.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/wildfly.css deleted file mode 100644 index c360191..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/wildfly.css +++ /dev/null @@ -1,79 +0,0 @@ -/* - ~ Copyright The WildFly Authors - ~ SPDX-License-Identifier: Apache-2.0 -*/ - -html { - color: #222; - font-family: "Open Sans", Geneva, Verdana, Arial, sans-serif; - font-size: 1em; - line-height: 1.4; -} - -::-moz-selection { - background: #b3d4fc; - text-shadow: none; -} - -::selection { - background: #b3d4fc; - text-shadow: none; -} - -body { - background: url(bkg.gif) repeat-x; - color: #5B5B5B; - margin-top: 100px; - text-align: center; -} - -h1 { - padding-top: 20px; - color: #7b1e1e; -} - -a { - text-decoration: none; - color: #5e8a9a; -} - -a:hover { - text-decoration: underline; - color: #8ec6d9; -} - -img { - border: 0; -} - -code { - background-color: rgba(27, 31, 35, 0.05); - border-radius: 3px; - font-family: Consolas, Menlo, Courier, monospace; - font-size: 90%; - padding: 0.2em; -} - -.wrapper { - margin-left: auto; - margin-right: auto; - width: 50em; - text-align: left; -} - -.content { - margin: 0; - padding: 0; -} - -.logo { - margin-bottom: 10px; -} - -footer { - position:fixed; - bottom:0; - left:0; - width:100%; - height: 90px; -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/wildfly_logo.png b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/wildfly_logo.png deleted file mode 100644 index 51e55c3..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-client-secured/src/main/webapp/wildfly_logo.png and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/Dockerfile b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/Dockerfile deleted file mode 100644 index e0f9660..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/Dockerfile +++ /dev/null @@ -1,4 +0,0 @@ -ARG runtime_image=quay.io/wildfly/wildfly-runtime:latest -FROM ${runtime_image} -COPY --chown=jboss:root target/server $JBOSS_HOME -RUN chmod -R ug+rwX $JBOSS_HOME \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/README.adoc b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/README.adoc deleted file mode 100644 index f19929a..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/README.adoc +++ /dev/null @@ -1,81 +0,0 @@ - -= simple-microservice - -The `simple-microservice` project is a simple Jakarta EE application with a HTTP endpoint that is running in -https://wildfly.org[WildFly]. - -The `src/main` folder contains a simple 'Hello world' style Jakarta EE application using JAX-RS. - -== Building the application - -To build the application, you use Maven: - -[source,shell] ----- -mvn clean package ----- - -Maven will compile the application, provision a WildFly server -The WildFly server is created in `target/server` with the application deployed in it. - -== Running the application - -To run the application, run the commands: - -[source,shell] ----- -cd target/server -./bin/standalone.sh ----- - -Once WildFly is running, the application can be accessed at http://localhost:8080/ - -== Testing the application - -To run integration tests to verify the application, you use Maven: - -[source,shell] ----- -mvn clean package verify ----- - -Tests in `src/test` are run against the server in `target/server`. - -== Build Docker image - -[source,shell] ----- -podman build -t my-jaxrs-app:latest . ----- - -== Run Docker image - -[source,shell] ----- -podman run --rm -p 8080:8080 -p 9990:9990 \ - --name=my-jaxrs-app \ - my-jaxrs-app ----- - -== Deploy to Kubernetes - -[source,shell] ----- -podman tag my-jaxrs-app quay.io/tborgato/my-jaxrs-app -podman push quay.io/tborgato/my-jaxrs-app ----- - -NOTE: in the above commands, replace `tborgato` with your personal account - -[source,shell] ----- -kubectl apply -f kubernetes/deployment-my-jaxrs-app.yaml -kubectl expose deployment.apps/my-jaxrs-app-deployment --type=NodePort --port=8080 ----- - -NOTE: in the above files, replace `tborgato` with your personal account - -== Resources - -* https://wildfly.org[WildFly] -* https://docs.wildfly.org[WildFly Documentation] diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/kubernetes/deployment-my-jaxrs-app.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/kubernetes/deployment-my-jaxrs-app.yaml deleted file mode 100644 index 38c913b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/kubernetes/deployment-my-jaxrs-app.yaml +++ /dev/null @@ -1,34 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: my-jaxrs-app-deployment - labels: - app: my-jaxrs-app -spec: - replicas: 1 - selector: - matchLabels: - app: my-jaxrs-app - template: - metadata: - labels: - app: my-jaxrs-app - spec: - containers: - - name: my-jaxrs-app - image: quay.io/tborgato/my-jaxrs-app - ports: - - containerPort: 8080 - - containerPort: 9990 - livenessProbe: - httpGet: - path: /health/live - port: 9990 - readinessProbe: - httpGet: - path: /health/ready - port: 9990 - startupProbe: - httpGet: - path: /health/started - port: 9990 diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/pom.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/pom.xml deleted file mode 100644 index 82fcdaa..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/pom.xml +++ /dev/null @@ -1,253 +0,0 @@ - - - - 4.0.0 - org.wildfly.examples - simple-microservice-server - 1.0.0-SNAPSHOT - - war - simple-microservice-server - Insert description for your project here. - - - - - UTF-8 - - - 5.0.0.Final - 33.0.2.Final - - - 5.10.1 - - - 3.13.0 - 3.0.0 - 3.2.5 - 3.4.0 - - - 11 - - 33.0.2.Final - - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - default - - true - never - - - false - never - - - - - never - - - never - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - default - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - - true - never - - - false - never - - - - - - - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - - - - - - - - org.wildfly.bom - wildfly-ee-with-tools - ${version.wildfly.bom} - pom - import - - - - org.wildfly.bom - wildfly-microprofile - ${version.bom.microprofile} - pom - import - - - - - - - - - jakarta.enterprise - jakarta.enterprise.cdi-api - provided - - - - - jakarta.ws.rs - jakarta.ws.rs-api - provided - - - org.eclipse.microprofile.config - microprofile-config-api - provided - - - org.eclipse.microprofile.jwt - microprofile-jwt-auth-api - provided - - - - - - ROOT - - - - - org.apache.maven.plugins - maven-compiler-plugin - ${version.compiler.plugin} - - - - - - org.apache.maven.plugins - maven-war-plugin - ${version.war.plugin} - - - false - - - - - - org.wildfly.plugins - wildfly-maven-plugin - ${version.wildfly.maven.plugin} - - - - org.wildfly:wildfly-galleon-pack:${version.wildfly.bom} - - - org.wildfly.cloud:wildfly-cloud-galleon-pack:7.0.0.Final - - - - - cloud-server - microprofile-config - microprofile-jwt - - - - - - package - - - - - - - org.apache.maven.plugins - maven-failsafe-plugin - ${version.failsafe.plugin} - - - **/*IT - - - - - - integration-test - verify - - - - - - - - - - bare-metal - - - - org.wildfly.plugins - wildfly-maven-plugin - ${version.wildfly.maven.plugin} - - - - - - /socket-binding-group=standard-sockets:write-attribute(name=port-offset,value=100) - - - - - - - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/java/org/wildfly/examples/GettingStartedApplication.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/java/org/wildfly/examples/GettingStartedApplication.java deleted file mode 100644 index e682f27..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/java/org/wildfly/examples/GettingStartedApplication.java +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.ws.rs.ApplicationPath; -import jakarta.ws.rs.core.Application; -import org.eclipse.microprofile.auth.LoginConfig; - -@LoginConfig(authMethod="MP-JWT", realmName="myrealm") -@ApplicationPath("/hello") -public class GettingStartedApplication extends Application { - -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java deleted file mode 100644 index 8049e8b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.inject.Inject; -import jakarta.ws.rs.GET; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.PathParam; -import jakarta.ws.rs.Produces; -import jakarta.ws.rs.core.MediaType; -import jakarta.ws.rs.core.Response; -import org.eclipse.microprofile.jwt.JsonWebToken; - -@Path("/") -public class GettingStartedEndpoint { - - @Inject - JsonWebToken jwt; - - @Inject - private GettingStartedService service; - - @GET - @Path("/{name}") - @Produces(MediaType.TEXT_PLAIN) - public Response sayHello(final @PathParam("name") String name) { - String response = - service.hello(name) - + " Subject:" + (jwt!=null? jwt.getSubject():null) - + " Issuer: " + jwt.getIssuer(); - - return Response.ok(response).build(); - } -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/java/org/wildfly/examples/GettingStartedService.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/java/org/wildfly/examples/GettingStartedService.java deleted file mode 100644 index b3372c9..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/java/org/wildfly/examples/GettingStartedService.java +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.enterprise.context.ApplicationScoped; - -@ApplicationScoped -public class GettingStartedService { - - public String hello(String name) { - return String.format("Helloooooo '%s'.", name); - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/resources/META-INF/microprofile-config.properties b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/resources/META-INF/microprofile-config.properties deleted file mode 100644 index 59406f1..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/resources/META-INF/microprofile-config.properties +++ /dev/null @@ -1,5 +0,0 @@ -#mp.jwt.verify.publickey.location=META-INF/public.pem -#mp.jwt.verify.issuer=quickstart-jwt-issuer -mp.jwt.verify.issuer=http://192.168.39.143:30999/realms/myrealm -mp.jwt.verify.publickey.location=http://192.168.39.143:30999/realms/myrealm/protocol/openid-connect/certs -#export MP_JWT_VERIFY_ISSUER=http://192.168.39.143:30999 \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/WEB-INF/beans.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/WEB-INF/beans.xml deleted file mode 100644 index 86e3de8..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/WEB-INF/beans.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/bkg.gif b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/bkg.gif deleted file mode 100644 index 523877c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/bkg.gif and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/favicon.ico b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/favicon.ico deleted file mode 100644 index f19166c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/favicon.ico and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/index.html b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/index.html deleted file mode 100644 index f0e421b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/index.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - Welcome to WildFly Application Server - - - - - - - - -
-
- -

Getting Started

-
-
- - - -
-

-

-
-
-
- - - diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/normalize.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/normalize.css deleted file mode 100644 index 458eea1..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/normalize.css +++ /dev/null @@ -1,427 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ - -/** - * 1. Set default font family to sans-serif. - * 2. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - */ - -html { - font-family: sans-serif; /* 1 */ - -ms-text-size-adjust: 100%; /* 2 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} - -/** - * Remove default margin. - */ - -body { - margin: 0; -} - -/* HTML5 display definitions - ========================================================================== */ - -/** - * Correct `block` display not defined for any HTML5 element in IE 8/9. - * Correct `block` display not defined for `details` or `summary` in IE 10/11 - * and Firefox. - * Correct `block` display not defined for `main` in IE 11. - */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} - -/** - * 1. Correct `inline-block` display not defined in IE 8/9. - * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. - */ - -audio, -canvas, -progress, -video { - display: inline-block; /* 1 */ - vertical-align: baseline; /* 2 */ -} - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Address `[hidden]` styling not present in IE 8/9/10. - * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. - */ - -[hidden], -template { - display: none; -} - -/* Links - ========================================================================== */ - -/** - * Remove the gray background color from active links in IE 10. - */ - -a { - background-color: transparent; -} - -/** - * Improve readability when focused and also mouse hovered in all browsers. - */ - -a:active, -a:hover { - outline: 0; -} - -/* Text-level semantics - ========================================================================== */ - -/** - * Address styling not present in IE 8/9/10/11, Safari, and Chrome. - */ - -abbr[title] { - border-bottom: 1px dotted; -} - -/** - * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. - */ - -b, -strong { - font-weight: bold; -} - -/** - * Address styling not present in Safari and Chrome. - */ - -dfn { - font-style: italic; -} - -/** - * Address variable `h1` font-size and margin within `section` and `article` - * contexts in Firefox 4+, Safari, and Chrome. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -/** - * Address styling not present in IE 8/9. - */ - -mark { - background: #ff0; - color: #000; -} - -/** - * Address inconsistent and variable font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -/* Embedded content - ========================================================================== */ - -/** - * Remove border when inside `a` element in IE 8/9/10. - */ - -img { - border: 0; -} - -/** - * Correct overflow not hidden in IE 9/10/11. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* Grouping content - ========================================================================== */ - -/** - * Address margin not present in IE 8/9 and Safari. - */ - -figure { - margin: 1em 40px; -} - -/** - * Address differences between Firefox and other browsers. - */ - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -/** - * Contain overflow in all browsers. - */ - -pre { - overflow: auto; -} - -/** - * Address odd `em`-unit font size rendering in all browsers. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -/* Forms - ========================================================================== */ - -/** - * Known limitation: by default, Chrome and Safari on OS X allow very limited - * styling of `select`, unless a `border` property is set. - */ - -/** - * 1. Correct color not being inherited. - * Known issue: affects color of disabled elements. - * 2. Correct font properties not being inherited. - * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. - */ - -button, -input, -optgroup, -select, -textarea { - color: inherit; /* 1 */ - font: inherit; /* 2 */ - margin: 0; /* 3 */ -} - -/** - * Address `overflow` set to `hidden` in IE 8/9/10/11. - */ - -button { - overflow: visible; -} - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. - * Correct `select` style inheritance in Firefox. - */ - -button, -select { - text-transform: none; -} - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - */ - -button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ -} - -/** - * Re-set default cursor for disabled elements. - */ - -button[disabled], -html input[disabled] { - cursor: default; -} - -/** - * Remove inner padding and border in Firefox 4+. - */ - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -/** - * Address Firefox 4+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ - -input { - line-height: normal; -} - -/** - * It's recommended that you don't attempt to style these elements. - * Firefox's implementation doesn't respect box-sizing, padding, or width. - * - * 1. Address box sizing set to `content-box` in IE 8/9/10. - * 2. Remove excess padding in IE 8/9/10. - */ - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Fix the cursor style for Chrome's increment/decrement buttons. For certain - * `font-size` values of the `input`, it causes the cursor style of the - * decrement button to change from `default` to `text`. - */ - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -/** - * 1. Address `appearance` set to `searchfield` in Safari and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari and Chrome - * (include `-moz` to future-proof). - */ - -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} - -/** - * Remove inner padding and search cancel button in Safari and Chrome on OS X. - * Safari (but not Chrome) clips the cancel button when the search input has - * padding (and `textfield` appearance). - */ - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Define consistent border, margin, and padding. - */ - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -/** - * 1. Correct `color` not being inherited in IE 8/9/10/11. - * 2. Remove padding so people aren't caught out if they zero out fieldsets. - */ - -legend { - border: 0; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Remove default vertical scrollbar in IE 8/9/10/11. - */ - -textarea { - overflow: auto; -} - -/** - * Don't inherit the `font-weight` (applied by a rule above). - * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. - */ - -optgroup { - font-weight: bold; -} - -/* Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} - -td, -th { - padding: 0; -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/normalize.min.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/normalize.min.css deleted file mode 100644 index f6e0b65..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/normalize.min.css +++ /dev/null @@ -1 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/wildfly.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/wildfly.css deleted file mode 100644 index c360191..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/wildfly.css +++ /dev/null @@ -1,79 +0,0 @@ -/* - ~ Copyright The WildFly Authors - ~ SPDX-License-Identifier: Apache-2.0 -*/ - -html { - color: #222; - font-family: "Open Sans", Geneva, Verdana, Arial, sans-serif; - font-size: 1em; - line-height: 1.4; -} - -::-moz-selection { - background: #b3d4fc; - text-shadow: none; -} - -::selection { - background: #b3d4fc; - text-shadow: none; -} - -body { - background: url(bkg.gif) repeat-x; - color: #5B5B5B; - margin-top: 100px; - text-align: center; -} - -h1 { - padding-top: 20px; - color: #7b1e1e; -} - -a { - text-decoration: none; - color: #5e8a9a; -} - -a:hover { - text-decoration: underline; - color: #8ec6d9; -} - -img { - border: 0; -} - -code { - background-color: rgba(27, 31, 35, 0.05); - border-radius: 3px; - font-family: Consolas, Menlo, Courier, monospace; - font-size: 90%; - padding: 0.2em; -} - -.wrapper { - margin-left: auto; - margin-right: auto; - width: 50em; - text-align: left; -} - -.content { - margin: 0; - padding: 0; -} - -.logo { - margin-bottom: 10px; -} - -footer { - position:fixed; - bottom:0; - left:0; - width:100%; - height: 90px; -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/wildfly_logo.png b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/wildfly_logo.png deleted file mode 100644 index 51e55c3..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server-old/src/main/webapp/wildfly_logo.png and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/Dockerfile b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/Dockerfile deleted file mode 100644 index e0f9660..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/Dockerfile +++ /dev/null @@ -1,4 +0,0 @@ -ARG runtime_image=quay.io/wildfly/wildfly-runtime:latest -FROM ${runtime_image} -COPY --chown=jboss:root target/server $JBOSS_HOME -RUN chmod -R ug+rwX $JBOSS_HOME \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/README.adoc b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/README.adoc deleted file mode 100644 index bec3dc4..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/README.adoc +++ /dev/null @@ -1,38 +0,0 @@ - -= simple-microservice-server1-secured - -== Build the application - -[source,bash] ----- -mvn clean package ----- - -== Build the Docker Image - -[source,bash,subs="normal"] ----- -podman build -t my-jaxrs-app-server1-secured:latest . -podman tag my-jaxrs-app-server1-secured quay.io/tborgato/my-jaxrs-app-server1-secured -podman push quay.io/tborgato/my-jaxrs-app-server1-secured ----- - -== Run on Kubernetes - -[source,bash,subs="normal"] ----- -kubectl apply -f kubernetes/my-jaxrs-app-server1-secured-deployment.yaml -kubectl apply -f kubernetes/my-jaxrs-app-server1-secured-service.yaml ----- - -== Run the Docker Image - -[source,bash,subs="normal"] ----- -podman run --rm -p 8080:8080 -p 9990:9990 \ - --network=demo-network \ - --env "OIDC_PROVIDER_URL=http://keycloak-internal:8080" \ - --env "OIDC_CLIENT_ID=my-jaxrs-app-server1-secured" \ - --name=my-jaxrs-app-server1-secured \ - my-jaxrs-app-server1-secured ----- \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/kubernetes/my-jaxrs-app-server1-secured-deployment.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/kubernetes/my-jaxrs-app-server1-secured-deployment.yaml deleted file mode 100644 index fae1e3d..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/kubernetes/my-jaxrs-app-server1-secured-deployment.yaml +++ /dev/null @@ -1,39 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: my-jaxrs-app-server1-secured-deployment - labels: - app: my-jaxrs-app-server1-secured -spec: - replicas: 1 - selector: - matchLabels: - app: my-jaxrs-app-server1-secured - template: - metadata: - labels: - app: my-jaxrs-app-server1-secured - spec: - containers: - - name: my-jaxrs-app-server1-secured - image: quay.io/tborgato/my-jaxrs-app-server1-secured - ports: - - containerPort: 8080 - - containerPort: 9990 - livenessProbe: - httpGet: - path: /health/live - port: 9990 - readinessProbe: - httpGet: - path: /health/ready - port: 9990 - startupProbe: - httpGet: - path: /health/started - port: 9990 - env: - - name: OIDC_PROVIDER_URL - value: "http://keycloak-internal:8080" - - name: OIDC_CLIENT_ID - value: "pBVLIeIBlB1cyhZVbfctl7DsKZpdhqRL" diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/kubernetes/my-jaxrs-app-server1-secured-service.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/kubernetes/my-jaxrs-app-server1-secured-service.yaml deleted file mode 100644 index 64a0f04..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/kubernetes/my-jaxrs-app-server1-secured-service.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: my-jaxrs-app-server1-secured-service - labels: - app: my-jaxrs-app-server1-secured -spec: - ports: - - name: http - protocol: TCP - port: 8080 - targetPort: 8080 - selector: - app: my-jaxrs-app-server1-secured - type: ClusterIP diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/pom.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/pom.xml deleted file mode 100644 index 5d37bea..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/pom.xml +++ /dev/null @@ -1,216 +0,0 @@ - - - - 4.0.0 - org.wildfly.examples - simple-microservice-server1-secured - 1.0.0-SNAPSHOT - - war - simple-microservice-server1-secured - Insert description for your project here. - - - - - UTF-8 - - - 5.0.0.Final - 33.0.2.Final - - - 5.10.1 - - - 3.13.0 - 3.0.0 - 3.2.5 - 3.4.0 - - - 11 - - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - default - - true - never - - - false - never - - - - - never - - - never - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - default - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - - true - never - - - false - never - - - - - - - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - - - - - - - - org.wildfly.bom - wildfly-ee-with-tools - ${version.wildfly.bom} - pom - import - - - - - org.junit - junit-bom - 5.10.1 - pom - import - - - - - - - - - jakarta.enterprise - jakarta.enterprise.cdi-api - provided - - - - - jakarta.ws.rs - jakarta.ws.rs-api - provided - - - - - - ROOT - - - - - org.apache.maven.plugins - maven-compiler-plugin - ${version.compiler.plugin} - - - - - - org.apache.maven.plugins - maven-war-plugin - ${version.war.plugin} - - - false - - - - - - org.wildfly.plugins - wildfly-maven-plugin - ${version.wildfly.maven.plugin} - - - - org.wildfly:wildfly-galleon-pack:${version.wildfly.bom} - - - org.wildfly.cloud:wildfly-cloud-galleon-pack:7.0.2.Final - - - - - cloud-server - microprofile-config - elytron-oidc-client - - - - - - package - - - - - - - org.apache.maven.plugins - maven-failsafe-plugin - ${version.failsafe.plugin} - - - **/*IT - - - - - - integration-test - verify - - - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/java/org/wildfly/examples/GettingStartedApplication.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/java/org/wildfly/examples/GettingStartedApplication.java deleted file mode 100644 index 1557ac8..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/java/org/wildfly/examples/GettingStartedApplication.java +++ /dev/null @@ -1,13 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.ws.rs.ApplicationPath; -import jakarta.ws.rs.core.Application; - -@ApplicationPath("/hello") -public class GettingStartedApplication extends Application { - -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java deleted file mode 100644 index 0a97dca..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.inject.Inject; -import jakarta.ws.rs.GET; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.PathParam; -import jakarta.ws.rs.Produces; -import jakarta.ws.rs.core.MediaType; -import jakarta.ws.rs.core.Response; - -@Path("/") -public class GettingStartedEndpoint { - - @Inject - private GettingStartedService service; - - @GET - @Path("/{name}") - @Produces(MediaType.TEXT_PLAIN) - public Response sayHello(final @PathParam("name") String name) { - String response = service.hello(name); - - return Response.ok(response).build(); - } -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/java/org/wildfly/examples/GettingStartedService.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/java/org/wildfly/examples/GettingStartedService.java deleted file mode 100644 index fea7420..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/java/org/wildfly/examples/GettingStartedService.java +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.enterprise.context.ApplicationScoped; - -@ApplicationScoped -public class GettingStartedService { - - public String hello(String name) { - return String.format("Hello '%s'.", name); - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/WEB-INF/beans.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/WEB-INF/beans.xml deleted file mode 100644 index 86e3de8..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/WEB-INF/beans.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/WEB-INF/oidc.json b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/WEB-INF/oidc.json deleted file mode 100644 index 5f633db..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/WEB-INF/oidc.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "client-id" : "${env.OIDC_CLIENT_ID:my-jaxrs-app-server1-secured}", - "provider-url" : "${env.OIDC_PROVIDER_URL:http://192.168.39.143:30999}/realms/myrealm", - "ssl-required" : "EXTERNAL", - "bearer-only" : "true" -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/WEB-INF/web.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/WEB-INF/web.xml deleted file mode 100644 index 9dd9159..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/WEB-INF/web.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - all - /* - - - user - - - - - OIDC - - - - user - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/bkg.gif b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/bkg.gif deleted file mode 100644 index 523877c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/bkg.gif and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/favicon.ico b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/favicon.ico deleted file mode 100644 index f19166c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/favicon.ico and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/index.html b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/index.html deleted file mode 100644 index f0e421b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/index.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - Welcome to WildFly Application Server - - - - - - - - -
-
- -

Getting Started

-
-
- - - -
-

-

-
-
-
- - - diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/normalize.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/normalize.css deleted file mode 100644 index 458eea1..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/normalize.css +++ /dev/null @@ -1,427 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ - -/** - * 1. Set default font family to sans-serif. - * 2. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - */ - -html { - font-family: sans-serif; /* 1 */ - -ms-text-size-adjust: 100%; /* 2 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} - -/** - * Remove default margin. - */ - -body { - margin: 0; -} - -/* HTML5 display definitions - ========================================================================== */ - -/** - * Correct `block` display not defined for any HTML5 element in IE 8/9. - * Correct `block` display not defined for `details` or `summary` in IE 10/11 - * and Firefox. - * Correct `block` display not defined for `main` in IE 11. - */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} - -/** - * 1. Correct `inline-block` display not defined in IE 8/9. - * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. - */ - -audio, -canvas, -progress, -video { - display: inline-block; /* 1 */ - vertical-align: baseline; /* 2 */ -} - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Address `[hidden]` styling not present in IE 8/9/10. - * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. - */ - -[hidden], -template { - display: none; -} - -/* Links - ========================================================================== */ - -/** - * Remove the gray background color from active links in IE 10. - */ - -a { - background-color: transparent; -} - -/** - * Improve readability when focused and also mouse hovered in all browsers. - */ - -a:active, -a:hover { - outline: 0; -} - -/* Text-level semantics - ========================================================================== */ - -/** - * Address styling not present in IE 8/9/10/11, Safari, and Chrome. - */ - -abbr[title] { - border-bottom: 1px dotted; -} - -/** - * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. - */ - -b, -strong { - font-weight: bold; -} - -/** - * Address styling not present in Safari and Chrome. - */ - -dfn { - font-style: italic; -} - -/** - * Address variable `h1` font-size and margin within `section` and `article` - * contexts in Firefox 4+, Safari, and Chrome. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -/** - * Address styling not present in IE 8/9. - */ - -mark { - background: #ff0; - color: #000; -} - -/** - * Address inconsistent and variable font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -/* Embedded content - ========================================================================== */ - -/** - * Remove border when inside `a` element in IE 8/9/10. - */ - -img { - border: 0; -} - -/** - * Correct overflow not hidden in IE 9/10/11. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* Grouping content - ========================================================================== */ - -/** - * Address margin not present in IE 8/9 and Safari. - */ - -figure { - margin: 1em 40px; -} - -/** - * Address differences between Firefox and other browsers. - */ - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -/** - * Contain overflow in all browsers. - */ - -pre { - overflow: auto; -} - -/** - * Address odd `em`-unit font size rendering in all browsers. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -/* Forms - ========================================================================== */ - -/** - * Known limitation: by default, Chrome and Safari on OS X allow very limited - * styling of `select`, unless a `border` property is set. - */ - -/** - * 1. Correct color not being inherited. - * Known issue: affects color of disabled elements. - * 2. Correct font properties not being inherited. - * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. - */ - -button, -input, -optgroup, -select, -textarea { - color: inherit; /* 1 */ - font: inherit; /* 2 */ - margin: 0; /* 3 */ -} - -/** - * Address `overflow` set to `hidden` in IE 8/9/10/11. - */ - -button { - overflow: visible; -} - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. - * Correct `select` style inheritance in Firefox. - */ - -button, -select { - text-transform: none; -} - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - */ - -button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ -} - -/** - * Re-set default cursor for disabled elements. - */ - -button[disabled], -html input[disabled] { - cursor: default; -} - -/** - * Remove inner padding and border in Firefox 4+. - */ - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -/** - * Address Firefox 4+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ - -input { - line-height: normal; -} - -/** - * It's recommended that you don't attempt to style these elements. - * Firefox's implementation doesn't respect box-sizing, padding, or width. - * - * 1. Address box sizing set to `content-box` in IE 8/9/10. - * 2. Remove excess padding in IE 8/9/10. - */ - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Fix the cursor style for Chrome's increment/decrement buttons. For certain - * `font-size` values of the `input`, it causes the cursor style of the - * decrement button to change from `default` to `text`. - */ - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -/** - * 1. Address `appearance` set to `searchfield` in Safari and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari and Chrome - * (include `-moz` to future-proof). - */ - -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} - -/** - * Remove inner padding and search cancel button in Safari and Chrome on OS X. - * Safari (but not Chrome) clips the cancel button when the search input has - * padding (and `textfield` appearance). - */ - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Define consistent border, margin, and padding. - */ - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -/** - * 1. Correct `color` not being inherited in IE 8/9/10/11. - * 2. Remove padding so people aren't caught out if they zero out fieldsets. - */ - -legend { - border: 0; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Remove default vertical scrollbar in IE 8/9/10/11. - */ - -textarea { - overflow: auto; -} - -/** - * Don't inherit the `font-weight` (applied by a rule above). - * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. - */ - -optgroup { - font-weight: bold; -} - -/* Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} - -td, -th { - padding: 0; -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/normalize.min.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/normalize.min.css deleted file mode 100644 index f6e0b65..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/normalize.min.css +++ /dev/null @@ -1 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/wildfly.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/wildfly.css deleted file mode 100644 index c360191..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/wildfly.css +++ /dev/null @@ -1,79 +0,0 @@ -/* - ~ Copyright The WildFly Authors - ~ SPDX-License-Identifier: Apache-2.0 -*/ - -html { - color: #222; - font-family: "Open Sans", Geneva, Verdana, Arial, sans-serif; - font-size: 1em; - line-height: 1.4; -} - -::-moz-selection { - background: #b3d4fc; - text-shadow: none; -} - -::selection { - background: #b3d4fc; - text-shadow: none; -} - -body { - background: url(bkg.gif) repeat-x; - color: #5B5B5B; - margin-top: 100px; - text-align: center; -} - -h1 { - padding-top: 20px; - color: #7b1e1e; -} - -a { - text-decoration: none; - color: #5e8a9a; -} - -a:hover { - text-decoration: underline; - color: #8ec6d9; -} - -img { - border: 0; -} - -code { - background-color: rgba(27, 31, 35, 0.05); - border-radius: 3px; - font-family: Consolas, Menlo, Courier, monospace; - font-size: 90%; - padding: 0.2em; -} - -.wrapper { - margin-left: auto; - margin-right: auto; - width: 50em; - text-align: left; -} - -.content { - margin: 0; - padding: 0; -} - -.logo { - margin-bottom: 10px; -} - -footer { - position:fixed; - bottom:0; - left:0; - width:100%; - height: 90px; -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/wildfly_logo.png b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/wildfly_logo.png deleted file mode 100644 index 51e55c3..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server1-secured/src/main/webapp/wildfly_logo.png and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/Dockerfile b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/Dockerfile deleted file mode 100644 index e0f9660..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/Dockerfile +++ /dev/null @@ -1,4 +0,0 @@ -ARG runtime_image=quay.io/wildfly/wildfly-runtime:latest -FROM ${runtime_image} -COPY --chown=jboss:root target/server $JBOSS_HOME -RUN chmod -R ug+rwX $JBOSS_HOME \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/README.adoc b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/README.adoc deleted file mode 100644 index 63e0ee3..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/README.adoc +++ /dev/null @@ -1,38 +0,0 @@ - -= simple-microservice-server2-secured - -== Build the application - -[source,bash] ----- -mvn clean package ----- - -== Build the Docker Image - -[source,bash,subs="normal"] ----- -podman build -t my-jaxrs-app-server2-secured:latest . -podman tag my-jaxrs-app-server2-secured quay.io/tborgato/my-jaxrs-app-server2-secured -podman push quay.io/tborgato/my-jaxrs-app-server2-secured ----- - -== Run on Kubernetes - -[source,bash,subs="normal"] ----- -kubectl apply -f kubernetes/my-jaxrs-app-server2-secured-deployment.yaml -kubectl apply -f kubernetes/my-jaxrs-app-server2-secured-service.yaml ----- - -== Run the Docker Image - -[source,bash,subs="normal"] ----- -podman run --rm -p 8080:8080 -p 9990:9990 \ - --network=demo-network \ - --env "OIDC_PROVIDER_URL=http://keycloak-internal:8080" \ - --env "OIDC_CLIENT_ID=my-jaxrs-app-server2-secured" \ - --name=my-jaxrs-app-server2-secured \ - my-jaxrs-app-server2-secured ----- \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/kubernetes/my-jaxrs-app-server2-secured-deployment.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/kubernetes/my-jaxrs-app-server2-secured-deployment.yaml deleted file mode 100644 index 0ee5bc6..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/kubernetes/my-jaxrs-app-server2-secured-deployment.yaml +++ /dev/null @@ -1,39 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: my-jaxrs-app-server2-secured-deployment - labels: - app: my-jaxrs-app-server2-secured -spec: - replicas: 1 - selector: - matchLabels: - app: my-jaxrs-app-server2-secured - template: - metadata: - labels: - app: my-jaxrs-app-server2-secured - spec: - containers: - - name: my-jaxrs-app-server2-secured - image: quay.io/tborgato/my-jaxrs-app-server2-secured - ports: - - containerPort: 8080 - - containerPort: 9990 - livenessProbe: - httpGet: - path: /health/live - port: 9990 - readinessProbe: - httpGet: - path: /health/ready - port: 9990 - startupProbe: - httpGet: - path: /health/started - port: 9990 - env: - - name: MP_JWT_VERIFY_ISSUER - value: "http://192.168.39.143:30999/realms/myrealm" - - name: MP_JWT_VERIFY_PUBLICKEY.LOCATION - value: "http://keycloak-internal:8080/realms/myrealm/protocol/openid-connect/certs" diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/kubernetes/my-jaxrs-app-server2-secured-service.yaml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/kubernetes/my-jaxrs-app-server2-secured-service.yaml deleted file mode 100644 index 3549ea4..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/kubernetes/my-jaxrs-app-server2-secured-service.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: my-jaxrs-app-server2-secured-service - labels: - app: my-jaxrs-app-server2-secured -spec: - ports: - - name: http - protocol: TCP - port: 8080 - targetPort: 8080 - selector: - app: my-jaxrs-app-server2-secured - type: ClusterIP diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/pom.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/pom.xml deleted file mode 100644 index 24a92bb..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/pom.xml +++ /dev/null @@ -1,235 +0,0 @@ - - - - 4.0.0 - org.wildfly.examples - simple-microservice-server2-secured - 1.0.0-SNAPSHOT - - war - simple-microservice-server2-secured - Insert description for your project here. - - - - - UTF-8 - - - 5.0.0.Final - 33.0.2.Final - - - 5.10.1 - - - 3.13.0 - 3.0.0 - 3.2.5 - 3.4.0 - - - 11 - - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - default - - true - never - - - false - never - - - - - never - - - never - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - default - - - - - central - Main Apache Maven Repository - https://repo.maven.apache.org/maven2/ - - true - never - - - false - never - - - - - - - - jboss-public-repository-group - JBoss Public Repository Group - https://repository.jboss.org/nexus/content/groups/public/ - - - - - - - - org.wildfly.bom - wildfly-ee-with-tools - ${version.wildfly.bom} - pom - import - - - - org.wildfly.bom - wildfly-microprofile - ${version.wildfly.bom} - pom - import - - - - - org.junit - junit-bom - 5.10.1 - pom - import - - - - - - - - - jakarta.enterprise - jakarta.enterprise.cdi-api - provided - - - - - jakarta.ws.rs - jakarta.ws.rs-api - provided - - - - org.eclipse.microprofile.config - microprofile-config-api - provided - - - org.eclipse.microprofile.jwt - microprofile-jwt-auth-api - provided - - - - - - ROOT - - - - - org.apache.maven.plugins - maven-compiler-plugin - ${version.compiler.plugin} - - - - - - org.apache.maven.plugins - maven-war-plugin - ${version.war.plugin} - - - false - - - - - - org.wildfly.plugins - wildfly-maven-plugin - ${version.wildfly.maven.plugin} - - - - org.wildfly:wildfly-galleon-pack:${version.wildfly.bom} - - - org.wildfly.cloud:wildfly-cloud-galleon-pack:7.0.2.Final - - - - - cloud-server - microprofile-config - microprofile-jwt - - - - - - package - - - - - - - org.apache.maven.plugins - maven-failsafe-plugin - ${version.failsafe.plugin} - - - **/*IT - - - - - - integration-test - verify - - - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/java/org/wildfly/examples/GettingStartedApplication.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/java/org/wildfly/examples/GettingStartedApplication.java deleted file mode 100644 index e682f27..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/java/org/wildfly/examples/GettingStartedApplication.java +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.ws.rs.ApplicationPath; -import jakarta.ws.rs.core.Application; -import org.eclipse.microprofile.auth.LoginConfig; - -@LoginConfig(authMethod="MP-JWT", realmName="myrealm") -@ApplicationPath("/hello") -public class GettingStartedApplication extends Application { - -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java deleted file mode 100644 index 2a7b9aa..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/java/org/wildfly/examples/GettingStartedEndpoint.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.annotation.security.RolesAllowed; -import jakarta.inject.Inject; -import jakarta.ws.rs.GET; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.PathParam; -import jakarta.ws.rs.Produces; -import jakarta.ws.rs.core.MediaType; -import jakarta.ws.rs.core.Response; -import org.eclipse.microprofile.config.inject.ConfigProperty; -import org.eclipse.microprofile.jwt.JsonWebToken; - -@Path("/") -public class GettingStartedEndpoint { - - @Inject - @ConfigProperty(name="mp.jwt.verify.issuer") - private String issuer; - - @Inject - @ConfigProperty(name="mp.jwt.verify.publickey.location") - private String publickeyLocation; - - @Inject - JsonWebToken jwt; - - @Inject - private GettingStartedService service; - - @GET - @Path("/{name}") - @Produces(MediaType.TEXT_PLAIN) - @RolesAllowed({"user"}) - public Response sayHello(final @PathParam("name") String name) { - System.out.println("mp.jwt.verify.issuer=" + issuer); - System.out.println("mp.jwt.verify.publickey.location=" + publickeyLocation); - - String response = - service.hello(name) - + " Subject:" + (jwt!=null? jwt.getSubject():null) - + " Issuer: " + jwt.getIssuer(); - - return Response.ok(response).build(); - } -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/java/org/wildfly/examples/GettingStartedService.java b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/java/org/wildfly/examples/GettingStartedService.java deleted file mode 100644 index fea7420..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/java/org/wildfly/examples/GettingStartedService.java +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Copyright The WildFly Authors - * SPDX-License-Identifier: Apache-2.0 - */ -package org.wildfly.examples; - -import jakarta.enterprise.context.ApplicationScoped; - -@ApplicationScoped -public class GettingStartedService { - - public String hello(String name) { - return String.format("Hello '%s'.", name); - } -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/resources/META-INF/microprofile-config.properties b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/resources/META-INF/microprofile-config.properties deleted file mode 100644 index edd4a20..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/resources/META-INF/microprofile-config.properties +++ /dev/null @@ -1,5 +0,0 @@ -#mp.jwt.verify.publickey.location=META-INF/public.pem -#mp.jwt.verify.issuer=quickstart-jwt-issuer -# this is the URL where Keycloak is exposed outside Kubernetes !!! -mp.jwt.verify.issuer=http://192.168.39.143:30999/realms/myrealm -mp.jwt.verify.publickey.location=http://keycloak-internal:8080/realms/myrealm/protocol/openid-connect/certs \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/WEB-INF/beans.xml b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/WEB-INF/beans.xml deleted file mode 100644 index 86e3de8..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/WEB-INF/beans.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/bkg.gif b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/bkg.gif deleted file mode 100644 index 523877c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/bkg.gif and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/favicon.ico b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/favicon.ico deleted file mode 100644 index f19166c..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/favicon.ico and /dev/null differ diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/index.html b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/index.html deleted file mode 100644 index f0e421b..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/index.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - Welcome to WildFly Application Server - - - - - - - - -
-
- -

Getting Started

-
-
- - - -
-

-

-
-
-
- - - diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/normalize.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/normalize.css deleted file mode 100644 index 458eea1..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/normalize.css +++ /dev/null @@ -1,427 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ - -/** - * 1. Set default font family to sans-serif. - * 2. Prevent iOS text size adjust after orientation change, without disabling - * user zoom. - */ - -html { - font-family: sans-serif; /* 1 */ - -ms-text-size-adjust: 100%; /* 2 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} - -/** - * Remove default margin. - */ - -body { - margin: 0; -} - -/* HTML5 display definitions - ========================================================================== */ - -/** - * Correct `block` display not defined for any HTML5 element in IE 8/9. - * Correct `block` display not defined for `details` or `summary` in IE 10/11 - * and Firefox. - * Correct `block` display not defined for `main` in IE 11. - */ - -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} - -/** - * 1. Correct `inline-block` display not defined in IE 8/9. - * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. - */ - -audio, -canvas, -progress, -video { - display: inline-block; /* 1 */ - vertical-align: baseline; /* 2 */ -} - -/** - * Prevent modern browsers from displaying `audio` without controls. - * Remove excess height in iOS 5 devices. - */ - -audio:not([controls]) { - display: none; - height: 0; -} - -/** - * Address `[hidden]` styling not present in IE 8/9/10. - * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. - */ - -[hidden], -template { - display: none; -} - -/* Links - ========================================================================== */ - -/** - * Remove the gray background color from active links in IE 10. - */ - -a { - background-color: transparent; -} - -/** - * Improve readability when focused and also mouse hovered in all browsers. - */ - -a:active, -a:hover { - outline: 0; -} - -/* Text-level semantics - ========================================================================== */ - -/** - * Address styling not present in IE 8/9/10/11, Safari, and Chrome. - */ - -abbr[title] { - border-bottom: 1px dotted; -} - -/** - * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. - */ - -b, -strong { - font-weight: bold; -} - -/** - * Address styling not present in Safari and Chrome. - */ - -dfn { - font-style: italic; -} - -/** - * Address variable `h1` font-size and margin within `section` and `article` - * contexts in Firefox 4+, Safari, and Chrome. - */ - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -/** - * Address styling not present in IE 8/9. - */ - -mark { - background: #ff0; - color: #000; -} - -/** - * Address inconsistent and variable font size in all browsers. - */ - -small { - font-size: 80%; -} - -/** - * Prevent `sub` and `sup` affecting `line-height` in all browsers. - */ - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sup { - top: -0.5em; -} - -sub { - bottom: -0.25em; -} - -/* Embedded content - ========================================================================== */ - -/** - * Remove border when inside `a` element in IE 8/9/10. - */ - -img { - border: 0; -} - -/** - * Correct overflow not hidden in IE 9/10/11. - */ - -svg:not(:root) { - overflow: hidden; -} - -/* Grouping content - ========================================================================== */ - -/** - * Address margin not present in IE 8/9 and Safari. - */ - -figure { - margin: 1em 40px; -} - -/** - * Address differences between Firefox and other browsers. - */ - -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} - -/** - * Contain overflow in all browsers. - */ - -pre { - overflow: auto; -} - -/** - * Address odd `em`-unit font size rendering in all browsers. - */ - -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -/* Forms - ========================================================================== */ - -/** - * Known limitation: by default, Chrome and Safari on OS X allow very limited - * styling of `select`, unless a `border` property is set. - */ - -/** - * 1. Correct color not being inherited. - * Known issue: affects color of disabled elements. - * 2. Correct font properties not being inherited. - * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. - */ - -button, -input, -optgroup, -select, -textarea { - color: inherit; /* 1 */ - font: inherit; /* 2 */ - margin: 0; /* 3 */ -} - -/** - * Address `overflow` set to `hidden` in IE 8/9/10/11. - */ - -button { - overflow: visible; -} - -/** - * Address inconsistent `text-transform` inheritance for `button` and `select`. - * All other form control elements do not inherit `text-transform` values. - * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. - * Correct `select` style inheritance in Firefox. - */ - -button, -select { - text-transform: none; -} - -/** - * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` - * and `video` controls. - * 2. Correct inability to style clickable `input` types in iOS. - * 3. Improve usability and consistency of cursor style between image-type - * `input` and others. - */ - -button, -html input[type="button"], /* 1 */ -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ -} - -/** - * Re-set default cursor for disabled elements. - */ - -button[disabled], -html input[disabled] { - cursor: default; -} - -/** - * Remove inner padding and border in Firefox 4+. - */ - -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} - -/** - * Address Firefox 4+ setting `line-height` on `input` using `!important` in - * the UA stylesheet. - */ - -input { - line-height: normal; -} - -/** - * It's recommended that you don't attempt to style these elements. - * Firefox's implementation doesn't respect box-sizing, padding, or width. - * - * 1. Address box sizing set to `content-box` in IE 8/9/10. - * 2. Remove excess padding in IE 8/9/10. - */ - -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Fix the cursor style for Chrome's increment/decrement buttons. For certain - * `font-size` values of the `input`, it causes the cursor style of the - * decrement button to change from `default` to `text`. - */ - -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} - -/** - * 1. Address `appearance` set to `searchfield` in Safari and Chrome. - * 2. Address `box-sizing` set to `border-box` in Safari and Chrome - * (include `-moz` to future-proof). - */ - -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} - -/** - * Remove inner padding and search cancel button in Safari and Chrome on OS X. - * Safari (but not Chrome) clips the cancel button when the search input has - * padding (and `textfield` appearance). - */ - -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} - -/** - * Define consistent border, margin, and padding. - */ - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -/** - * 1. Correct `color` not being inherited in IE 8/9/10/11. - * 2. Remove padding so people aren't caught out if they zero out fieldsets. - */ - -legend { - border: 0; /* 1 */ - padding: 0; /* 2 */ -} - -/** - * Remove default vertical scrollbar in IE 8/9/10/11. - */ - -textarea { - overflow: auto; -} - -/** - * Don't inherit the `font-weight` (applied by a rule above). - * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. - */ - -optgroup { - font-weight: bold; -} - -/* Tables - ========================================================================== */ - -/** - * Remove most spacing between table cells. - */ - -table { - border-collapse: collapse; - border-spacing: 0; -} - -td, -th { - padding: 0; -} diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/normalize.min.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/normalize.min.css deleted file mode 100644 index f6e0b65..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/normalize.min.css +++ /dev/null @@ -1 +0,0 @@ -/*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/wildfly.css b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/wildfly.css deleted file mode 100644 index c360191..0000000 --- a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/wildfly.css +++ /dev/null @@ -1,79 +0,0 @@ -/* - ~ Copyright The WildFly Authors - ~ SPDX-License-Identifier: Apache-2.0 -*/ - -html { - color: #222; - font-family: "Open Sans", Geneva, Verdana, Arial, sans-serif; - font-size: 1em; - line-height: 1.4; -} - -::-moz-selection { - background: #b3d4fc; - text-shadow: none; -} - -::selection { - background: #b3d4fc; - text-shadow: none; -} - -body { - background: url(bkg.gif) repeat-x; - color: #5B5B5B; - margin-top: 100px; - text-align: center; -} - -h1 { - padding-top: 20px; - color: #7b1e1e; -} - -a { - text-decoration: none; - color: #5e8a9a; -} - -a:hover { - text-decoration: underline; - color: #8ec6d9; -} - -img { - border: 0; -} - -code { - background-color: rgba(27, 31, 35, 0.05); - border-radius: 3px; - font-family: Consolas, Menlo, Courier, monospace; - font-size: 90%; - padding: 0.2em; -} - -.wrapper { - margin-left: auto; - margin-right: auto; - width: 50em; - text-align: left; -} - -.content { - margin: 0; - padding: 0; -} - -.logo { - margin-bottom: 10px; -} - -footer { - position:fixed; - bottom:0; - left:0; - width:100%; - height: 90px; -} \ No newline at end of file diff --git a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/wildfly_logo.png b/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/wildfly_logo.png deleted file mode 100644 index 51e55c3..0000000 Binary files a/get-started-microservices-on-kubernetes/simple-microservice-rest-client/TO_DELETE/simple-microservice-server2-secured/src/main/webapp/wildfly_logo.png and /dev/null differ