Présentation de la passerelle d'application

La passerelle d'application est un boîtier applicatif qui vous permet d'intégrer des applications hébergées sur une instance de calcul, dans une infrastructure en nuage ou sur un serveur sur place avec IAM à des fins d'authentification.

La passerelle d'application agit en tant que mandataire inverse qui protège les applications Web en limitant l'accès non autorisé au réseau. La passerelle d'application permet d'intercepter toute demande HTTP adressée à ces applications et de s'assurer que les utilisateurs sont authentifiés auprès d'IAM avant de transmettre la demande à ces applications. La passerelle d'application propage l'identité de l'utilisateur authentifié dans les applications.

Si l'utilisateur n'est pas authentifié auprès du service GIA, la passerelle d'application redirige l'utilisateur vers la page de connexion aux fins de validation des données d'identification.

Note

Si vous utilisez Cloud Gate, il est important que le nom d'un utilisateur ne contienne que les caractères affichés dans Création d'un utilisateur, car le nom d'affichage est envoyé en tant qu'en-tête HTTP. Si des caractères ASCII non imprimables sont utilisés, Cloud Gate considère la demande non valide et retourne une erreur 400.

Utilisations pour la passerelle d'application

Utilisez la passerelle d'application pour :

  • Intégrer des applications d'entreprise hébergées sur place ou dans une infrastructure en nuage avec le service GIA aux fins d'authentification.

    Par exemple, si une application Web est hébergée sur place ou dans une infrastructure en nuage, vous pouvez l'intégrer à toutes les autres applications en nuage pour l'authentification unique. Utilisez la passerelle d'application pour intégrer une application Web à IAM, puis assurez-vous que les autres applications en nuage utilisent IAM comme mécanisme d'authentification. Toutes ces applications utilisent l'authentification unique fournie par le service IAM.

  • Exposer les applications Web intranet à l'accès Internet.

    Si l'application Web est hébergée et accessible sur un intranet et que vous voulez exposer l'accès à cette application sur Internet, utilisez la passerelle d'application pour mandatairener toute demande Internet et pour exiger que les utilisateurs s'authentifient auprès d'IAM avant d'accéder à l'application Web intranet. Dans ce cas, vous déployez la passerelle d'application dans le réseau DMZ alors que l'application reste dans la zone intranet.

  • Intégrer aux applications qui n'ont pas de mécanisme d'authentification natif et ne prennent pas en charge les méthodes d'intégration SAML, OAuth ou OpenID Connect.

    Si l'application ne prend pas en charge les normes d'authentification prises en charge par IAM (SAML, OAuth et OpenID Connect) et que vous ne pouvez pas utiliser les trousses SDK d'IAM dans l'application, vous pouvez utiliser la passerelle d'application pour intégrer l'application Web à IAM.

  • Intégrer à des applications prenant en charge l'authentification basée sur l'en-tête HTTP.

    Pour les applications Web qui prennent en charge l'authentification basée sur l'en-tête HTTP, la méthode d'intégration de la passerelle d'application ne nécessite aucune modification du code source de l'application Web. Vous devez configurer les politiques d'authentification de l'application dans le service GIA pour ajouter des variables d'en-tête dans la demande avant que la passerelle d'application transfère la demande à l'application. Ainsi, l'application peut identifier l'utilisateur authentifié auprès du service GIA.

Fonctionnement de la passerelle d'application

La passerelle d'application est déployée au sein de l'infrastructure d'un client, que l'infrastructure soit en nuage, sur place ou hybride. Elle fonctionne en tant que proxy inverse, en interceptant toutes les demandes du client dans l'application. La passerelle d'application vérifie ensuite si un utilisateur est déjà connecté à IAM. Si l'utilisateur est connecté, la passerelle d'application ajoute des variables d'en-tête à la demande afin que l'application protégée puisse accéder à la variable d'en-tête. L'application fait confiance à la passerelle d'application qui a identifié l'utilisateur connecté dans les valeurs de domaine d'identité et créé la session d'utilisateur.

Assurez-vous que la communication entre la passerelle d'application et l'application est sécurisée pour éviter les modifications des valeurs de variable d'en-tête avant l'envoi de la demande à l'application.

montre l'interaction de l'application, de la passerelle d'application, du domaine d'identité et du navigateur de l'utilisateur lors d'une tentative d'accès à une ressource d'application, mais que l'utilisateur n'est pas connecté à un domaine d'identité

Les étapes suivantes décrivent le flux d'authentification basé sur un formulaire entre le navigateur Web, la passerelle d'application et une application d'entreprise :

