Zephyrnet-logo

Beveiligde vooraf door Amazon SageMaker Studio ondertekende URL's Deel 1: Fundamentele infrastructuur

Datum:

U krijgt toegang tot Amazon SageMaker Studio notitieboekjes van de Amazon Sage Maker console via AWS Identiteits- en toegangsbeheer (IAM) geverifieerde federatie van uw identiteitsprovider (IdP), zoals Okta. Wanneer een Studio-gebruiker de notebookkoppeling opent, valideert Studio het IAM-beleid van de federatieve gebruiker om toegang te autoriseren en genereert en lost het de vooraf ondertekende URL voor de gebruiker op. Omdat de SageMaker-console op een internetdomein draait, is deze gegenereerde vooraf ondertekende URL zichtbaar in de browsersessie. Dit vormt een ongewenste bedreigingsvector voor exfiltratie en het verkrijgen van toegang tot klantgegevens wanneer de juiste toegangscontroles niet worden afgedwongen.

Studio ondersteunt een aantal methoden voor het afdwingen van toegangscontroles tegen vooraf ingestelde exfiltratie van URL-gegevens:

  • Client-IP-validatie met behulp van de IAM-beleidsvoorwaarde aws:sourceIp
  • Client VPC-validatie met behulp van de IAM-voorwaarde aws:sourceVpc
  • Validatie van het VPC-eindpunt van de client met behulp van de IAM-beleidsvoorwaarde aws:sourceVpce

Wanneer u Studio-notebooks opent vanuit de SageMaker-console, is de enige beschikbare optie om client-IP-validatie te gebruiken met de IAM-beleidsvoorwaarde aws:sourceIp. U kunt echter producten voor het routeren van browserverkeer, zoals Zscaler, gebruiken om te zorgen voor schaalbaarheid en naleving van de internettoegang van uw personeel. Deze producten voor verkeersroutering genereren hun eigen bron-IP, waarvan het IP-bereik niet wordt beheerd door de zakelijke klant. Dit maakt het voor deze zakelijke klanten onmogelijk om de aws:sourceIp staat.

Client-VPC-eindpuntvalidatie gebruiken met behulp van de IAM-beleidsvoorwaarde aws:sourceVpce, moet het maken van een vooraf ondertekende URL afkomstig zijn van dezelfde VPC van de klant waar Studio is geïmplementeerd, en moet de resolutie van de vooraf ondertekende URL plaatsvinden via een Studio VPC-eindpunt op de VPC van de klant. Deze resolutie van de vooraf ondertekende URL tijdens toegangstijd voor gebruikers van bedrijfsnetwerken kan worden bereikt met behulp van DNS-doorstuurregels (zowel in Zscaler als bedrijfs-DNS) en vervolgens naar het VPC-eindpunt van de klant met behulp van een Amazon Route 53 inkomende oplosser.

In dit deel bespreken we de overkoepelende architectuur voor het beveiligen van vooraf ondertekende URL's van studio's en demonstreren we hoe u de basisinfrastructuur kunt opzetten om een ​​vooraf ondertekende Studio-URL te maken en te lanceren via uw VPC-eindpunt via een privénetwerk zonder het internet te doorkruisen. Dit dient als de fundamentele laag voor het voorkomen van gegevensexfiltratie door externe kwaadwillenden die toegang krijgen tot de vooraf ondertekende URL van Studio en ongeautoriseerde of vervalste zakelijke gebruikerstoegang binnen een bedrijfsomgeving.

Overzicht oplossingen

Het volgende diagram illustreert de overkoepelende oplossingsarchitectuur.

