AWS Public Sector Blog

How NLCHI provides hybrid access to their EHR system through AWS PrivateLink

Read this story in French.

The Newfoundland and Labrador Centre for Health Information (NLCHI) provides quality information to health professionals, the public, researchers, and health system decision makers. Through collaboration with the health system, NLCHI supports the development of data and technical standards, maintains key health databases, carries out analytics and evaluation, and supports health research. NLCHI supports the regional health authorities, as well as the patients and communities they serve, in the delivery of information technology (IT) and eHealth services applied in the healthcare system to provide quality care. NLCHI also develops and implements a confidential and secure provincial electronic health record (HEALTHe NL) as well as other provincial clinical information programs, including the change management required to support adoption by end user clinicians.

NLCHI has recently begun their exploration of the cloud. This post details how NLCHI is able to provide secure and scalable access to their on-premises provincial electronic health record (EHR) system, by trusted and authorized partners who run on AWS, through the use of AWS PrivateLink, Network Load Balancer, and AWS Site-to-Site VPN.

Solution overview

The solution is as follows:

  1. Leverage the route to the on-premises data center through site-to-site VPN.
  2. Use the hybrid capabilities of the network load balancer (NLB) to target the IP addresses of on-premises resources.
  3. Use VPC endpoint services (powered by AWS PrivateLink) to enable other AWS principals to create a connection from their VPC to NLCHI’s endpoint service using an interface VPC endpoint.
Figure 1: NLCHI Solution Architecture

Figure 1: NLCHI Solution Architecture

AWS PrivateLink makes sure NLCHI’s traffic is not exposed to the public internet and makes it easy to connect services across different accounts and VPCs to simplify their network architecture, especially where the VPCs may have overlapping CIDRs. By sending traffic from the NLB to the Virtual Private Gateway (VGW) directly, NLCHI also bypasses the need to route through a Transit Gateway, making this a more cost-efficient solution as well.

Leveraging this architecture, NLCHI built a proof of concept and, within three days, completed testing with their authorized partners.

Walkthrough

For this demonstration, we take a look at how NLCHI was able to build a proof of concept and validate this as a functional solution.

Prerequisites

Initial deployment steps

Use AWS CloudFormation’s automated infrastructure as code (IaC) to deploy the base network required for this walkthrough.

1. Using your device’s command line interface (CLI), check out our Git repository to a local directory on your device: git clone https://github.com/aws-samples/aws-multi-account-hybrid-access-privatelink.

2. Login to the AWS Management Console and select the region where you’d like to deploy the demo into. For this example, we selected Canada (Central) ca-central-1 but you can select the region of your choice. Select Services and enter CloudFormation into the search box. Select CloudFormation.

3. Select Create Stack → Template is ready → Upload a template file and then select Choose File to select CFN-template-1.yaml that you saved locally in step 1 when cloning our Git repository. Select Next and enter a stack name such as “MyStack1”. Leave the Parameters section as default and continue to select Next in subsequent screens with the defaults shown, until you arrive at Step 4 – Review. Scroll down to the end of the page and under Capabilities, select the checkbox for “I acknowledge that AWS CloudFormation might create IAM resources with custom names”. Select Create stack. This first CloudFormation stack takes a few minutes to create. The stack status is initially CREATE_IN_PROGRESS. Click on the Refresh button periodically to refresh the stack’s status. Upon completion, the status changes to CREATE_COMPLETE.

4. Once the stack has been created, navigate to Outputs and take note of the AppServerPrivateIP value as noted in Figure 2.

Figure 2: Take note of the AppServerPrivateIP value

Figure 2: Take note of the AppServerPrivateIP value

Select Services and enter VPC into the search box. Select the VPC service. On the left side of the page, under VPN → Site-to-Site VPN Connections, select the Tunnel Details tab and take note of the Customer Gateway Address and the Outside IP Address of Tunnel 1 as seen in Figure 3.

Figure 3: Take note of the Customer Gateway Address and the Outside IP Address of Tunnel 1

Figure 3: Take note of the Customer Gateway Address and the Outside IP Address of Tunnel 1

5. Return to the CloudFormation service. Select Create Stack → Template is ready → Upload a template file and then select Choose File to select CFN-template-2.yaml that you saved locally in step 1. Select Next, enter a stack name such as “MyStack2” and select Next. Enter the CustomerGatewayAddress and OutsideIPAddress parameters based on the information noted in the previous step:

