added more precise matching of user lookup

This commit is contained in:
dcore94 2021-02-17 16:24:57 +01:00
parent 6ec65c46b5
commit 6d67dfbdd4
1 changed files with 12 additions and 2 deletions

View File

@ -47,11 +47,21 @@
}
}
},
{
"name": "LAMBDA_TASK",
"taskReferenceName": "select_user",
"inputParameters": {
"foundusers" : "${lookup_user.output.body}",
"username" : "${workflow.input.user}",
"scriptExpression": "for(var i=0; i < $.foundusers.length;i++){if($.foundusers[i]['username'] == $.username) return Java.to([$.foundusers[i]], 'java.lang.Object[]')}"
},
"type": "LAMBDA",
},
{
"name": "check_user_existance",
"taskReferenceName": "check_user_existance",
"inputParameters": {
"user": "${lookup_user.output.body[0]}"
"user": "${select_user.output.body[0]}"
},
"type": "DECISION",
"caseExpression": "($.user == null ? 'true' : 'false')",
@ -121,7 +131,7 @@
"taskReferenceName" : "assign_role_to_user",
"type" : "SIMPLE",
"inputParameters" : {
"url" : "${init.input.keycloak_admin}/users/${lookup_user.output.body[0].id}/role-mappings/clients/${lookup_client.output.body[0].id}",
"url" : "${init.input.keycloak_admin}/users/${select_user.return[0].id}/role-mappings/clients/${lookup_client.output.body[0].id}",
"expect" : [204, 404],
"method" : "POST",
"body" : "${select_role.output.result}",