ARCH-346: Consolidated permission approach evaluation

ARCH-346: Consolidated permission approach evaluation

Sunflower BF datasets

sebf - cs00000int

Entity Name

Number

Entity Name

Number

Users

2182

Roles

337

Scopes

8

Resources

1416

Policies

927

Permissions

161672

sebf - fs09000000

Entity Name

Number

Entity Name

Number

Users

983

Roles

527

Scopes

8

Resources

1443

Policies

1012

Permissions

288087

Performance Evaluation

Performance has been evaluated locally deployed single-node keycloak with load balancer ahead (nginx)

1 single realm with 100,000 of target permissions (role + scope + role policies)

Local Dataset Data (Single Tenant)

Entity Name

Number

Entity Name

Number

Users

500

Roles

255

Scopes

6

Resources

1588

Policies

252

Permissions

100001

Local Dataset Data (Multi Tenant)

Entity Name

Number

Entity Name

Number

Users

500

Roles

255

Scopes

6

Resources

1588

Policies

252

Permissions

100001

Plain Approach Evaluation (single tenant | 100,000 permissions)

This approach provides permissions in the following way: scope + resource + policy

image-20260430-143617.png

 

image-20260430-143600.png

 

Plain Approach Evaluation (3 tenants | 250,000 permissions | 750,000 total)

image-20260504-103901.png
image-20260504-103933.png

Consolidated Approach Evaluation (single tenant | 100,000 permissions)

This approach provides permissions in the following way: scope + resource + set(policies)

image-20260430-141712.png
image-20260430-141755.png

 

Consolidated Approach Evaluation (3 tenants | 250,000 permissions | 750,000 total)

image-20260504-132043.png
image-20260504-132059.png

 

Conclusions

  • Consolidated approach is faster for permission loading (750k is loaded in >2 minutes comparing with plain approach that takes ~10-15 mins)

  • Consolidated have compared permissions (but it has to be validated against multiple tenants and larger number of permissions in system)

  • Tenant management is faster (including realm removal) with consolidated approach, it will also affect realm import