HeaderBasedAuthenticationTag

If you put your OnPrem Turnkey installation under a generic catch all authentication umbrella (like Shibboleth) you may want to make use of that externally provided identity in your turnkey application.

The normal scenario is that the authentication umbrella that makes sure your user is identified before ever reaching your application - adds a header to each call you get.

To make use of such a header you can now configure your installation like this:

In TurnkeySettings.xml you add this:

<HeaderBasedAuthenticationTag>The Header you want to catch</HeaderBasedAuthenticationTag>

The value of that header will then be used as the User-identity (email) for SysUser in your model.

If the value is only a reference and the user info must be looked up elsewhere you can do so by creating a serverside job that does something like this:

Act on all : SysUser.allinstances->select(not ReferenceIsResolved)

For each : Resolve the reference (maybe by calling external web-service with RESTGet) and set ReferenceIsResolved:=true

(ReferenceIsResolved is a new property you must add to SysUser in your model)

After log out / log off

You can add this tag to the TurnkeySettings.xml file to influence what url to go to after log out:

<AfterLogOutUrl>https://www.google.se/</AfterLogOutUrl>

If this setting is found it should show up early after application start in the logfile like this:

2018-10-18 22:58:24,045 [8] INFO StreamingAppGenericAPIAndControllers.LogUsageTurnkey - OptionalAfterLogOutUrl set to https://www.google.se/<br/>

(This scenario is used by Finansinspektionen - BankId - Shibboleth)

Special handling of click on the logged in user in header

When you need the click on the user name shown in the header to take you elsewhere than Account/Manage - you make it go to named ViewModel instead

<CurrentUserViewModel>CurrentUserInfo</CurrentUserViewModel>

If this setting is found it should show up early after app start in the log file like this:

2018-10-18 23:02:20,551 [6] INFO StreamingAppGenericAPIAndControllers.LogUsageTurnkey - ManageUserUrl set to https://localhost:44300/Turnkey/AngularApp#/CurrentUserInfo/$null$<br/>
This page was edited 84 days ago on 02/10/2024. What links here