providers/oauth2: Add provider federation between OAuth2 Providers (#12083)
* rename + add field Signed-off-by: Jens Langhammer <jens@goauthentik.io> * initial implementation Signed-off-by: Jens Langhammer <jens@goauthentik.io> * fix Signed-off-by: Jens Langhammer <jens@goauthentik.io> * fix Signed-off-by: Jens Langhammer <jens@goauthentik.io> * refactor Signed-off-by: Jens Langhammer <jens@goauthentik.io> * rework source cc tests Signed-off-by: Jens Langhammer <jens@goauthentik.io> * add tests Signed-off-by: Jens Langhammer <jens@goauthentik.io> * update docs Signed-off-by: Jens Langhammer <jens@goauthentik.io> * re-migrate Signed-off-by: Jens Langhammer <jens@goauthentik.io> * fix a Signed-off-by: Jens Langhammer <jens@goauthentik.io> * Apply suggestions from code review Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com> Signed-off-by: Jens L. <jens@beryju.org> --------- Signed-off-by: Jens Langhammer <jens@goauthentik.io> Signed-off-by: Jens L. <jens@beryju.org> Co-authored-by: Tana M Berry <tanamarieberry@yahoo.com>
This commit is contained in:
		| @ -1,6 +1,10 @@ | ||||
| import "@goauthentik/admin/common/ak-crypto-certificate-search"; | ||||
| import "@goauthentik/admin/common/ak-flow-search/ak-flow-search"; | ||||
| import { BaseProviderForm } from "@goauthentik/admin/providers/BaseProviderForm"; | ||||
| import { | ||||
|     oauth2ProviderSelector, | ||||
|     oauth2ProvidersProvider, | ||||
| } from "@goauthentik/admin/providers/oauth2/OAuth2ProviderForm"; | ||||
| import { | ||||
|     oauth2SourcesProvider, | ||||
|     oauth2SourcesSelector, | ||||
| @ -385,11 +389,11 @@ ${this.instance?.skipPathRegex}</textarea | ||||
|                     ${this.showHttpBasic ? this.renderHttpBasic() : html``} | ||||
|                     <ak-form-element-horizontal | ||||
|                         label=${msg("Trusted OIDC Sources")} | ||||
|                         name="jwksSources" | ||||
|                         name="jwtFederationSources" | ||||
|                     > | ||||
|                         <ak-dual-select-dynamic-selected | ||||
|                             .provider=${oauth2SourcesProvider} | ||||
|                             .selector=${oauth2SourcesSelector(this.instance?.jwksSources)} | ||||
|                             .selector=${oauth2SourcesSelector(this.instance?.jwtFederationSources)} | ||||
|                             available-label=${msg("Available Sources")} | ||||
|                             selected-label=${msg("Selected Sources")} | ||||
|                         ></ak-dual-select-dynamic-selected> | ||||
| @ -399,6 +403,24 @@ ${this.instance?.skipPathRegex}</textarea | ||||
|                             )} | ||||
|                         </p> | ||||
|                     </ak-form-element-horizontal> | ||||
|                     <ak-form-element-horizontal | ||||
|                         label=${msg("Federated OIDC Providers")} | ||||
|                         name="jwtFederationProviders" | ||||
|                     > | ||||
|                         <ak-dual-select-dynamic-selected | ||||
|                             .provider=${oauth2ProvidersProvider} | ||||
|                             .selector=${oauth2ProviderSelector( | ||||
|                                 this.instance?.jwtFederationProviders, | ||||
|                             )} | ||||
|                             available-label=${msg("Available Providers")} | ||||
|                             selected-label=${msg("Selected Providers")} | ||||
|                         ></ak-dual-select-dynamic-selected> | ||||
|                         <p class="pf-c-form__helper-text"> | ||||
|                             ${msg( | ||||
|                                 "JWTs signed by the selected providers can be used to authenticate to this provider.", | ||||
|                             )} | ||||
|                         </p> | ||||
|                     </ak-form-element-horizontal> | ||||
|                 </div> | ||||
|             </ak-form-group> | ||||
|  | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Jens L.
					Jens L.