Filtering applications in MyApps

Overview

Filtering out applications based on who is logging in can be done by manually change the configuration through the advanced view.  

Prerequisites

Myapps configured through guide and running on version 3.0.

The incoming assertion MUST contain the value "roles" as attribute. 

Example below

Patching the installation

Patch the installation with the attached zip file. 

Instructions are enclosed in the zip.

Create a valve for filtering

In the advanced view, add a valve under Pipe valves.

{
	"name": "ItemRemoveValve",
	"id": "appsfiltering",
	"enabled": "true",
	"config": {
		"item_include_expr": "item.containsProperty('requires_role') && item.getPropertyValue('requires_role') !== '' && !session.isUserInRole(item.getPropertyValue('requires_role'))"
	}
}

Update the Pipe providing list of applications

Locate the pipe with the alias myappsLookUpPipe. Insert the new valve reference in the valve_refs list, 5 from the end.

Example:

{
	"valve_refs": "ec07d7ca-bb2e-4420-883a-d9b148d6c1fe,6f1c5c0d-479f-49b6-9274-348da7047fbc,552ac3d4-0ae7-40b9-a4fd-f16db92e9a1c,9693ab6f-f1c4-4454-a038-707ffe82ef43,appsfiltering,1f1dcc29-cee4-4c5a-a5f4-8a38629579df,ac32d0aa-c326-47c9-a556-fab1988e6836,02f8aab9-3a34-4316-9791-b42062aa801d,232d4a2f-5f66-4a9f-8a76-dcc307065acf"
}

Configure filtering

Locate the app valve you wish to apply filtering to.

In the config section add a requires_role attribute. Set value to a corresponding "roles" value in the incoming assertion. 

Example:

{
	"id": "1",
	"title": "PhenixID Home",
	"information": "PhenixID on the web",
	"URL": "https://www.phenixid.se/",
	"requires_role": "anders"
}