Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

By default Keycloak is installed and configured so that it can be used by Encore and the Studio server using the OIDC protocol. See Studio Security Modes for information on how to use OIDC.

Keycloak admin credentials

During the installation of Blueriq using the installer, a Keycloak user named admin is created for which a password has been specified during the installation as well.

Note

The admin user for Keycloak is a different user from the admin user for Encore and the Studio server. The Keycloak admin user is defined in the Master realm and used to manage the Keycloak server, while the Encore (and Studio server) admin user is defined in a Studio-specific realm and used to manage the Studio.

The default admin credentials for Keycloak can be found in the file [Installation_Folder]\tools\keycloak\bin\kc-service.xml

It is recommended to change the admin password after installation via the Keycloak admin console. To change the admin password, take the following steps:

From the Blueriq start page, select User Management

Image RemovedImage Added

Log in to the Keycloak Admin console using the credentials found in [Installation_Folder]\tools\keycloak\bin\kc-service.xmlthe user named admin and the password as created during the installation.

Note

Accessing Keycloak is not possible in Internet Explorer

In the top right corner, select Manage account

Image RemovedImage Added


Select "Signing in" from the Account Security card.

Image RemovedImage Added


Select Update from the Basic Authentication section, and choose a new password.

Image RemovedImage Added


Click "Back to Security Admin Console" from the top left to go back to the Admin console, you may need to sign in again with the new password.

...

The default configuration is created when installing Blueriq. This configuration is contained within a Keycloak realm which is used by Encore and the Studio server. This section contains an overview of what the default configuration includes.

...

The secret for the studio-server client must also be provided to the Studio backend in [Installation_Folder]\Studio\Services\StudioService.exe.config in the oidc and oidccustom elements element. This is normally done during installation, but when generating a new secret in Keycloak this must be updated manually.

...

A group and role studio-admin are created by default during the Studio installation. The group studio-admin has the role studio-admin assigned to it, this role is mapped to the default Administrator role in the Studio server.

Users

The following users are created by default, all of them are members of the studio-admin  group, and therefore have admin access to the studioStudio server.

  • admin: the admin user of the Studio
  • administrationpage: used by the administration page
  • Encore
  • runtime: used by the runtime development dashboard to retrieve projects.

Restoring the default configuration

...

When restoring the default configuration, the script will also update StudioService.exe.config to set the correct authority url for the newly created realm and the new client secret for the studio-server client.

Managing Users & Groups & Roles

When managing users, groups and roles, make sure that you have selected the Studio from the Realm selection menu:

Image Removed

Groups & Roles

Note

Keycloak groups and roles only have effect in the Studio if you are using the oidc security mode and there is a RoleMapping which maps the Keycloak role to a Studio role

Adding, editing and removing groups and roles in Keycloak is relatively straightforward, from the navigation panel select either Roles or Groups, and the main view will list all roles or groups. From this view you can add, edit or delete roles or groups.

Users can be added to multiple groups, and they can be assigned multiple roles.

Roles can also be assigned to groups, effectively assigning those roles to all members of the group.

Ultimately it is the roles a user has in Keycloak (either directly or via groups it is a member of) that will determine which roles (and permissions) the user has in the Studio.

Which Studio role a user has based on the given Keycloak roles is determined in the Studio configuration via the role mappings. See Studio Security Modes for how to configure role mappings.

The Studio role in turn will determine which permissions a user has in the Studio. See User access and management for more information on Studio roles and permissions.

Users

Adding, editing and removing users is relatively straightforward in Keycloak. From the navigation panel select Users, the main view will not list all by default, you can choose "View all users" to load all users, or search for a user from the search bar.

Adding a new user can be done with the Add user button in the top right. Only thing to keep in mind when adding a user, is that we currently only support authentication with a password, new users must be set up so that they can sign in with a password. To do this, first create a user: only the username is required, and optionally you can assign the user to one or more groups.

Then edit the user, select Credentials and enter a password:

Image Removed

If the temporary toggle is on, then the user must first update their password before they can sign into the Studio.

Users can always update their password (temporary or not) in the Account console for the Studio realm at http://<domain:port>/Keycloak/realms/<realm>/account, or http://localhost:150/Keycloak/realms/BlueriqStudio15/account in a typical installation.

...

User Federation: NTLM/LDAP

Note

You may need to consult your administrator in order to fill in the following fields.

It is possible to link Keycloak to an Active Directory using User Federation. This will allow users to sign in using their AD credentials. To set this up:

  1. Select User Federation from the navigation panel. From the Add provider drop-down, select ldap.

Image Removed

As Edit Mode, choose READ_ONLY

Image Removed

Note

You may need to consult your administrator in order to fill in the following fields.

  1. Image Added

  2. Select which vendor is used

...

  1. :

...

Image Removed

Select where in the LDAP tree Keycloak can find the Studio users that should be able to log in, for example CN=MyStudioUsers,DC=company,DC=com.

Image Removed

  1. Image Added


  2. Enter the connection url, including the ldap:// prefix. The following command line command may assist in determining the correct url: nslookup -type=all _ldap._tcp.

...

  1. Image Added


  1. Select which credentials Keycloak will use to query the AD, for example as CN=Keycloak,CN=Services,DC=company,DC=com.

...

  1. Image Added
  2. Test authentication to ensure the configuration works.
  3. As Edit Mode, choose READ_ONLY
    Image Added
  4. Select where in the LDAP tree Keycloak can find the Studio users that should be able to log in, for example CN=MyStudioUsers,DC=company,DC=com.Image Added
  5. Save your changes
  6. Sync all users in the top right corner:
    Image Added

User Federation: Kerberos

It is possible to link Keycloak to an Active Directory with the Kerberos protocol using User Federation. This will allow users to sign in using their AD credentials. To set this up:

  1. Select User Federation from the navigation panel

...

  1. and then select "Add Kerberos providers".
    Image Added
  2. Choose a UI display name

...

  1. Enter the Kerberos Realm

...

  1. Image Added
  2. Enter the principal for the server 

...

  1. Image Added
  2. Enter the location of the keytab file containing credentials of the given principal

...


...

  1. Image Added
  2. Set Allow Password Authentication to On:

...

  1. Image Added
  2. Set Edit Mode to READ_ONLY

...

  1. Image Added
  2. In order to test it, a AD user can try to sign in to the Account console for the Studio realm at http://<domain:port>/Keycloak/realms/<realm>/account