Figure 4 - Enter the CustomerGatewayAddress and OutsideIPAddress parameters

Figure 4: Enter the CustomerGatewayAddress and OutsideIPAddress parameters

Continue to select Next with default values shown until you arrive at Step 4 – Review and select Create Stack. This second AWS CloudFormation stack also takes a few minutes to create, going from CREATE_IN_PROGRESS to CREATE_COMPLETE status. Once the stack is complete, you now have the base network deployed as seen in Figure 5.

Figure 5: Base network deployed via AWS CloudFormation

Figure 5: Base network deployed via AWS CloudFormation

AWS PrivateLink Deployment Steps

Next, manually setup an NLB and an endpoint service in the service provider VPC along with an interface endpoint in the service consumer’s VPC.

1. Navigate to Amazon Elastic Compute Cloud (Amazon EC2) and on the left side, select Load Balancers. Select Create Load Balancer. Create a Network Load Balancer. Enter a name such as “MyNLB” and for the scheme select internal. In the VPC drop-down menu, select the Service Provider VPC and check the box to select both Availability Zones with other options as default values; this makes sure that your NLB is highly-available:

Figure 6: Select Availability Zones to deploy your NLB into

Figure 6: Select Availability Zones to deploy your NLB into

Select Next: Configure Security SettingsNext: Configure Routing. Enter a name for your Target Group such as “MyTargetGroup”. For Target type, choose IP and leave rest of the options on the page with defaults. Select Next: Register Targets. For the Network drop-down menu, select Other private IP address. In the IP text box, enter the AppServerPrivateIP value that you noted during the previous section’s Step 4. Leave other values as defaults. Select Add to list (see Figure 7).

Figure 7: Register an IP target using the AppServerPrivateIP value

Figure 7: Register an IP target using the AppServerPrivateIP value

Select Next: Review → Create. Select Close. Wait for the NLB state change from the initial provisioning to active. This may take a few minutes to complete. Select the refresh icon to update the NLB state status.

2. Navigate back to the VPC service and select Endpoint Services. Select Create Endpoint Service. Select the Load Balancer that you created during the previous step, e.g. “MyNLB”. Uncheck the box beside Require acceptance for endpoint; for the purposes of this walkthrough, auto-accept requests from service consumers. Select Create Service. Select Close. In the Endpoint Service’s Details, take note of the service name (see Figure 8).

Figure 8: Take note of the endpoint service's name

Figure 8: Take note of the endpoint service’s name

3. Still within the VPC service’s page, on the left side, select Endpoints (notice that there are three existing endpoints; these were created for you when you launched the first AWS CloudFormation template and they’re there to allow private access to AWS Systems Manager Session Manager during a subsequent step). Select Create Endpoint. For Service Category, select the radio button for Find service by name. Enter the service name that you noted in the previous step. Select Verify. In the VPC drop-down menu, select your Consumer VPC and leave the remaining settings as they appear. Select Create Endpoint → Close. This can take a few minutes. Wait for the Endpoint status to change from pending to available. You can use the Refresh button to check the status. On the Endpoint’s Details, take note of the first DNS name in the list (see Figure 9).

Figure 9: Take note of the endpoint’s DNS name

Figure 9: Take note of the endpoint’s DNS name

At this point, the final solution is deployed:

Figure 10: Final solution

Figure 10: Final solution

4. To perform verification, navigate to the Amazon EC2 service and on the left side, select Instances. Select your TestServer instance and select Connect. Select Session Manager and then Connect to access your instance without SSH keys or a bastion host.

5. Validate that AWS PrivateLink is functional by transferring HTTP data from your AppServer instance to your TestServer instance by typing curl [endpoint DNS name from Deployment Step 3]. You should see a response below as follows:

Congratulations! You’ve properly setup AWS PrivateLink and validated end-to-end connectivity. If you’re not receiving an HTTP response, go through the previous steps to ensure that you haven’t missed a step or made any misconfigurations outside of the AWS CloudFormation templates.

Cleanup

Follow these steps to shut down and terminate the resources that were deployed in this post by the AWS CloudFormation templates to avoid unnecessary costs.

1. Navigate to the VPC service and click on Endpoints. Select the endpoint that you manually created (it has “vpce” in the service name). Click on Actions, Delete Endpoint. Click on Yes, Delete.

2. On the left-hand side of the VPC service’s page, click on Endpoint Services. Select your endpoint service and click on Actions, Delete. Click on Yes, Delete.