Het proces omvat de volgende stappen:

  1. Een zakelijke gebruiker authenticeert zich via zijn IdP, maakt verbinding met zijn bedrijfsportal en opent de Studio-link vanuit de bedrijfsportal.
  2. De bedrijfsportaltoepassing voert een privé-API-aanroep uit met behulp van een API Gateway VPC-eindpunt om een ​​vooraf ondertekende URL te maken.
  3. De aanroep van het API Gateway VPC-eindpunt "creëer een vooraf ondertekende URL" wordt doorgestuurd naar de Route 53 inkomende resolver op de VPC van de klant, zoals geconfigureerd in de bedrijfs-DNS.
  4. De VPC DNS-resolver zet het om naar het API Gateway VPC-eindpunt IP. Optioneel zoekt het een persoonlijk gehost zonerecord op als het bestaat.
  5. Het API Gateway VPC-eindpunt stuurt het verzoek via het privénetwerk van Amazon naar de "creëer vooraf ondertekende URL-API" die wordt uitgevoerd in het API Gateway-serviceaccount.
  6. API Gateway roept de create-pre-signedURL private API en proxyt het verzoek naar de create-pre-signedURL AWS Lambda functie.
  7. De create-pre-signedURL Lambda-oproep wordt aangeroepen via het Lambda VPC-eindpunt.
  8. De create-pre-signedURL functie wordt uitgevoerd in het serviceaccount, haalt geverifieerde gebruikerscontext op (gebruikers-ID, regio, enzovoort), zoekt een toewijzingstabel op om het SageMaker-domein en gebruikersprofiel-ID te identificeren, maakt een sagemaker createpre-signedDomainURL API-aanroep en genereert een vooraf ondertekende URL. De Lambda-servicerol heeft de bron-VPC-eindpuntvoorwaarden die zijn gedefinieerd voor de SageMaker API en Studio.
  9. De gegenereerde vooraf ondertekende URL wordt omgezet via het Studio VPC-eindpunt.
  10. Studio valideert dat de vooraf ondertekende URL wordt geopend via het VPC-eindpunt van de klant dat is gedefinieerd in het beleid, en retourneert het resultaat.
  11. De Studio-notebook wordt teruggestuurd naar de browsersessie van de gebruiker via het bedrijfsnetwerk zonder het internet te doorkruisen.

In de volgende secties wordt uitgelegd hoe u deze architectuur implementeert om vooraf door Studio ondertekende URL's van een bedrijfsnetwerk op te lossen met behulp van VPC-eindpunten. We demonstreren een volledige implementatie door de volgende stappen te laten zien:

  1. Zet de basisarchitectuur op.
  2. Configureer de zakelijke app-server voor toegang tot een door SageMaker vooraf ondertekende URL via een VPC-eindpunt.
  3. Stel Studio in en start het vanuit het bedrijfsnetwerk.

De basisarchitectuur opzetten

Bij de post Toegang krijgen tot een Amazon SageMaker Studio-notebook vanaf een bedrijfsnetwerk, hebben we laten zien hoe u een vooraf ondertekende URL-domeinnaam voor een Studio-notebook kunt omzetten vanuit een bedrijfsnetwerk zonder het internet te hoeven doorkruisen. Je kunt de instructies in dat bericht volgen om de basisarchitectuur in te stellen en vervolgens terugkeren naar dit bericht en doorgaan naar de volgende stap.

Configureer de zakelijke app-server voor toegang tot een door SageMaker vooraf ondertekende URL via een VPC-eindpunt

