Remarque :
- Ce tutoriel nécessite un accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, reportez-vous à Introduction à Oracle Cloud Infrastructure Free Tier.
- Il utilise des exemples de valeur pour les informations d'identification Oracle Cloud Infrastructure, la location et les compartiments. A la fin de votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
Configuration et protection d'une adresse personnalisée Oracle Integration (processus) avec OCI WAF
Introduction
Oracle Integration est un environnement entièrement géré et préconfiguré qui vous permet d'intégrer vos applications cloud et sur site, d'automatiser vos processus métier, d'obtenir des informations sur vos processus métier, de développer des applications visuelles, d'utiliser un serveur de fichiers compatible SFTP pour stocker et extraire des fichiers, et d'échanger des documents commerciaux avec un partenaire commercial B2B.
Utilisez Oracle Cloud Infrastructure Web Application Firewall (OCI WAF) pour protéger les applications du trafic Internet malveillant et indésirable. WAF peut protéger toutes les adresses Internet, en assurant l'exécution cohérente des règles sur l'ensemble de l'application d'un client.
Objectif
Configurer et protéger une instance Oracle Integration avec une adresse personnalisée contre le trafic malveillant sur Internet à l'aide d'OCI Firewall.
Ce tutoriel suit les recommandations de l'architecture de référence Oracle Integration pour utiliser WAF et la liste d'autorisation, comme suggéré par la documentation.
Pour plus d'informations, reportez-vous à la section Provisionnement et administration d'Oracle Integration Generation 2.
Prérequis
- Accès à une location Oracle Cloud
- Configuration d'une instance Oracle Integration dans votre location
- Un VCN avec un sous-réseau public dans votre location
- Adresse personnalisée avec un CNAME vers un domaine DNS
- Un certificat SSL
- Stratégie OCI WAF visant à protéger l'adresse personnalisée d'instance Oracle Integration
Tâche 1 : création de l'instance Oracle Integration
-
Pour créer une instance Oracle Integration via la console Web, accédez au menu Services de développeur et cliquez sur Intégration.
-
Sur l'écran Instances d'intégration, sélectionnez le compartiment dans lequel l'instance sera créée, puis cliquez sur Créer une instance.
-
Un écran permettant de créer l'instance apparaît. Indiquez le nom de l'instance, sélectionnez la version d'Oracle Integration (Gen 2) et cliquez sur Créer.
Remarque : les autres éléments peuvent être configurés en fonction des besoins de votre environnement. Dans ce tutoriel, nous laissons les valeurs par défaut.
-
Une fois la création terminée, l'instance est disponible. Cliquez sur le nom de l'instance pour en visualiser les détails.
-
Pour valider le fonctionnement de votre instance Oracle Integration, après avoir accédé aux détails de votre instance, cliquez sur Console de service.
-
Un nouvel onglet de navigateur s'ouvre et vous avez accès à l'écran d'accueil d'Oracle Integration.
Tâche 2 : configurer le certificat OCI Vault, DNS et SSL
Une fois l'instance Oracle Integration créée, créez l'adresse personnalisée pour votre instance. L'adresse personnalisée vous permet d'accéder à l'interface Oracle Integration à l'aide d'un domaine privé, par exemple :
https://oic-lab.<exampledomain>.com/ic/home
Pour créer l'adresse personnalisée, procédez comme suit :
- Créer un VCN avec un sous-réseau public
- Créer une entrée CNAME dans le DNS personnalisé pointant vers l'adresse Oracle Integration
- Créez un certificat SSL pour le nouveau lien (par exemple,
oic.<exampledomain>.com
). - Créer un coffre OCI dans lequel le certificat sera stocké
- Effectuer une configuration d'adresse personnalisée sur votre instance Oracle Integration
Tâche 2.1 : création d'un VCN et d'un sous-réseau public dans votre compartiment
-
Pour créer un VCN, ouvrez le menu Services de votre console Web OCI et cliquez sur Réseaux cloud virtuels.
-
Une fois sur la page Networking, vérifiez que vous êtes dans le bon compartiment et cliquez sur Démarrer l'assistant VCN.
-
Créez votre VCN en fonction des exigences de l'environnement que vous créez. Oracle Integration requiert la création d'un sous-réseau public et la disponibilité des passerelles de service (Passerelle NAT).
-
Le VCN sera utilisé lors de la création de l'adresse personnalisée Oracle Integration.
Important : notez l'OCID de votre VCN car il sera utilisé pour la configuration WAF sur Oracle Integration.
-
Tâche 2.2 : création d'une entrée CNAME dans le DNS personnalisé pour l'adresse Oracle Integration
Vous devez maintenant accéder à l'environnement de configuration DNS de votre domaine pour créer une entrée CNAME qui pointera vers votre instance Oracle Integration. Lorsque nous configurons WAF, cette entrée CNAME sera modifiée, mais il est important de la créer pour le moment afin que nous puissions importer le certificat SSL qui sera utilisé pour le cryptage en transit de l'accès à Oracle Integration.
-
Revenez à la page du service Oracle Integration de votre console OCI.
-
Dans les détails de votre instance, notez le nom de domaine qualifié complet de domaine fourni par OCI pour accéder à la console de service de votre instance Oracle Integration.
- Dans notre exemple, nous allons utiliser le nom de domaine qualifié complet
oic-lab-instance-axyjvqi24eaa-gr.integration.ocp.oraclecloud.com
.
- Dans notre exemple, nous allons utiliser le nom de domaine qualifié complet
-
Créez un CNAME dans votre domaine pointant vers le nom de domaine qualifié complet de votre adresse personnalisée Oracle Integration.
Remarque : ce tutoriel ne décrit pas comment configurer un CNAME dans votre fichier de zone DNS.
-
Une fois que vous avez votre nom de domaine qualifié complet, configurez le nom de domaine complet de votre propre domaine. Après la configuration, vérifiez que le CNAME est correctement configuré à l'aide de la commande
dig
.$ dig <oic>.<exampledomain>.com
Tâche 2.3 : créer un certificat SSL pour le nouveau domaine
Une fois le CNAME créé, vous devez créer un certificat SSL afin d'activer le trafic Internet crypté pour votre instance. Dans ce tutoriel, nous allons créer un certificat SSL auto-signé. Toutefois, dans les environnements de production, le certificat doit être valide.
-
Pour créer le certificat autosigné, créons d'abord une clé privée.
$ openssl genrsa -out oic-lab.key 2048
- Vous obtenez ainsi la clé privée nommée
oic-lab.key
.
- Vous obtenez ainsi la clé privée nommée
-
Maintenant, créons la CSR (Demande de signature de certificat).
$ openssl req -key oic-lab.key -new -out oic-lab.csr
- Renseignez les informations demandées pour obtenir votre fichier .csr à la fin. Notez que le "Nom commun" doit être exactement le nom de domaine qualifié complet utilisé pour notre tutoriel.
-
Maintenant que nous disposons de la clé privée (oic-lab.key) et du csr (oic-lab.csr), créons le certificat SSL auto-signé. Pour ce faire, exécutez la commande ci-dessous.
$ openssl x509 -signkey oic-lab.key -in oic-lab.csr -req -days 365 -out oic-lab.crt
- Cette commande génère un certificat auto-signé valide pendant 365 jours.
Maintenant que nous disposons de notre certificat auto-signé, nous pouvons l'importer dans un coffre OCI pour une utilisation dans Oracle Integration.
Tâche 2.4 : Créer un coffre OCI et importer le certificat SSL
Maintenant que nous disposons déjà du certificat SSL auto-signé, nous devons créer un coffre OCI dans le compartiment dans lequel Oracle Integration est exécuté.
-
Pour créer OCI Vault, accédez au menu Services de la console Web OCI.
-
Une fois l'écran Vault chargé, vérifiez si vous êtes dans le bon compartiment et cliquez sur Créer un coffre.
-
Renseignez les informations pour créer votre coffre correctement, puis cliquez sur Créer un coffre.
-
Après avoir créé le coffre, créez la clé de cryptage maître.
-
Avant de créer la clé secrète du coffre qui contiendra votre certificat auto-signé, vous devez adapter le format du certificat à stocker dans le coffre. Cette adéquation correspond uniquement à la concaténation de votre certificat, de votre clé, de vos certificats intermédiaires (le cas échéant) et de votre phrase de passe de certificat (le cas échéant). Le format de fichier final sera au format JSON, comme indiqué dans le modèle ci-dessous :
``` { "key": "-----BEGIN PRIVATE KEY-----\n…..-----END PRIVATE KEY-----\n", "cert": "-----BEGIN CERTIFICATE-----\n….-----END CERTIFICATE-----\n", "intermediates": [ "-----BEGIN CERTIFICATE-----\n….-----END CERTIFICATE-----\n", "-----BEGIN CERTIFICATE-----\n….-----END CERTIFICATE-----\n" ], "passphrase": "<private key password if encrypted key is provided>" } ```
- Pour obtenir ce format avec notre ensemble de certificats et de clés, il faudra un certain traitement, car, comme vous pouvez le voir, il ne devrait y avoir aucun saut de ligne dans la clé, dans le certificat ou la phrase de passe.
-
-
Utilisez la commande ci-dessous pour ajuster votre clé.
`awk -v RS= '{gsub(/\n+/, "\\n")}1' <seu\_arquivo.key>`
-
Copiez cette valeur et insérez-la dans l'élément "key" de l'exemple JSON ci-dessus. Répétez le processus avec le fichier
crt
. -
Revenez à la console Web OCI et cliquez sur le menu Clés secrètes de votre coffre OCI, puis cliquez sur Créer une clé secrète.
-
Renseignez les champs correctement et dans le champ Contenu de clé secrète, insérez le fichier JSON créé dans les étapes ci-dessus.
- Remplissez les informations requises dans le formulaire de création de clé secrète, sélectionnez votre clé de cryptage maître et collez votre clé secrète JSON dans le champ Contenu de clé secrète. Une fois la clé secrète créée, créons l'adresse personnalisée Oracle Integration.
Tâche 2.5 : configuration d'une adresse personnalisée pour votre instance Oracle Integration
-
Pour configurer l'adresse personnalisée Oracle Integration, revenez à la page Intégration de la console Web OCI et accédez à votre instance.
-
Cliquez sur Modifier.
-
Sur la page de modification des paramètres Oracle Integration, cliquez sur Afficher les paramètres avancés pour afficher les éléments de configuration d'adresse personnalisée.
-
Pour poursuivre la configuration, entrez le nom de votre adresse personnalisée et sélectionnez la clé secrète qui contient votre certificat SSL stocké dans le coffre. Enfin, cliquez sur Enregistrer les modifications.
- Votre instance Oracle Integration passe au statut UPDATING. Attendez qu'il soit à nouveau actif.
-
Une fois que l'instance est revenue à l'état ACTIVE, cliquez sur Console de service pour tester l'accès à votre nouvelle adresse personnalisée.
- Si tout a été configuré correctement, la console de service s'ouvre à l'aide du nom de domaine qualifié complet que vous avez configuré dans votre DNS CNAME (étape 2 de la tâche 2.2).
-
Comme dans ce tutoriel, nous utilisons un certificat SSL autosigné, il est prévu que le navigateur émet une alerte indiquant que le certificat ne peut pas être vérifié. Cependant, le nom de domaine qualifié complet de votre adresse personnalisée est déjà utilisé.
-
Une fois l'accès effectué, la console Oracle Integration doit s'afficher, ce qui indique que votre adresse personnalisée fonctionne correctement.
Remarque : si vous utilisez un certificat SSL valide, le message d'avertissement du navigateur concernant la validité de votre certificat ne sera pas émis.
Tâche 3 : configuration de WAF et d'Oracle Integration AllowList
Maintenant que l'adresse personnalisée est opérationnelle, configurons la règle WAF et la liste d'autorisation Oracle Integration pour protéger l'accès des attaques de couche 7.
Avant de créer et de configurer OCI WAF pour protéger Oracle Integration contre les attaques externes, configurez d'abord la liste d'autorisation Oracle Integration afin de limiter les adresses IP source pouvant accéder à l'adresse personnalisée que nous venons de créer. L'idée est que seul le CIDR OCI WAF dispose de droits d'accès. Ainsi, nous pourrons limiter l'accès externe à l'instance Oracle Integration et, par conséquent, mettre en tunnel tout l'accès externe uniquement via WAF.
Pour créer correctement la liste d'autorisation, nous devons d'abord capturer le CIDR de service utilisé par WAF OCI dans la région dans laquelle nous configurons Oracle Integration.
Tâche 3.1 : recherche du CIDR de votre région OCI
-
Ce CIDR est disponible à l'adresse suivante : https://docs.oracle.com/en-us/iaas/tools/public_ip_ranges.json. Ce fichier JSON contient les CIDR de tous les services OCI disponibles sur Internet.
-
Pour rechercher le CIDR WAF, commencez par rechercher la chaîne qui identifie votre région dans le fichier JSON de l'URL ci-dessus. Lorsque nous utilisons la région de São Paulo, la chaîne de référence est sa-saopaulo-1.
-
Si vous utilisez une autre région, accédez à l'URL suivante pour identifier la chaîne qui identifie l'emplacement où vous déployez Oracle Integration : Régions et domaines de disponibilité
Tâche 3.2 : recherche du CIDR WAF de votre région
-
Maintenant que vous savez où se trouvent les plages publiques du service OCI et où trouver la chaîne de région que vous utilisez pour instancier vos ressources OCI, pour trouver le CIDR WAF, vous aurez besoin de la liste complète des plages d'adresses IP du service WAF à partir d'OCI.
-
L'URL contenant les CIDR publics pour le service WAF sur OCI est la suivante : Introduction aux stratégies en périphérie.
-
Passez à l'Step 6. Sécurisation de votre WAF et extension des plages CIDR.
-
Vous y trouverez toutes les adresses disponibles du service OCI WAF. Maintenant, pour les adresses IP de votre région que vous avez appelées dans la tâche 3.1 ci-dessus, recherchez la plage WAF correspondant à votre région en recherchant les entrées "OSN" (Oracle Services Network).
-
Pour ce tutoriel, qui utilise les adresses IP de la région de São Paulo.
Notez les adresses que vous trouvez afin que nous puissions maintenant inclure ces enregistrements dans la liste d'autorisation Oracle Integration.
Tâche 3.3 : configuration de AllowList dans Oracle Integration
-
Maintenant que nous disposons des adresses publiques WAF OCI, créons la liste d'autorisation dans Oracle Integration. Pour ce faire, revenez à l'écran de votre instance, cliquez sur le menu Accès réseau, puis sur Modifier.
-
Renseignez les informations avec les CIDR obtenus dans les étapes précédentes ainsi que l'OCID du VCN créé dans la tâche 2.2.1.
-
Une fois la liste d'autorisation configurée, seul le CIDR WAF peut accéder directement à la console. Tous les autres accès via Internet doivent passer par le WAF.
-
Pour le valider, essayez d'accéder à votre console de service Oracle Integration. Si tout est configuré correctement, vous obtiendrez un message 403 Forbidden dans votre navigateur.
Configurons WAF pour permettre la surveillance et la protection de cet accès.
Tâche 3.4 : configuration de la règle en périphérie OCI WAF
Au départ, nous aurons besoin, également dans WAF, de créer l'enregistrement du certificat SSL qui sera utilisé pour fournir un accès HTTPS sécurisé à la console Oracle Integration.
-
Dans le menu de la console Web OCI, cliquez sur Ressources de stratégie en périphérie.
-
Sur la page de service, cliquez sur Créer un certificat.
-
Une page de configuration du certificat numérique s'ouvre. Renseignez les informations demandées et téléchargez les fichiers .crt et .key créés à l'étape 2.2.3 ci-dessus.
Remarque : l'option Certificat auto-signé est sélectionnée car le certificat SSL que nous avons créé est auto-signé. Si vous allez utiliser un certificat valide, cette option doit être désélectionnée.
-
Une fois le certificat créé, revenez au menu Pare-feu d'applications Web pour créer une stratégie WAF qui protégera l'adresse Oracle Integration déjà configurée. Pour ce faire, dans le menu Stratégies, cliquez sur Créer une stratégie WAF.
-
Cliquez sur le lien d'une règle de "workflow hérité" à créer.
-
Un nouveau menu s'ouvre et vous devrez remplir correctement les informations demandées.
où :
- Nom : Indiquez le nom de votre police.
- Compartiment de la stratégie WAF : sélectionnez le compartiment dans lequel la stratégie sera créée.
- Domaine principal : nom de domaine qualifié complet de l'instance créée dans votre DNS.
- Nom de l'origine : nom qui identifie l'URL vers laquelle WAF envoie les accès utilisateur externes.
- URI : nom de domaine qualifié complet de votre instance Oracle Integration (identique à celui configuré dans le CNAME à l'étape 2.2.2 ci-dessus).
- Une fois les éléments remplis, cliquez sur Créer une stratégie Edge. Un nouvel écran apparaît avec les détails de votre stratégie. Attendez que le statut de la stratégie soit "ACTIVE".
Pour terminer, nous devons maintenant effectuer la configuration des règles de protection WAF et, en outre, reconfigurer le CNAME DNS sur un nom de domaine qualifié complet appartenant à l'infrastructure WAF.
Tâche 3.5 : configuration des règles de protection OCI WAF
-
Une fois la stratégie en périphérie créée, vous devez définir des paramètres pour protéger l'accès à l'instance Oracle Integration via WAF. Pour ce faire, dans votre stratégie WAF, cliquez sur le menu Paramètres, puis sur Modifier dans l'onglet Paramètres généraux.
-
Sélectionnez l'option Activer la prise en charge HTTPS et sélectionnez le certificat que vous avez créé à l'étape 3.3. Cliquez sur Enregistrer les modifications.
-
Après avoir configuré WAF pour qu'il utilise le certificat SSL, vous pouvez configurer la stratégie "Access Control" et les règles de protection. Ces règles fournissent la sécurité nécessaire pour protéger l'accès à la console Oracle Integration. WAF OCI comporte des règles prédéterminées qui peuvent être utilisées initialement dans sa configuration. Il est également possible de personnaliser les règles en fonction des besoins de votre entreprise. La personnalisation des règles WAF n'est pas dans le cadre de cette procédure.
-
Création du contrôle d'accès
-
Pour configurer le contrôle d'accès, cliquez sur le menu Contrôle d'accès, puis sur Ajouter une règle d'accès.
-
Dans l'écran de configuration du contrôle d'accès, remplissez correctement les éléments et cliquez sur Ajouter une règle d'accès. Pour ce tutoriel, nous allons créer une règle qui autorisera l'accès à la page de la console Oracle Integration uniquement à partir d'adresses IP provenant du Brésil.
-
-
Création de règles de protection
-
Pour effectuer la configuration, cliquez sur le menu Règles de protection, puis sur l'onglet Règles et activez les stratégies souhaitées. Cliquez sur le menu Service de chaque règle et placez-le dans Bloquer.
- Sélectionnez autant de règles que nécessaire. Dans ce tutoriel, nous activerons uniquement les règles de script intersite (XSS) à des fins de démonstration.
-
Une fois les règles de protection WAF activées, cliquez sur le menu Modifications non publiées, puis sur Tout publier.
-
-
L'application des règles WAF prend entre 10 et 15 minutes environ.
Tâche 3.6 : définition du nom CNAME sur le nom de domaine qualifié complet de WAF
Une fois les "règles de protection" de votre WAF configurées, vous pouvez modifier le CNAME de votre domaine privé afin que toutes les demandes qui lui sont adressées soient transmises à WAF et non plus à l'adresse personnalisée d'Oracle Integration.
-
Pour ce faire, accédez à votre page Stratégie WAF et copiez l'adresse CNAME que vous devez configurer dans votre DNS.
-
Copiez cette adresse et modifiez le DNS pointant dans votre zone. Après avoir modifié votre DNS, exécutez la commande ci-dessous pour vérifier que la configuration est correcte.
$ dig <oic>.<exampledomain>.com
Tâche 3.7 : Configurer le rôle d'application Oracle Integration
La dernière étape avant de tester l'accès à Oracle Integration via WAF consiste à modifier le rôle d'application d'Oracle Integration afin d'accorder l'accès aux utilisateurs correctement. Sans cela, les utilisateurs ne pourront pas accéder à la console Oracle Integration.
- Dans votre console Web OCI, cliquez sur Domaines et accédez à votre configuration de domaine d'identité.
Remarque : si vous n'avez pas configuré de domaine d'identité personnalisé, vous utiliserez le domaine appelé default. Dans ce tutoriel, nous utilisons le domaine par défaut.
-
Sur la page Domaines, cliquez sur default.
-
Une fois dans la page de domaine par défaut, cliquez sur le menu Oracle Cloud Services, puis sur le lien de votre instance ICO :
-
Sur la page de configuration de votre instance, cliquez sur le menu Rôles d'application pour afficher les rôles existants dans l'application Oracle Integration. Dans chacun des rôles, il est possible d'affecter des utilisateurs ou des groupes d'utilisateurs, ce qui permet une gestion détaillée des profils d'accès à l'environnement Oracle Integration.
Tâche 4 : Test et validation
Une fois que vous avez terminé l'application de votre stratégie WAF et configuré le CNAME de votre domaine de sorte qu'il pointe vers le nom de domaine qualifié complet de WAF, vous pouvez enfin tester le bon fonctionnement de tout.
-
Accédez à l'URL de votre adresse via le nom de domaine qualifié complet de votre domaine. La page de la console Oracle Integration doit s'afficher.
-
Pour valider le filtrage effectué par WAF, accédez à la page de configuration de stratégie et cliquez sur le menu Journaux.
-
Pour valider le fonctionnement de WAF, nous pouvons tester une simple attaque XSS via une URL dans le navigateur.
https://<oic>.<exampledomain>.com/ic/home/?default=<script>alert(document.cookie)</script>
-
Enfin, accédez au journal WAF et consultez l'enregistrement de blocage des accès non autorisés motivés par l'attaque XSS.
Vous disposez à présent d'un environnement Oracle Integration disponible sur Internet et protégé par OCI WAF.
Liens connexes
Avant d'utiliser cette documentation, nous vous recommandons de lire les liens de référence et la documentation officielle pour l'administration des environnements cloud Oracle.
Remerciements
Auteur - Rodrigo Pace de Barros (ingénieur solutions de sécurité Oracle LAD A-Team Cloud)
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à davantage de contenu de formation gratuit sur le canal Oracle Learning YouTube. En outre, accédez à education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour consulter la documentation produit, consultez Oracle Help Center.
Configure and protect an Oracle Integration (Process) custom endpoint with OCI WAF
F80991-01
May 2023
Copyright © 2023, Oracle and/or its affiliates.