3. Go to the EC2 service and on the left-hand side, click on Load Balancers. Select your NLB and click on Actions, Delete. Click on Yes, Delete.

4. On the left-hand side, click on Target Groups. Select your target group and click on Actions, Delete. Click on Yes.

5. Navigate to the CloudFormation service and select on the first stack in the list, such as “MyStack2”. Click on Delete. Click on Delete Stack; this takes a few minutes to complete. The status changes from DELETE_IN_PROGRESS to DELETE_COMPLETE once finished.

6. Select the remaining stack, such as “MyStack1”. Click on Delete. Click on Delete Stack; this takes a few minutes to complete. The status changes from DELETE_IN_PROGRESS to DELETE_COMPLETE once finished.

Conclusion

This solution showed how NLCHI was able to provide secure and scalable access to their on-premises provincial EHR system by using AWS PrivateLink, Network Load Balancer, and AWS Site-to-Site VPN.

This solution can also be slightly modified to support various other use cases, including the consumption of target resources that are accessible via AWS Direct Connect or located within AWS, even across regions. Check out the whitepaper, “Securely Access Services Over AWS PrivateLink” for more details. If a service consumer has many VPCs, to reduce costs, we recommend hosting the interface endpoints in one centralized VPC so that all the spoke VPCs can use the centralized endpoints.

Learn more about how AWS works with healthcare customers at public sector healthcare.

 


 

Comment le NLCHI fournit un accès hybride à son système de dossier médical partagé grâce à AWS PrivateLink

Le Newfoundland and Labrador Centre for Health Information (NLCHI) fournit des informations de qualité aux professionnels de la santé, au grand public, aux chercheurs du secteur de la santé et aux décideurs. En collaboration avec le réseau de la santé, le NLCHI contribue à l’élaboration de normes techniques et soutien le développement de données. Il assure la maintenance des principales bases de données en santé, effectue des analyses et des évaluations, et soutient la recherche en santé. Le NLCHI appuie les autorités sanitaires régionales, et aide les patients et les communautés, grâce à ses prestations de services de technologie de l’information (TI) et de cybersanté appliqués au système de santé pour fournir des soins de qualité. Le NLCHI développe et met en œuvre un dossier médical électronique provincial confidentiel et sécurisé (HEALTHe NL) ainsi que d’autres programmes provinciaux d’information clinique, qui comprennent notamment la gestion du changement, qui est nécessaire pour soutenir l’adoption par les cliniciens utilisateurs finaux.

Le NLCHI a récemment commencé à explorer le cloud. Ce billet de blogue explique comment le NLCHI est en mesure de fournir un accès sécurisé et évolutif à son système de dossiers médicaux électroniques (DME) provincial sur site, par des partenaires de confiance et autorisés qui fonctionnent sur AWS, avec AWS PrivateLink, Network Load Balancer, et AWS Site-to-Site VPN.

Présentation de la solution

La solution se présente comme ci-dessous :

  • Exploitation du routage vers le centre de données sur site via Site-to-Site VPN;
  • Utilisation des capacités hybrides de l’équilibreur de charge réseau pour cibler les adresses IP des ressources sur site;
  • Utilisation des services de point de terminaison VPC (alimentés par AWS PrivateLink) pour permettre à d’autres mandataires AWS de créer une connexion de leur VPC vers le service de point de terminaison de NLCHI en utilisant un point de terminaison VPC d’interface.
Image 1 : Architecture de la solution NLCHI

Image 1 : Architecture de la solution NLCHI

AWS PrivateLink veille à ce que le trafic du NLCHI ne soit pas exposé à l’Internet public et facilite la connexion des services entre différents comptes et VPC afin de simplifier leur architecture réseau, en particulier lorsque les VPC peuvent avoir des routages interdomaines sans classes (CIDR) qui se chevauchent. En envoyant directement le trafic de l’équilibreur de charge réseau (NLB) à la passerelle privée virtuelle (VGW), le NLCHI évite également d’avoir à passer par une passerelle de transit, ce qui en fait une solution plus rentable.

En s’appuyant sur cette architecture, le NLCHI a créé une preuve de concept et, en trois jours, a terminé les tests avec ses partenaires autorisés.

Parcours

Pour cette démonstration, nous étudions comment le NLCHI a réussi à créer une preuve de concept et à la valider en tant que solution fonctionnelle.

Conditions préalables

Étapes initiales du déploiement