Étape Description
Légende 1 Dans un navigateur Web, un utilisateur demande l'accès à une application au moyen d'une URL exposée par la passerelle d'application.
Légende 2

La passerelle d'application intercepte la demande, vérifie que l'utilisateur n'a pas de session avec le service GIA, puis redirige le navigateur de l'utilisateur vers la page de connexion.

À l'étape 2, si l'utilisateur a une session avec le service GIA, cela signifie que l'utilisateur est déjà connecté. Si tel est le cas, un jeton d'accès est envoyé à la passerelle d'application, puis les étapes restantes sont ignorées.

Légende 3 Le service GIA présente la page de connexion ou le mécanisme de connexion configuré pour le domaine.
Légende 4 L'utilisateur se connecte au service GIA.
Légende 5 Une fois l'authentification réussie, le service GIA crée une session pour l'utilisateur et émet un jeton d'accès pour la passerelle d'application.
Légende 6 La passerelle d'application utilise le jeton pour identifier l'utilisateur. Elle ajoute ensuite des variables d'en-tête à la demande et transmet la demande à l'application.
Légende 7 L'application reçoit les informations d'en-tête, valide l'identité de l'utilisateur et démarre la session d'utilisateur.

La passerelle d'application intercepte toute demande ultérieure aux ressources protégées de l'application. La passerelle d'application identifie l'utilisateur, ajoute des variables d'en-tête à la demande et transmet la demande à l'application.

Pour se déconnecter, l'utilisateur appelle l'URL de déconnexion d'une application. La passerelle d'application identifie l'URL de déconnexion et redirige l'utilisateur vers le point d'extrémité de déconnexion OAuth du domaine d'identité (/oauth2/v1/userlogout). Une fois l'utilisateur déconnecté du service GIA, le service GIA peut rediriger le navigateur de l'utilisateur vers une URL de l'application qui peut ensuite supprimer la session d'utilisateur de l'application.

Fonctionnement de la déconnexion de la passerelle d'application

Les utilisateurs peuvent se déconnecter des applications protégées par la passerelle d'application en utilisant deux mécanismes différents : URL de déconnexion de la passerelle d'application ou appel d'une ressource protégée par une méthode d'authentification de déconnexion.

Utiliser une URL de déconnexion de la passerelle d'application

La passerelle d'application fournit une URL de déconnexion centrale qui peut être utilisée pour déconnecter l'utilisateur de l'authentification unique fournie par GIA. Tout appel à ce point d'extrémité déclenche le processus de déconnexion. Une fois l'utilisateur déconnecté, tout accès ultérieur à une ressource d'application protégée nécessite que l'utilisateur se reconnecte au service GIA.

Ce point d'extrémité prend en charge deux paramètres ajoutés à l'URL :
  • postlogouturl : URL d'une page de renvoi après déconnexion. Cette valeur doit être encodée par une URL. Si le paramètre n'est pas spécifié, la passerelle d'application redirige le navigateur d'utilisateur vers l'URL de déconnexion indiquée dans les Paramètres de session de la Console.
  • state : Paramètre facultatif utilisé par l'application d'entreprise, une fois le processus de déconnexion terminé.

Syntaxe

http(s)://<hôte_passerelleapp>:<port_passerelleapp>/cloudgate/logout.html?postlogouturl=<encodée_url>&state=<valeur_état>

Se déconnecter du point d'extrémité à l'aide de paramètres

Si l'URL de base de la passerelle d'application est https://myappgateway.example.com:4443, utilisez l'URL suivante pour déconnecter l'utilisateur de l'authentification unique : https://myappgateway.example.com:4443/cloudgate/logout.html?postlogouturl=http%3A%2F%2Fwww.oracle.com&state=123

Utiliser la méthode d'authentification de ressource protégée par déconnexion

Vous pouvez créer une ressource dans votre application d'entreprise et configurer une politique d'authentification pour cette ressource à l'aide de la méthode d'authentification Formulaires+Déconnexion. Lorsque l'utilisateur accède à cette ressource, la passerelle d'application appelle le processus de déconnexion et déconnecte l'utilisateur de l'authentification unique fournie par le service IAM.

Syntaxe

http(s)://<hôte_passerelleapplication>:<port_passerelleapplication>/<ressource_déconnexion>

Ressource protégée par la méthode d'authentification de déconnexion

Si vous avez créé la ressource /myapp/logout dans votre application d'entreprise et affecté Forms+Logout en tant que méthode d'authentification pour cette ressource dans la section Politique d'authentification, lorsque les utilisateurs accèdent à l'URL https://myappgateway.example.com:4443/myapp/logout, ils sont déconnectés de l'authentification unique fournie par IAM.