Okta
Le connecteur Okta permet à Maverics d’interagir avec une organisation Okta. Le connecteur utilise l’API Okta User pour créer des utilisateurs ou rechercher des attributs et OpenID Connect pour authentifier les utilisateurs et valider les sessions.
Options de configuration
Les valeurs suivantes peuvent être fournies au connecteur Okta via le fichier de configuration de Maverics.
Auth Type
authType
définit le protocole utilisé pour s’authentifier sur Okta. Le connecteur Okta
prend en charge à la fois les protocoles saml
et oidc
pour l’authentification des utilisateurs. Si elle n’est pas définie, la
valeur par défaut est oidc
.
OIDC Well-known URL
oidcWellKnownURL
définit l’emplacement où le client demande la configuration
auprès du fournisseur OpenID d’Okta.
OAuth Client ID
oauthClientID
définit l’identifiant du client utilisé pour identifier l’application Maverics sur Okta.
OAuth Client Secret
oauthClientSecret
définit le secret client utilisé pour authentifier l’application Maverics
sur Okta.
OAuth Redirect URL
oauthRedirectURL
définit l’URL vers laquelle Okta redirigera le client
après l’authentification. Le gestionnaire de rappel de Maverics sera servi sur cette URL.
oauthRedirectURL
ne doit pas entrer en conflit avec le chemin d’accès aux
ressources de l’application. Divers chemins d’accès peuvent être définis pour oauthRedirectURL2
, par
exemple : /oidc
ou /oidc-handler
.OIDC Logout Callback URL
oidcLogoutCallbackURL
définit l’URL vers laquelle Okta redirigera le client
après la déconnexion.
Disable PKCE
disablePKCE
est un champ facultatif utilisé pour désactiver l’extension OIDC Proof Key for Code
Exchange (PKCE) (activée par défaut).
OIDC Scopes
scopes
est un champ facultatif qui définit les champs d’application demandés dans le cadre du
flux d’authentification OIDC. Les champs d’application
doivent être délimités par un espace.
Si ces champs ne sont pas définis, les valeurs par défaut de l’email du profil openid
sont utilisées.
SAML Entity ID
samlEntityID
correspond à l’identifiant unique d’entité d’application attribué à l’application.
SAML Metadata URL
samlMetadataURL
correspond à l’URL des métadonnées de l’application configurée dans le fournisseur SAML.
Le paramètre samlMetadataURL
peut accepter un file:///
URI si le fichier de métadonnées est
enregistré sur un système de fichiers accessible à l’utilisateur de l’orchestrateur.
SAML Consumer Service URL
samlConsumerServiceURL
correspond à l’URL que le fournisseur SAML utilise pour POSTER la réponse SAML.
Le gestionnaire SAML ACS de Maverics sera servi sur cette URL, elle ne devrait donc pas
entrer en conflit avec les ressources de l’application.
Il existe plusieurs possibilités pour le chemin d’accès samlConsumerServiceURL
(par exemple, /maverics-saml
ou /saml-handler
),
mais celui-ci doit correspondre à la configuration du fournisseur pour l’identifiant samlEntityID
spécifié.
SAML Logout Callback URL
samlLogoutCallbackURL
est un champ facultatif utilisé pour définir l’URL vers laquelle le fournisseur SAML
renvoie une fois la déconnexion réussie. Ce champ permet
d’initialiser un terminal sur Maverics permettant le rappel de l’URL.
Le domaine de l’URL doit correspondre au domaine de Maverics.
Il existe plusieurs possibilités pour le chemin d’accès samlLogoutCallbackURL
(par exemple, /logout-maverics-saml
ou /logout-saml-handler
),
mais celui-ci doit correspondre à la configuration du fournisseur pour l’identifiant samlEntityID
spécifié.
SAML SP Cert Path
samlSPCertPath
est une configuration facultative du chemin d’accès au certificat qui
sera utilisé pour signer les requêtes d’authentification SAML. Elle doit être utilisée avec samlSPKeyPath
.
SAML SP Key path
samlSPKeyPath
est une configuration facultative du chemin d’accès à la clé privée qui sera
utilisée pour signer les requêtes d’authentification SAML. Elle doit être utilisée avec samlSPCertPath
.
IDP-Initiated Login
samlIDPInitiatedLogin
est un champ facultatif utilisé pour définir les paramètres de connexion initiée par le
fournisseur d’identité.
Enabled
enabled
détermine si le connecteur accepte les réponses SAML non sollicitées provenant du fournisseur d’identité configuré. La connexion initiée par le fournisseur d’identité est désactivée par défaut, car elle est par nature
moins sécurisée
que le flux alternatif initié par le fournisseur de services.
Allowed Redirect URLs
allowedRedirectURLs
constituent l’ensemble des URL vers lesquelles le connecteur peut rediriger les utilisateurs
après avoir traité une réponse SAML initiée par le fournisseur d’identité. Le fournisseur d’identité doit transmettre l’une des
URL listées par le biais d’un état de relais lorsqu’il initie une connexion. Pour plus d’informations sur la nécessité
d’un ensemble d’URL, veuillez consulter le guide de OWASP concernant
l’authentification unique initiée par le fournisseur d’identité (IdP Initiated SSO)
et l’importance d’atténuer l’attaque Open Redirect.
API Token
apiToken
correspond au jeton utilisé pour authentifier le client Maverics avec l’API Okta.
okta.users.manage
et okta.users.read
doivent être accordés à l’application enregistrée afin d’interagir avec l’API Okta.Domain
domain
correspond à l’URL de votre locataire Okta. Par exemple, https://yourtenant.okta.com.
Ce champ est obligatoire pour interagir avec l’API Okta.
Error Page
errorPage
correspond à la page présentée aux utilisateurs en cas d’erreur.
Cache
cache
est un champ facultatif qui définit les paramètres du cache pour le connecteur.
S’il n’est pas défini, le connecteur utilisera le cache intégré à la mémoire par défaut.
Health Check
healthCheck
définit une vérification d’état facultative du connecteur. Cette option est
requise lors de l’utilisation du connecteur en situation de maintien de la pérennité du fournisseur d’identité. Pour plus d’informations sur la façon
de définir la vérification d’état, veuillez consulter la documentation.
Exemples
Configuration du connecteur OIDC
connectors:
- name: oktaIDP
type: okta
authType: oidc
oidcWellKnownURL: https://yourtenant.okta.com/.well-known/openid-configuration
oauthClientID: <okta-client-id>
oauthClientSecret: <okta-client-secret>
oauthRedirectURL: https://example.com/oidc-handler
oidcLogoutCallbackURL: https://example.com/oidc/logout
disablePKCE: false
scopes: openid profile email okta.users.read
errorPage: https://example.com/error-401.html
Configuration du connecteur SAML
connectors:
- name: okta
type: okta
authType: saml
samlMetadataURL: https://yourtenant.okta.com/app/1234/sso/saml/metadata
samlConsumerServiceURL: https://example.com/saml/acs
samlLogoutCallbackURL: https://example.com/saml/logout
samlEntityID: https://example.com
samlSPCertPath: /etc/maverics/certs/example.com.crt.pem
samlSPKeyPath: /etc/maverics/certs/example.com.key.pem
samlIDPInitiatedLogin:
enabled: true
allowedRedirectURLs:
- https://example.com
cache: redis
Configuration du fournisseur d’attributs
connectors:
- name: oktaAttrProvider
type: okta
apiToken: <oktaAPIToken>
domain: https://yourtenant.okta.com