Om toegang tot Studio vanuit uw internetbrowser mogelijk te maken, hebben we een on-premises app-server opgezet op Windows Server op het on-premises VPC openbare subnet. De DNS-query's voor toegang tot Studio worden echter gerouteerd via het bedrijfsnetwerk (privé). Voer de volgende stappen uit om het routeren van Studio-verkeer via het bedrijfsnetwerk te configureren:

  1. Maak verbinding met uw on-premises Windows-app-server.

  2. Kies Haal wachtwoord op blader en upload vervolgens uw privésleutel om uw wachtwoord te decoderen.
  3. Gebruik een RDP-client en maak verbinding met de Windows Server met uw referenties.
    Het oplossen van Studio DNS vanaf de Windows Server-opdrachtprompt resulteert in het gebruik van openbare DNS-servers, zoals weergegeven in de volgende schermafbeelding.

    Nu werken we Windows Server bij om de on-premises DNS-server te gebruiken die we eerder hebben ingesteld.
  4. Navigeer naar control panel, Netwerk en interneten kies Netwerkverbindingen.
  5. Klik met de rechtermuisknop Ethernet En kies de Properties Tab.
  6. Werk Windows Server bij om de on-premises DNS-server te gebruiken.
  7. Nu werkt u uw favoriete DNS-server bij met uw DNS-server-IP.
  8. Navigeer naar VPC en Routetabellen en kies uw STUDIO-ONPREM-PUBLIC-RT routetabel.
  9. Voeg een route toe aan 10.16.0.0/16 met het doel als de peeringverbinding die we hebben gemaakt tijdens de installatie van de basisarchitectuur.

Studio instellen en starten vanaf uw bedrijfsnetwerk

Voer de volgende stappen uit om Studio in te stellen en te starten:

  1. Download Chrome en start de browser op deze Windows-instantie.
    Mogelijk moet u Schakel Internet Explorer Verbeterde Beveiligingsconfiguratie uit om bestandsdownloads toe te staan ​​en dan bestandsdownloads inschakelen.
  2. Navigeer in de Chrome-browser van uw lokale apparaat naar de SageMaker-console en open de Chrome-ontwikkelaarstools Netwerk Tab.
  3. Start de Studio-app en observeer de Netwerk tabblad voor de authtoken parameterwaarde, die de gegenereerde vooraf ondertekende URL omvat, samen met het externe serveradres waarnaar de URL wordt gerouteerd voor resolutie. In dit voorbeeld is het externe adres 100.21.12.108 een van de openbare DNS-serveradressen om het SageMaker DNS-domein op te lossen name d-h4cy01pxticj.studio.us-west-2.sagemaker.aws.
  4. Herhaal deze stappen vanaf de Amazon Elastic Compute-cloud (Amazon EC2) Windows-instantie die u hebt geconfigureerd als onderdeel van de basisarchitectuur.

We kunnen zien dat het externe adres niet het openbare DNS-IP is, maar het Studio VPC-eindpunt 10.16.42.74.

Conclusie

In dit bericht hebben we laten zien hoe u een door Studio vooraf ondertekende URL van een bedrijfsnetwerk kunt oplossen met behulp van privé-VPC-eindpunten van Amazon zonder de vooraf ondertekende URL-resolutie op internet bloot te stellen. Dit beveiligt uw bedrijfsbeveiliging verder voor toegang tot Studio vanaf een bedrijfsnetwerk voor het bouwen van zeer veilige machine learning-workloads op SageMaker. In deel 2 van deze serie breiden we deze oplossing verder uit om te demonstreren hoe u een privé-API kunt bouwen voor toegang tot Studio met aws:sourceVPCE IAM-beleidsvalidatie en tokenverificatie. Probeer deze oplossing uit en laat je feedback achter in de comments!


Over de auteurs

Ram Vital is een machine learning-oplossingenarchitect bij AWS. Hij heeft meer dan 20 jaar ervaring in het ontwerpen en bouwen van gedistribueerde, hybride en cloudapplicaties. Hij heeft een passie voor het bouwen van veilige en schaalbare AI/ML- en Big Data-oplossingen om zakelijke klanten te helpen bij hun cloudadoptie en optimalisatietraject om hun bedrijfsresultaten te verbeteren. In zijn vrije tijd houdt hij van tennis en fotografie.

Neelam Koshiya is een enterprise solution architect bij AWS. Haar huidige focus is om zakelijke klanten te helpen met hun reis naar de cloud voor strategische bedrijfsresultaten. In haar vrije tijd houdt ze van lezen en buitenshuis zijn.

spot_img

Laatste intelligentie

spot_img

Chat met ons

Hallo daar! Hoe kan ik u helpen?