Amazon SageMaker-Studio ist eine webbasierte integrierte Entwicklungsumgebung (IDE) für maschinelles Lernen (ML), mit der Sie Ihre ML-Modelle erstellen, trainieren, debuggen, bereitstellen und überwachen können. Um Studio in Ihrem AWS-Konto und Ihrer Region bereitzustellen, müssen Sie zunächst ein erstellen Amazon Sage Maker Domäne – ein Konstrukt, das Ihre ML-Umgebung kapselt. Konkreter gesagt besteht eine SageMaker-Domäne aus einer zugehörigen Amazon Elastic File System (Amazon EFS)-Volume, eine Liste autorisierter Benutzer sowie eine Vielzahl von Sicherheits-, Anwendungs-, Richtlinien- und Amazon Virtual Private Cloud (Amazon VPC)-Konfigurationen.
Wenn Sie Ihre SageMaker-Domäne erstellen, können Sie sich für eine der beiden Optionen entscheiden AWS IAM Identity Center (Nachfolger von AWS Single Sign-On) oder AWS Identity and Access Management and (IAM) für Benutzerauthentifizierungsmethoden. Beide Authentifizierungsmethoden haben ihre eigenen Anwendungsfälle. In diesem Beitrag konzentrieren wir uns auf SageMaker-Domänen mit IAM Identity Center oder Single Sign-On (SSO) als Authentifizierungsmethode.
Im SSO-Modus richten Sie einen SSO-Benutzer und eine SSO-Gruppe im IAM Identity Center ein und gewähren dann über die Studio-Konsole entweder der SSO-Gruppe oder dem SSO-Benutzer Zugriff. Derzeit erben alle SSO-Benutzer in einer Domäne die Ausführungsrolle der Domäne. Dies funktioniert möglicherweise nicht für alle Organisationen. Beispielsweise möchten Administratoren möglicherweise IAM-Berechtigungen für einen Studio-SSO-Benutzer basierend auf seiner Active Directory (AD)-Gruppenmitgliedschaft einrichten. Da Administratoren außerdem SSO-Benutzern manuell Zugriff auf Studio gewähren müssen, lässt sich der Prozess beim Onboarding von Hunderten von Benutzern möglicherweise nicht skalieren.
In diesem Beitrag stellen wir eine präskriptive Anleitung für die Lösung bereit, um SSO-Benutzern Studio mit den geringsten Berechtigungen basierend auf der AD-Gruppenmitgliedschaft bereitzustellen. Mit dieser Anleitung können Sie schnell skalieren, um Hunderte von Benutzern in Studio einzubinden und Ihren Sicherheits- und Compliance-Status zu erreichen.
Lösungsüberblick
Das folgende Diagramm zeigt die Lösungsarchitektur.
Der Workflow zur Bereitstellung von AD-Benutzern in Studio umfasst die folgenden Schritte:
- Richten Sie ein Studio-Domäne im SSO-Modus.
- Für jede AD-Gruppe:
- Richten Sie Ihre Studio-Ausführungsrolle mit geeigneten, fein abgestuften IAM-Richtlinien ein
- Zeichnen Sie einen Eintrag in der AD-Gruppen-Rollen-Zuordnung auf Amazon DynamoDB Tabelle.
Alternativ können Sie einen Benennungsstandard für IAM-Rollen-ARNs basierend auf dem AD-Gruppennamen übernehmen und den IAM-Rollen-ARN ableiten, ohne die Zuordnung in einer externen Datenbank speichern zu müssen.
- Synchronisieren Sie Ihre AD-Benutzer und -Gruppen sowie Mitgliedschaften mit AWS Identity Center:
- Wenn Sie einen Identitätsanbieter (IdP) verwenden, der SCIM unterstützt, verwenden Sie die SCIM-API-Integration mit IAM Identity Center.
- Wenn Sie selbstverwaltetes AD verwenden, können Sie AD Connector verwenden.
- Wenn die AD-Gruppe in Ihrem Unternehmens-AD erstellt wird, führen Sie die folgenden Schritte aus:
- Erstellen Sie eine entsprechende SSO-Gruppe im IAM Identity Center.
- Ordnen Sie die SSO-Gruppe über die SageMaker-Konsole der Studio-Domäne zu.
- Wenn ein AD-Benutzer in Ihrem Unternehmens-AD erstellt wird, wird ein entsprechender SSO-Benutzer im IAM Identity Center erstellt.
- Wenn der AD-Benutzer einer AD-Gruppe zugewiesen wird, wird eine IAM Identity Center-API (Gruppenmitgliedschaft erstellen) wird aufgerufen und die SSO-Gruppenmitgliedschaft wird erstellt.
- Das vorangegangene Ereignis wird angemeldet AWS CloudTrail mit der Bezeichnung
AddMemberToGroup
. - An Amazon EventBridge Die Regel lauscht auf CloudTrail-Ereignisse und gleicht diese ab
AddMemberToGroup
Regelmuster. - Die EventBridge-Regel löst das Ziel aus AWS Lambda Funktion.
- Diese Lambda-Funktion ruft IAM Identity Center-APIs zurück, ruft die SSO-Benutzer- und Gruppeninformationen ab und führt die folgenden Schritte aus, um das Studio-Benutzerprofil zu erstellen (Benutzerprofil erstellen) für den SSO-Benutzer:
- Suchen Sie in der DynamoDB-Tabelle nach der IAM-Rolle, die der AD-Gruppe entspricht.
- Erstellen Sie ein Benutzerprofil mit dem SSO-Benutzer und der IAM-Rolle, die Sie aus der Nachschlagetabelle erhalten haben.
- Dem SSO-Benutzer wird Zugriff auf Studio gewährt.
- Der SSO-Benutzer wird über die Studio-Domänen-URL zur Studio-IDE umgeleitet.
Beachten Sie, dass Schritt 4b (Zuordnen der SSO-Gruppe zur Studio-Domäne) zum jetzigen Zeitpunkt manuell von einem Administrator mithilfe der SageMaker-Konsole auf SageMaker-Domänenebene durchgeführt werden muss.
Richten Sie eine Lambda-Funktion ein, um die Benutzerprofile zu erstellen
Die Lösung verwendet eine Lambda-Funktion zum Erstellen der Studio-Benutzerprofile. Wir stellen die folgende Beispiel-Lambda-Funktion zur Verfügung, die Sie kopieren und ändern können, um Ihren Anforderungen zur Automatisierung der Erstellung des Studio-Benutzerprofils gerecht zu werden. Diese Funktion führt die folgenden Aktionen aus:
- Erhalten Sie den CloudTrail
AddMemberToGroup
Veranstaltung von EventBridge. - Rufen Sie das Studio ab
DOMAIN_ID
aus der Umgebungsvariablen (Sie können alternativ die Domänen-ID fest codieren oder auch eine DynamoDB-Tabelle verwenden, wenn Sie mehrere Domänen haben). - Lesen Sie aus einer Dummy-Markup-Tabelle, um AD-Benutzer den Ausführungsrollen zuzuordnen. Sie können dies ändern, um aus der DynamoDB-Tabelle abzurufen, wenn Sie einen tabellengesteuerten Ansatz verwenden. Wenn Sie DynamoDB verwenden, benötigt die Ausführungsrolle Ihrer Lambda-Funktion auch Berechtigungen zum Lesen aus der Tabelle.
- Rufen Sie die SSO-Benutzer- und AD-Gruppenmitgliedschaftsinformationen aus IAM Identity Center basierend auf den CloudTrail-Ereignisdaten ab.
- Erstellen Sie ein Studio-Benutzerprofil für den SSO-Benutzer mit den SSO-Details und der passenden Ausführungsrolle.
Beachten Sie, dass die Lambda-Ausführungsrolle standardmäßig keinen Zugriff zum Erstellen von Benutzerprofilen oder zum Auflisten von SSO-Benutzern hat. Nachdem Sie die Lambda-Funktion erstellt haben, greifen Sie auf die Ausführungsrolle der Funktion in IAM zu und hängen Sie die folgende Richtlinie als Inline-Richtlinie an, nachdem Sie den Umfang entsprechend den Anforderungen Ihrer Organisation nach Bedarf reduziert haben.
Richten Sie die EventBridge-Regel für das CloudTrail-Ereignis ein
EventBridge ist ein serverloser Event-Bus-Dienst, mit dem Sie Ihre Anwendungen mit Daten aus verschiedenen Quellen verbinden können. In dieser Lösung erstellen wir einen regelbasierten Trigger: EventBridge lauscht auf Ereignisse und vergleicht das bereitgestellte Muster und löst eine Lambda-Funktion aus, wenn der Musterabgleich erfolgreich ist. Wie in der Lösungsübersicht erläutert, hören wir uns das an AddMemberToGroup
Fall. Führen Sie zum Einrichten die folgenden Schritte aus:
- Wählen Sie in der EventBridge-Konsole aus Regeln im Navigationsbereich.
- Auswählen Regel erstellen.
- Geben Sie einen Regelnamen an, z. B.
AddUserToADGroup
. - Geben Sie optional eine Beschreibung ein.
- Auswählen Standard für den Veranstaltungsbus.
- Der Regeltyp, wählen Regel mit einem Ereignismuster, Dann wählen Weiter.
- Auf dem Erstellen Sie ein Ereignismuster Seite wählen Ereignisquelle as AWS-Veranstaltungen oder EventBridge-Partnerveranstaltungen.
- Der Ereignismuster, wählen Sie das Benutzerdefinierte Muster (JSON-Editor) Tab und geben Sie das folgende Muster ein:
- Auswählen Weiter.
- Auf dem Ziel(e) auswählen Wählen Sie auf der Seite „AWS“ den AWS-Service als Zieltyp, die Lambda-Funktion als Ziel und die Funktion aus, die Sie zuvor erstellt haben, und wählen Sie dann „ Weiter.
- Auswählen Weiter auf die Tags konfigurieren Seite, dann wählen Regel erstellen auf die Überprüfen und erstellen
Nachdem Sie die Lambda-Funktion und die EventBridge-Regel festgelegt haben, können Sie diese Lösung testen. Öffnen Sie dazu Ihren IdP und fügen Sie einen Benutzer zu einer der AD-Gruppen mit der zugeordneten Studio-Ausführungsrolle hinzu. Sobald Sie den Benutzer hinzugefügt haben, können Sie die Lambda-Funktionsprotokolle überprüfen, um das Ereignis zu untersuchen und auch den automatisch bereitgestellten Studio-Benutzer zu sehen. Darüber hinaus können Sie die verwenden DescribeUserProfile API-Aufruf, um zu überprüfen, ob der Benutzer mit den entsprechenden Berechtigungen erstellt wurde.
Unterstützt mehrere Studio-Konten
Um mehrere Studio-Konten mit der vorherigen Architektur zu unterstützen, empfehlen wir die folgenden Änderungen:
- Richten Sie eine AD-Gruppe ein, die jeder Studio-Kontoebene zugeordnet ist.
- Richten Sie in jedem Studio-Konto eine IAM-Rolle auf Gruppenebene ein.
- Richten Sie die Gruppen-zu-IAM-Rollenzuordnung ein oder leiten Sie sie ab.
- Richten Sie eine auszuführende Lambda-Funktion ein kontoübergreifende Rollenübernahme, basierend auf dem IAM-Rollenzuordnungs-ARN und dem erstellten Benutzerprofil.
Deprovisionierung von Benutzern
Wenn ein Benutzer aus seiner AD-Gruppe entfernt wird, sollten Sie auch seinen Zugriff auf die Studio-Domäne entfernen. Wenn ein Benutzer mit SSO entfernt wird, wird er im IAM Identity Center automatisch deaktiviert, wenn die AD-zu-IAM-Identity-Center-Synchronisierung vorhanden ist, und sein Studio-Anwendungszugriff wird sofort widerrufen.
Das Benutzerprofil in Studio bleibt jedoch weiterhin bestehen. Sie können einen ähnlichen Workflow mit CloudTrail und einer Lambda-Funktion hinzufügen, um das Benutzerprofil aus Studio zu entfernen. Der EventBridge-Trigger sollte nun auf das warten Gruppenmitgliedschaft löschen Fall. Führen Sie in der Lambda-Funktion die folgenden Schritte aus:
- Ermitteln Sie den Namen des Benutzerprofils aus der Benutzer- und Gruppen-ID.
- Listen Sie alle laufenden Apps für das Benutzerprofil mit auf ListenApps API-Aufruf, Filterung nach
UserProfileNameEquals
Parameter. Überprüfen Sie unbedingt die paginierte Antwort, um alle Apps für den Benutzer aufzulisten. - Löschen Sie alle laufenden Apps für den Benutzer und warten Sie, bis alle Apps gelöscht sind. Du kannst den ... benutzen DescribeApp API zum Anzeigen des Status der App.
- Wenn alle Apps in einem sind Gelöschte Zustand (bzw Gescheitert), löschen Sie das Benutzerprofil.
Mit dieser Lösung können ML-Plattformadministratoren Gruppenmitgliedschaften an einem zentralen Ort verwalten und die Studio-Benutzerprofilverwaltung über EventBridge- und Lambda-Funktionen automatisieren.
Der folgende Code zeigt ein Beispiel-CloudTrail-Ereignis:
Der folgende Code zeigt eine Beispiel-API-Anfrage für ein Studio-Benutzerprofil:
Zusammenfassung
In diesem Beitrag haben wir besprochen, wie Administratoren das Studio-Onboarding für Hunderte von Benutzern basierend auf ihrer AD-Gruppenmitgliedschaft skalieren können. Wir haben eine End-to-End-Lösungsarchitektur demonstriert, die Unternehmen übernehmen können, um ihren Onboarding-Prozess zu automatisieren und zu skalieren, um ihren Agilitäts-, Sicherheits- und Compliance-Anforderungen gerecht zu werden. Wenn Sie nach einer skalierbaren Lösung suchen, um das Onboarding Ihrer Benutzer zu automatisieren, probieren Sie diese Lösung aus und hinterlassen Sie unten Ihr Feedback! Weitere Informationen zum Onboarding in Studio finden Sie unter Integrieren in die Amazon SageMaker-Domäne.
Über die Autoren
Widder Vittal ist ein ML Specialist Solutions Architect bei AWS. Er verfügt über mehr als 20 Jahre Erfahrung in der Architektur und Entwicklung verteilter, Hybrid- und Cloud-Anwendungen. Seine Leidenschaft gilt der Entwicklung sicherer und skalierbarer KI/ML- und Big-Data-Lösungen, um Unternehmenskunden bei der Einführung und Optimierung der Cloud zu unterstützen und so ihre Geschäftsergebnisse zu verbessern. In seiner Freizeit fährt er Motorrad und geht mit seinem zweijährigen Schäfchen spazieren!
Durga Sury ist ein ML Solutions Architect im Amazon SageMaker Service SA-Team. Es liegt ihr am Herzen, maschinelles Lernen für jedermann zugänglich zu machen. In ihren vier Jahren bei AWS hat sie beim Aufbau von KI/ML-Plattformen für Unternehmenskunden geholfen. Wenn sie nicht arbeitet, liebt sie Motorradfahrten, Kriminalromane und Wandern mit ihrem 4-jährigen Husky.
- SEO-gestützte Content- und PR-Distribution. Holen Sie sich noch heute Verstärkung.
- EVM-Finanzen. Einheitliche Schnittstelle für dezentrale Finanzen. Hier zugreifen.
- Quantum Media Group. IR/PR verstärkt. Hier zugreifen.
- PlatoAiStream. Web3-Datenintelligenz. Wissen verstärkt. Hier zugreifen.
- Quelle: https://aws.amazon.com/blogs/machine-learning/onboard-users-to-amazon-sagemaker-studio-with-active-directory-group-specific-iam-roles/
- :hast
- :Ist
- :nicht
- $UP
- 1
- 11
- 116
- 20
- 20 Jahre
- 200
- 22
- 24
- 7
- 9
- a
- LiveBuzz
- Akzeptieren
- Zugang
- zugänglich
- Konto
- Trading Konten
- Erreichen
- Action
- Aktionen
- aktiv
- Ad
- hinzufügen
- hinzugefügt
- zusätzlich
- Administrator
- Administratoren
- adoptieren
- Adoption
- Nach der
- gegen
- AI / ML
- Alle
- erlauben
- ebenfalls
- Amazon
- Amazon Sage Maker
- Amazon SageMaker-Studio
- Amazon Web Services
- an
- und
- Bienen
- APIs
- Anwendung
- Anwendungen
- Ansatz
- angemessen
- Apps
- Architektur
- SIND
- AS
- zugewiesen
- Partnerschaftsräte
- damit verbundenen
- Annahme
- At
- anhängen
- Authentifizierung
- zugelassen
- automatisieren
- Im Prinzip so, wie Sie es von Google Maps kennen.
- automatisieren
- AWS
- Zurück
- basierend
- BE
- weil
- war
- Big
- Big Data
- Körper
- beide
- bauen
- Building
- Bus
- Geschäft
- by
- rufen Sie uns an!
- CAN
- Fälle
- Center
- Hauptgeschäftsstelle
- Übernehmen
- Änderungen
- Charakter
- aus der Ferne überprüfen
- Auswählen
- Auftraggeber
- Cloud
- Cloud-Einführung
- Code
- COM
- abschließen
- Compliance
- Vernetz Dich
- besteht
- Konsul (Console)
- konstruieren
- Kontext
- Unternehmen
- Dazugehörigen
- erstellen
- erstellt
- Erstellen
- Schaffung
- Zur Zeit
- Kunden
- technische Daten
- Datenbase
- Standard
- Synergie
- einsetzen
- Beschreibung
- Detail
- Details
- Entwicklung
- behindert
- diskutiert
- verteilt
- do
- Tut nicht
- Dabei
- Domain
- Domains
- Nicht
- nach unten
- jeder
- Früher
- Herausgeber
- bewirken
- entweder
- sonst
- ermöglicht
- End-to-End
- Enter
- Unternehmen
- Eintrag
- Arbeitsumfeld
- Event
- Veranstaltungen
- jedermann
- Beispiel
- Ausführung
- ERFAHRUNGEN
- erklärt
- extern
- falsch
- Feedback
- Reichen Sie das
- Filterung
- Vorname
- Setzen Sie mit Achtsamkeit
- Folgende
- Aussichten für
- für
- Funktion
- Funktionen
- Außerdem
- bekommen
- gewähren
- erteilt
- Gruppe an
- Gruppen
- die Vermittlung von Kompetenzen,
- Griff
- Haben
- he
- Hilfe
- dazu beigetragen,
- hier (auf dänisch)
- seine
- Ultraschall
- HTML
- http
- HTTPS
- hunderte
- Hybrid
- ID
- Identitätsschutz
- if
- zeigt
- sofort
- importieren
- zu unterstützen,
- in
- Dazu gehören
- Information
- Instanz
- integriert
- Integration
- aufgerufen
- IT
- Reise
- JSON
- lernen
- am wenigsten
- Verlassen
- Lasst uns
- Niveau
- Liste
- Standorte
- protokolliert
- Logik
- suchen
- Nachschlagen
- liebt
- Maschine
- Maschinelles Lernen
- halten
- um
- Making
- Management
- manuell
- Mapping
- Spiel
- Abstimmung
- Kann..
- Triff
- Mitglied
- Mitgliedschaft
- Mitgliedschaften
- Methode
- Methoden
- ML
- Model
- für
- ändern
- Überwachen
- mehr
- Motorrad
- mehrere
- Mystery
- Name
- Benennung
- Menü
- Need
- erforderlich
- benötigen
- Bedürfnisse
- nichts
- jetzt an
- erhalten
- of
- OKTA
- on
- Onboard
- Einsteigen
- einmal
- EINEM
- XNUMXh geöffnet
- Optimierung
- or
- Organisation
- Organisationen
- OS
- Ergebnisse
- übrig
- Überblick
- besitzen
- Seite
- Brot
- Parameter
- Partner
- leidenschaftlich
- Schnittmuster
- Muster
- Ausführen
- durchgeführt
- führt
- Berechtigungen
- besteht fort
- Ort
- Plattform
- Plattformen
- Plato
- Datenintelligenz von Plato
- PlatoData
- Datenschutzrichtlinien
- Post
- privat
- Privileg
- Prozessdefinierung
- Profil
- Profil
- die
- vorausgesetzt
- Versorger
- Bereitstellung
- schnell
- Lesen Sie mehr
- empfehlen
- Region
- entfernen
- Entfernt
- Anforderung
- falls angefordert
- Voraussetzungen:
- Ressourcen
- Antwort
- Rückkehr
- Rollen
- Rollen
- Regel
- Laufen
- s
- SA
- sagemaker
- skalierbaren
- Skalieren
- Scoping
- Verbindung
- Sicherheitdienst
- sehen
- Serverlos
- Lösungen
- kompensieren
- sie
- sollte
- Konzerte
- ähnlich
- da
- Single
- So
- Lösung
- Lösungen
- Quelle
- Quellen
- Spezialist
- Standard
- Bundesstaat
- Erklärung
- Status
- Schritt
- Shritte
- Immer noch
- speichern
- Studio Adressen
- erfolgreich
- Support
- Unterstützt
- Tabelle
- Target
- Team
- Test
- zur Verbesserung der Gesundheitsgerechtigkeit
- Das
- ihr
- dann
- fehlen uns die Worte.
- Durch
- Zeit
- zu
- Training
- auslösen
- was immer dies auch sein sollte.
- versuchen
- tippe
- unbekannt
- bis
- URL
- -
- Mitglied
- Nutzer
- verwendet
- Verwendung von
- Wert
- Vielfalt
- überprüfen
- Version
- Anzeigen
- Assistent
- Volumen
- warten
- wollen
- we
- Netz
- Web-Services
- Webbasiert
- GUT
- wann
- werden wir
- mit
- ohne
- Arbeiten
- Arbeitsablauf.
- arbeiten,
- Schreiben
- Jahr
- Du
- Ihr
- Zephyrnet