Utilisez l’infrastructure automatisée en tant que code (IaC) d’AWS CloudFormation pour déployer le réseau de base utilisé dans cette démonstration.

1. À l’aide de l’interface de ligne de commande (CLI) de votre appareil, téléchargez notre référentiel Git dans un répertoire local de votre appareil.

git clone https://github.com/aws-samples/aws-multi-account-hybrid-access-privatelink

2. Connectez-vous à AWS Management Console et sélectionnez la région dans laquelle vous souhaitez déployer la démonstration. Pour cet exemple, nous avons sélectionné la région Canada (Centre) ca-central-1 mais vous pouvez sélectionner la région de votre choix. Sélectionnez Services et entrez CloudFormation dans le champ de recherche. Sélectionnez CloudFormation.

3. Sélectionnez Create Stack (Créer une pile) → Template is ready (Le modèle est prêt) → Upload (Téléversez) un fichier de modèle, puis choisissez Choose File (Choisir un fichier) pour ensuite sélectionner CFN-template-1.yaml que vous avez enregistré localement à l’étape 1 lors du clonage de notre référentiel Git. Sélectionnez Next (Suivant) et saisissez un nom de pile tel que « MaPile1 ». Laissez la section Paramètres par défaut et sélectionnez Next (Suivant) aux pages suivantes avec les valeurs par défaut affichées, jusqu’à ce que vous arriviez à l’étape 4 – Révision. Faites défiler jusqu’à la fin de la page et sous Capacities (Capacités), cochez la case « Je reconnais qu’AWS CloudFormation peut créer des ressources IAM avec des noms personnalisés ». Sélectionnez Create Stack (Créer une pile). La création de cette première pile CloudFormation prend quelques minutes. L’état de la pile est initialement CREATE_IN_PROGRESS. Cliquez régulièrement sur le bouton Actualiser pour actualiser l’état de la pile. Une fois la création terminée, l’état passera à CREATE_COMPLETE.

4. Une fois la pile créée, rendez-vous dans Outputs et notez la valeur AppServerPrivateIP comme indiqué dans l’image 2.

Image 2 : Veuillez noter la valeur AppServerPrivateIP.

Image 2 : Veuillez noter la valeur AppServerPrivateIP.

Sélectionnez Services et entrez VPC dans le champ de recherche. Sélectionnez le service VPC. À gauche de la page, sous VPN → Connexions Site-to-Site VPN, sélectionnez l’onglet Tunnel Details (Informations sur le tunnel) et notez la Customer Gateway Address (Adresse de la passerelle du client) et la Outside IP Adresse of Tunnel 1 (Adresse IP extérieure du tunnel 1), comme le montre l’image 3.

Image 3 : Veuillez noter l'adresse de la passerelle du client et l'adresse IP extérieure du tunnel 1.

Image 3 : Veuillez noter l’adresse de la passerelle du client et l’adresse IP extérieure du tunnel 1.

Retournez dans le service CloudFormation. Sélectionnez Create Stack (Créer une pile) → Template is ready (Le modèle est prêt) → Upload a template file (Téléversez un fichier de modèle), puis sélectionnez Choose a file (Choisir un fichier) pour sélectionner CFN-template-2.yaml que vous avez enregistré localement à l’étape 1. Sélectionnez Next (Suivant), entrez un nom de pile tel que « MaPile2 » et sélectionnez Next (Suivant). Saisissez les paramètres CustomerGatewayAddress (Adresse de la passerelle du client) et OutsideIPAddress (Adresse IP extérieure du tunnel 1) en fonction des informations notées à l’étape précédente :

Image 4 : Entrez les paramètres CustomerGatewayAddress et OutsideIPAddress

Image 4 : Entrez les paramètres CustomerGatewayAddress et OutsideIPAddress

Sélectionnez Next (Suivant) avec les valeurs par défaut affichées jusqu’à ce que vous arriviez à l’étape 4 – Révision et sélectionnez Create Stack (Créer la pile). La création de cette deuxième pile AWS CloudFormation prend également quelques minutes, et vous passez ensuite du statut CREATE_IN_PROGRESS au statut CREATE_COMPLETE. Une fois la pile terminée, vous avez maintenant le réseau de base déployé, comme le montre l’image 5.

Image 5 : Réseau de base déployé via AWS CloudFormation

Image 5 : Réseau de base déployé via AWS CloudFormation

Étapes du déploiement d’AWS PrivateLink

