Dynamic User Group Provisioning via SAML Assertion Parsing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer network systems face inefficiencies in managing user authentication and access control, particularly in environments with a large number of users, tenants, and roles, where static provisioning of user groups is required, leading to complex logic and reduced efficiency in single-sign on (SSO) processes.

Innovation Solution

A controller is configured to create, modify, and preprocess assertions, such as SAML assertions, to efficiently map user attributes to existing or dynamically provisioned user groups, using the Keystone identity service within the OpenStack platform, thereby streamlining the authentication process and eliminating the need for static user group provisioning.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If static provisioning of user groups is used, then user authentication can be performed, but the system complexity increases and efficiency decreases in environments with large numbers of users, tenants, and roles

Engineering Contradiction:
Improveauthentication efficiencyVSAvoiduser group management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic user group provisioning where user groups are created and modified based on real-time attributes from SAML assertions rather than static pre-defined groups. The system dynamically determines user group membership by evaluating attributes such as tenant, role, and department from authentication tokens, allowing the user group structure to adapt automatically to changing user attributes and access requirements.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameters of user group provisioning from fixed static definitions to dynamic attribute-based definitions. By using SAML assertion attributes (tenant ID, role, department, etc.) as parameters for user group determination, the system transforms the user group management model to be flexible and adaptive, reducing complexity in large-scale multi-tenant environments.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If static user group provisioning is required, then access control can be implemented, but the logic complexity increases for Keystone's first-match rules processing

Engineering Contradiction:
Improveaccess control reliabilityVSAvoidprocessing logic complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements self-service access control where the authentication system automatically determines user group membership based on SAML assertion attributes without requiring complex manual configuration or matching rules. The user groups self-organize based on user attributes, eliminating the need for intricate first-match rules processing and reducing logical complexity while maintaining reliable access control.

Inventive Principle:
Principle #25Self-service

3Productivity

If dynamic provisioning of user groups is implemented, then authentication efficiency improves, but additional processing steps are required

Engineering Contradiction:
Improveauthentication efficiencyVSAvoidprovisioning process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs preliminary extraction and evaluation of user attributes from SAML assertions during the authentication process itself, before user group membership needs to be determined. By pre-processing the attribute data and organizing it in a structured format, the system prepares the information needed for efficient dynamic user group provisioning, reducing the processing burden during subsequent access control operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11632364B1Dynamic provisioning of user groups within computer networks based on user attributes
Publication Date: 2023.04.18 JUNIPER NETWORKS INC
  • US11632364B1 patent drawing
  • US11632364B1 patent drawing
  • US11632364B1 patent drawing

AI summary

A controller may be used to create and process an assertion, in some cases, to implement single-sign on (SSO) in a computer network. In some examples, the controller includes processing circuitry coupled to a storage device. The processing circuitry is configured to create the assertion, where the assertion includes information indicative of a set of attributes and parse the assertion to determine the set of attributes. Additionally, the processing circuitry is configured to determine if each attribute of the set of attributes maps to a plurality of primary user groups stored in the storage device. Based on determining that an attribute of the set of attributes does not map to at least one primary user group of the plurality of primary user groups, the processing circuitry is configured to create a set of secondary user groups and a set of secondary user group names corresponding to the attribute.