Skip to content

Modify OpenidConnect::AuthorizationController#link_identity_to_service_provider to match pattern in SamlIdpController#10646

Merged
jmhooper merged 1 commit intomainfrom
jmhooper-oidc-identity-linker
May 20, 2024
Merged

Modify OpenidConnect::AuthorizationController#link_identity_to_service_provider to match pattern in SamlIdpController#10646
jmhooper merged 1 commit intomainfrom
jmhooper-oidc-identity-linker

Conversation

@jmhooper
Copy link
Contributor

Both the OpenidConnect::AuthorizationController and SamlIdpController have logic that ultimately invokes the IdentityLinker to link a user to a service provider. This code consumes an ial value which is used to set values on the ServiceProviderIdentity record that are eventually used for analytics and reporting purposes.

In the SamlIdpController the ial value is computed using resolved_authn_contenxt_result. This means that it considers the SP defaults and the content of the SP request. Eventually this will also include the user context when multiple vectors of trust support is added.

Prior to this commit the OpenidConnect::AuthorizationController did not use the resolved_authn_contenxt_result and instead computed the value itself in its form object. Its computation ignored SP defaults and would ignore the user context when multiple vectors of trust support is added.

This commit modifies the OpenidConnect::AuthorizationController1 to match the pattern on SamlIdpController to avoid these issues.

@jmhooper jmhooper requested review from a team and Sgtpluck May 16, 2024 19:43
…ce_provider` to match pattern in `SamlIdpController`

Both the `OpenidConnect::AuthorizationController` and `SamlIdpController` have logic that ultimately invokes the `IdentityLinker` to link a user to a service provider. This code consumes an `ial` value which is used to set values on the `ServiceProviderIdentity` record that are eventually used for analytics and reporting purposes.

In the `SamlIdpController` the `ial` value is computed using `resolved_authn_contenxt_result`. This means that it considers the SP defaults and the content of the SP request. Eventually this will also include the user context when multiple vectors of trust support is added.

Prior to this commit the `OpenidConnect::AuthorizationController` did not use the `resolved_authn_contenxt_result` and instead computed the value itself in its form object. Its computation ignored SP defaults and would ignore the user context when multiple vectors of trust support is added.

This commit modifies the `OpenidConnect::AuthorizationController1` to match the pattern on `SamlIdpController` to avoid these issues.

[skip changelog]
@jmhooper jmhooper force-pushed the jmhooper-oidc-identity-linker branch from c6b6c67 to 812ae4e Compare May 20, 2024 16:35
@jmhooper jmhooper merged commit e1e3504 into main May 20, 2024
@jmhooper jmhooper deleted the jmhooper-oidc-identity-linker branch May 20, 2024 17:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants