action dracoon_update_open_id_idp_config { label: "Update OpenID Connect IDP configuration" description: "### Description: \nUpdate an existing OpenID Connect IDP configuration.\n\n### Precondition:\nRight 🔓 change global config and\nrole 👤 Config Manager of the Provider Customer required.\n\n### Postcondition:\nOpenID Connect IDP configuration is updated.\n\n### Further Information:\nNone." provider: dracoon method: PUT path: "/v4/system/config/auth/openid/idps/{idp_id}" encoding: json input: { type: "object" properties: { "X-Sds-Auth-Token": { type: "string" } authorizationEndPointUrl: { type: "string" description: "URL of the authorization endpoint" } clientId: { type: "string" description: "ID of the OpenID client" } clientSecret: { type: "string" description: "Secret, which client uses at authentication." } fallbackMappingClaim: { type: "string" description: "Name of the claim which is used for the user mapping fallback." } flow: { type: "string" description: "🚀 Since v4.11.0\n\nFlow, which is used at authentication" enum: ["authorization_code", "hybrid"] } idp_id: { type: "integer" format: "int32" } issuer: { type: "string" description: "Issuer identifier of the IDP\n\nThe value is a case sensitive URL." } jwksEndPointUrl: { type: "string" description: "URL of the JWKS endpoint" } mappingClaim: { type: "string" description: "Name of the claim which is used for the user mapping." } name: { type: "string" description: "Name of the IDP" } pkceChallengeMethod: { type: "string" description: "PKCE code challenge method.\n\ncf. [RFC 7636](https://tools.ietf.org/html/rfc7636)" } pkceEnabled: { type: "boolean" description: "Determines whether PKCE is enabled.\n\ncf. [RFC 7636](https://tools.ietf.org/html/rfc7636)" } redirectUris: { type: "array" description: "URIs, to which a user is redirected after authorization." items: { type: "string" description: "URIs, to which a user is redirected after authorization." } } resetFallbackMappingClaim: { type: "boolean" description: "Set `true` to reset `fallbackMappingClaim`." } scopes: { type: "array" description: "List of requested scopes\n\nUsually `openid` and the names of the requested claims." items: { type: "string" description: "List of requested scopes\n\nUsually `openid` and the names of the requested claims." } } tokenEndPointUrl: { type: "string" description: "URL of the token endpoint" } userImportEnabled: { type: "boolean" description: "Determines if a DRACOON account is automatically created for a new user\n\nwho successfully logs on with his / her AD / IDP account." } userImportGroup: { type: "integer" format: "int64" description: "User group that is assigned to users who are created by automatic import.\n\nReset with `0`" } userInfoEndPointUrl: { type: "string" description: "URL of the user info endpoint" } userInfoSource: { type: "string" description: "🚀 Since v4.23.0\n\nSource, which is used to get user information at the import or update of a user." enum: ["user_info_endpoint", "id_token"] } userManagementUrl: { type: "string" description: "URL of the user management UI.\n\nUse empty string to remove." } userUpdateEnabled: { type: "boolean" description: "Determines if the DRACOON account is updated with data from AD / IDP.\n\nFor OpenID Connect, the scopes `email` and `profile` are needed." } } required: ["idp_id"] additionalProperties: false } output: { type: "object" description: "OpenID Connect IDP configuration" required: ["id"] properties: { authorizationEndPointUrl: { type: "string" description: "URL of the authorization endpoint" } clientId: { type: "string" description: "ID of the OpenID client" } clientSecret: { type: "string" description: "Secret, which client uses at authentication." } fallbackMappingClaim: { type: "string" description: "Name of the claim which is used for the user mapping fallback." } flow: { type: "string" description: "🚀 Since v4.11.0\n\nFlow, which is used at authentication" enum: ["authorization_code", "hybrid"] } id: { type: "integer" format: "int32" description: "ID" } issuer: { type: "string" description: "Issuer identifier of the IDP\n\nThe value is a case sensitive URL." } jwksEndPointUrl: { type: "string" description: "URL of the JWKS endpoint" } mappingClaim: { type: "string" description: "Name of the claim which is used for the user mapping." } name: { type: "string" description: "Name of the IDP" } pkceChallengeMethod: { type: "string" description: "PKCE code challenge method.\n\ncf. [RFC 7636](https://tools.ietf.org/html/rfc7636)" } pkceEnabled: { type: "boolean" description: "Determines whether PKCE is enabled.\n\ncf. [RFC 7636](https://tools.ietf.org/html/rfc7636)" } redirectUris: { type: "array" description: "URIs, to which a user is redirected after authorization." items: { type: "string" description: "URIs, to which a user is redirected after authorization." } } scopes: { type: "array" description: "List of requested scopes\n\nUsually `openid` and the names of the requested claims." items: { type: "string" description: "List of requested scopes\n\nUsually `openid` and the names of the requested claims." } } tokenEndPointUrl: { type: "string" description: "URL of the token endpoint" } userImportEnabled: { type: "boolean" description: "Determines if a DRACOON account is automatically created for a new user\n\nwho successfully logs on with his / her AD / IDP account." } userImportGroup: { type: "integer" format: "int64" description: "User group that is assigned to users who are created by automatic import.\n\nReset with `0`" } userInfoEndPointUrl: { type: "string" description: "URL of the user info endpoint" } userInfoSource: { type: "string" description: "🚀 Since v4.23.0\n\nSource, which is used to get user information at the import or update of a user." enum: ["user_info_endpoint", "id_token"] } userManagementUrl: { type: "string" description: "URL of the user management UI.\n\nUse empty string to remove." } userUpdateEnabled: { type: "boolean" description: "Determines if the DRACOON account is updated with data from AD / IDP.\n\nFor OpenID Connect, the scopes `email` and `profile` are needed." } } } }