Ensuite, configurez manuellement un service d’équilibreur de charge réseau et un service de point de terminaison dans le VPC du fournisseur de services, ainsi qu’un point de terminaison d’interface dans le VPC du consommateur de services.

Connectez-vous à Amazon Elastic Compute Cloud (Amazon EC2) et, dans la partie gauche, sélectionnez Load Balancers (Équilibreurs de charge). Sélectionnez Create Load Balancer (Créer un équilibreur de charge). Créez un équilibreur de charge réseau. Entrez un nom tel que « MonECR » et pour le schéma, sélectionnez interne. Dans le menu déroulant VPC, sélectionnez Service Provider VPC (fournisseur de services VPC) et cochez la case qui vous permet de sélectionner les zones de disponibilité avec d’autres options comme valeurs par défaut; cela permet de s’assurer que votre équilibreur de charge réseau est hautement disponible :

Image 6 : Sélectionnez les zones de disponibilité pour déployer votre NLB

Image 6 : Sélectionnez les zones de disponibilité pour déployer votre NLB

Sélectionnez Next: Configure Security Settings (Suivant : Configurer les paramètres de sécurité) → Next: Configure Routing (Suivant : Configurer le routage). Saisissez un nom pour votre groupe cible, par exemple « MonGroupeCible ». Pour le type de cible, choisissez IP et laissez le reste des options de la page avec les valeurs par défaut. Sélectionnez Next: Register targets (Suivant : Enregistrer les cibles). Pour le menu déroulant Réseau, sélectionnez Other private IP Adress (Autre adresse IP privée). Dans la zone de texte IP, entrez la valeur AppServerPrivateIP que vous avez notée à l’étape 4 de la section précédente. Laissez les autres valeurs par défaut. Sélectionnez Add to list (Ajouter à la liste) (voir image 7).

Image 7 : Enregistrer une cible IP en utilisant la valeur AppServerPrivateIP

Sélectionnez Next: Review (Suivant : Revoir) → Create (Créer). Sélectionnez Close (Fermer). Attendez que l’état de l’équilibreur de charge réseau passe du provisionnement initial à actif. Cela peut prendre quelques minutes pour se terminer. Sélectionnez l’icône d’actualisation pour mettre à jour l’état de l’équilibreur de charge réseau.

2. Retournez au service VPC et sélectionnez Endpoint Services (Services de points de terminaison). Sélectionnez Create Endpoint Service (Créer un service de point de terminaison). Sélectionnez Load Balancer (équilibreur de charge réseau) que vous avez créé à l’étape précédente, par exemple « MonECR ». Décochez la case située à côté de Require acceptance for endpoint (Demander une autorisation pour le point de terminaison); pour les besoins de cette démonstration, acceptez automatiquement les requêtes des consommateurs de services. Sélectionnez Create Service (Créer le service). Sélectionnez Close (Fermer). Dans la rubrique Paramètres du service de point de terminaison, notez le nom du service (voir image 8).

Image 8 : veuillez noter le nom du service de point de terminaison.

Image 8 : veuillez noter le nom du service de point de terminaison.

3. Toujours dans la page du service VPC, sur le côté gauche, sélectionnez Endpoints (points de terminaison) (vous pouvez noter qu’il y a trois points de terminaison existants; ils ont été créés pour vous lorsque vous avez lancé le premier modèle AWS CloudFormation et ils sont là pour permettre un accès privé à AWS Systems Manager Session Manager lors d’une étape ultérieure). Sélectionnez Create Endpoint (Créer un point de terminaison). Pour la catégorie de service, sélectionnez le bouton radio pour Trouver le service par son nom. Saisissez le nom du service que vous avez noté à l’étape précédente. Sélectionnez Verify (Vérifier). Dans le menu déroulant VPC, sélectionnez votre VPC consommateur et laissez les autres paramètres tels qu’ils apparaissent. Sélectionnez Create Endpoint (Créer un point de terminaison) → Close (Fermer). Cette opération peut prendre quelques minutes. Attendez que le statut du point de terminaison passe de « en attente » à « disponible ». Vous pouvez utiliser le bouton Actualiser pour vérifier le statut. Dans les paramètres du point de terminaison, notez le premier nom DNS dans la liste (voir image 9).

Image 9 : veuillez noter le nom DNS du point de terminaison.

Image 9 : veuillez noter le nom DNS du point de terminaison.

A ce stade, la solution finale est déployée :

Image 10 : Solution finale

Image 10 : Solution finale

4. Pour effectuer la vérification, accédez au service Amazon EC2 et, sur la gauche, sélectionnez Instances. Sélectionnez votre instance TestServer et sélectionnez Connect (Connecter). Sélectionnez Session Manager (Gestionnaire de session) et ensuite Connect (Connecter) pour accéder à votre instance sans clés SSH ou un hôte bastion.

5. Vérifiez que AWS PrivateLink est fonctionnel en transférant des données HTTP de votre instance AppServer à votre instance TestServer en tapant curl [endpoint DNS name from Deployment Step 3] ([nom DNS du point de terminaison de l’étape de déploiement 3]). Vous devriez voir apparaître une réponse comme indiqué ci-dessous :

Félicitations! Vous avez correctement configuré AWS PrivateLink et validé la connectivité de bout en bout. Si vous ne recevez pas de réponse HTTP, passez en revue les étapes précédentes pour vous assurer que vous n’avez pas manqué une étape ou effectué des configurations incorrectes en dehors des modèles AWS CloudFormation.

Nettoyage

Suivez ces étapes pour arrêter et clôturer les ressources qui ont été déployées dans ce billet par les modèles AWS CloudFormation afin d’éviter des coûts inutiles.

1. Rendez-vous dans le service VPC et cliquez sur Endpoints (Points de terminaison). Sélectionnez le point de terminaison que vous avez créé manuellement (le nom du service contient le mot « vpce »). Cliquez sur Actions, Delete Endpoint (Supprimer le point de terminaison). Cliquez sur Yes, Delete (Oui, Supprimer).

2. À gauche de la page du service VPC, cliquez sur Endpoint Services (Services de points de terminaison). Sélectionnez votre service de point de terminaison et cliquez sur Actions, Delete (Supprimer). Cliquez sur Yes, Delete (Oui, Supprimer).

3. Allez dans le service EC2 et sur le côté gauche, cliquez sur Load Balancers (Équilibreurs de charge). Sélectionnez votre équilibreur de charge réseau et cliquez sur Actions, Delete (Supprimer). Cliquez sur Yes, Delete (Oui, Supprimer).

4. Sur la gauche, cliquez sur Target Groups (Groupes cibles). Sélectionnez votre groupe cible et cliquez sur Actions, Delete (Supprimer). Cliquez sur Yes (Oui).

5. Accédez au service CloudFormation et sélectionnez la première pile de la liste, par exemple « MaPile2 ». Cliquez sur Delete (Supprimer). Cliquez sur Delete Stack (Supprimer la pile); cela prend quelques minutes. Le statut passe de DELETE_IN_PROGRESS à DELETE_COMPLETE une fois terminé.

6. Sélectionnez la pile restante, par exemple « MaPile1 ». Cliquez sur Delete (Supprimer). Cliquez sur Delete Stack (Supprimer la pile); cette opération prend quelques minutes. Le statut passe de DELETE_IN_PROGRESS à DELETE_COMPLETE une fois terminé.

Conclusion

Cette solution montre comment le NLCHI a pu fournir un accès sécurisé et évolutif à son système de dossier médical partagé provincial sur site en utilisant AWS PrivateLink, un équilibreur de charge réseau et AWS Site-to-Site VPN.

Cette solution peut également être légèrement modifiée pour prendre en charge divers autres cas d’utilisation, notamment la consommation de ressources cibles accessibles via AWS Direct Connect ou situées sur AWS, même à travers les régions. Consultez le livre blanc « Accéder sécurisé aux services via AWS PrivateLink » pour en savoir plus à ce sujet. Si un consommateur de services possède de nombreux VPC, nous recommandons, pour réduire les coûts, d’héberger les points de terminaison de l’interface dans un VPC centralisé afin que tous les VPC Spoke puissent utiliser les points de terminaison centralisés.

Découvrez comment AWS travaille avec les clients du secteur public de la santé.

Neil McFarlane

Neil McFarlane

Neil McFarlane is a healthcare specialized solutions architect for Amazon Web Services (AWS). His areas of focus are interoperability, analytics, and electronic health records

Joel Desaulniers

Joel Desaulniers

Joel Desaulniers is a solutions architect at Amazon Web Services (AWS). He focuses on helping the Canadian federal government accelerate its journey to the cloud. Before joining AWS, Joel spent 15 years in the field of networking, working with enterprise customers and service providers. He lives in Ottawa, Ontario with his wife and three children.