Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager

Administratoren von Workloads für maschinelles Lernen (ML) konzentrieren sich darauf, sicherzustellen, dass Benutzer auf die sicherste Weise arbeiten, und streben nach einem Prinzip der geringsten Rechte. Sie müssen eine Vielzahl von Personas berücksichtigen, von denen jede ihre eigenen, einzigartigen Anforderungen hat, und das Erstellen der richtigen Berechtigungsrichtlinien, um diese Anforderungen zu erfüllen, kann manchmal ein Hemmnis für Agilität sein. In diesem Beitrag sehen wir uns die Verwendung an Amazon SageMaker-Rollenmanager um schnell eine Reihe von Persona-basierten Rollen aufzubauen, die in wenigen Minuten weiter an Ihre spezifischen Anforderungen angepasst werden können, direkt am Amazon Sage Maker Konsole.

Role Manager bietet vordefinierte Personas und ML-Aktivitäten in Kombination mit einem Assistenten, um Ihren Prozess zur Generierung von Berechtigungen zu optimieren, sodass Ihre ML-Experten ihre Aufgaben mit den minimal erforderlichen Berechtigungen erfüllen können. Wenn Sie zusätzliche Anpassungen benötigen, können Sie mit SageMaker Role Manager Netzwerk- und Verschlüsselungsberechtigungen angeben Amazon Virtual Private Cloud (Amazon VPC)-Ressourcen und AWS-Schlüsselverwaltungsservice (AWS KMS)-Verschlüsselungsschlüssel und hängen Sie Ihre benutzerdefinierten Richtlinien an.

In diesem Beitrag erklären Sie, wie Sie mit SageMaker Role Manager eine Data Scientist-Rolle für den Zugriff erstellen Amazon SageMaker-Studio, während eine Reihe von Mindestberechtigungen beibehalten werden, um ihre erforderlichen Aktivitäten auszuführen.

Lösungsüberblick

In dieser exemplarischen Vorgehensweise führen Sie alle Schritte aus, um einem ML-Administrator Berechtigungen zu erteilen, eine Servicerolle für den Zugriff auf erforderliche Abhängigkeiten zum Erstellen und Trainieren von Modellen zu erstellen und Ausführungsrollen zu erstellen, die Benutzer innerhalb von Studio übernehmen können, um ihre Aufgaben auszuführen. Wenn Ihre ML-Experten über die AWS-Managementkonsole, können Sie die Berechtigungen erstellen, um den Zugriff zuzulassen oder den Zugriff zu gewähren IAM-Identitätszentrum (Nachfolger von AWS Single Sign-On).

Menschen

Eine Persona ist eine Entität, die eine Reihe von ML-Aktivitäten ausführen muss und eine Rolle verwendet, um ihnen Berechtigungen zu erteilen. SageMaker Role Manager bietet Ihnen eine Reihe vordefinierter Persona-Vorlagen für häufige Anwendungsfälle, oder Sie können Ihre eigene benutzerdefinierte Persona erstellen.

Derzeit werden mehrere Personas unterstützt, darunter:

  • Datenwissenschaftler – Eine Persona, die ML-Aktivitäten innerhalb einer SageMaker-Umgebung durchführt. Sie dürfen verarbeiten Amazon Simple Storage-Service (Amazon S3) Daten, führen Sie Experimente durch und erstellen Sie Modelle.
  • MLOps – Eine Persona, die sich mit operativen Aktivitäten innerhalb einer SageMaker-Umgebung befasst. Sie dürfen Modelle, Endpunkte und Pipelines verwalten und Ressourcen prüfen.
  • SageMaker-Compute-Rolle – Eine Persona, die von SageMaker-Rechenressourcen wie Jobs und Endpunkten verwendet wird. Sie dürfen auf Amazon S3-Ressourcen zugreifen, Amazon Elastic Container-Registrierung (Amazon ECR)-Repositorys, Amazon CloudWatch, und andere Dienste für die ML-Berechnung.
  • Benutzerdefinierte Rolleneinstellungen – Diese Persona hat keine vorausgewählten Einstellungen oder Standardoptionen. Es bietet eine vollständige Anpassung, beginnend mit leeren Einstellungen.

Eine umfassende Liste der Personas und weitere Details finden Sie in der Persona-Referenz der SageMaker Role Manager-Entwicklerhandbuch.

ML-Aktivitäten

ML-Aktivitäten sind vordefinierte Berechtigungssätze, die auf allgemeine ML-Aufgaben zugeschnitten sind. Personas bestehen aus einer oder mehreren ML-Aktivitäten, um Berechtigungen zu erteilen.

Beispielsweise verwendet die Persona Data Scientist die folgenden ML-Aktivitäten:

  • Führen Sie Studio-Anwendungen aus – Berechtigungen zum Betrieb in einer Studio-Umgebung. Erforderlich für Domänen- und Benutzerprofilausführungsrollen.
  • Experimente verwalten – Berechtigungen zur Verwaltung von Experimenten und Versuchen.
  • ML-Jobs verwalten – Berechtigungen zum Auditieren, Abfragen der Abstammung und Visualisieren von Experimenten.
  • Modelle verwalten – Berechtigungen zum Verwalten von SageMaker-Jobs über ihren gesamten Lebenszyklus hinweg.
  • Pipelines verwalten – Berechtigungen zum Verwalten von SageMaker-Pipelines und Pipeline-Ausführungen.
  • S3-Bucket-Zugriff – Berechtigungen zum Ausführen von Vorgängen für bestimmte Buckets.

Es gibt noch viel mehr ML-Aktivitäten als die hier aufgeführten. Die vollständige Liste zusammen mit den Details der Vorlagenrichtlinie finden Sie in der ML-Aktivitätsreferenz der SageMaker Role Manager-Entwicklerhandbuch.

Die folgende Abbildung zeigt den gesamten Umfang dieses Beitrags, in dem Sie zunächst eine Dienstausführungsrolle erstellen, um Benutzern dies zu ermöglichen PassRole für den Zugriff auf zugrunde liegende Dienste und erstellen Sie dann eine Benutzerausführungsrolle, um Ihren ML-Praktikern Berechtigungen zur Durchführung ihrer erforderlichen ML-Aktivitäten zu erteilen.

Voraussetzungen:

Sie müssen sicherstellen, dass Sie eine Rolle für Ihren ML-Administrator haben, um Personas zu erstellen und zu verwalten, sowie die AWS Identity and Access Management and (IAM)-Berechtigungen für diese Benutzer.

Eine beispielhafte IAM-Richtlinie für einen ML-Administrator könnte wie der folgende Code aussehen. Beachten Sie, dass die folgende Richtlinie die Studio-Domainerstellung nur für VPC sperrt. Obwohl dies eine bewährte Methode zum Steuern des Netzwerkzugriffs ist, müssen Sie die LockDownStudioDomainCreateToVPC -Anweisung, wenn Ihre Implementierung keine VPC-basierte Studio-Domäne verwendet.

{
    "Version": "2012-10-17",
    "Statement":
    [
        {
            "Sid": "LockDownStudioDomainCreateToVPC",
            "Effect": "Allow",
            "Action":
            [
                "sagemaker:CreateDomain"
            ],
            "Resource":
            [
                "arn:aws:sagemaker:::domain/*"
            ],
            "Condition":
            {
                "StringEquals":
                {
                    "sagemaker:AppNetworkAccessType": "VpcOnly"
                }
            }
        },
        {
            "Sid": "StudioUserProfilePerm",
            "Effect": "Allow",
            "Action":
            [
                "sagemaker:CreateUserProfile"
            ],
            "Resource":
            [
                "arn:aws:sagemaker:::user-profile/*"
            ]
        },
        {
            "Sid": "AllowFileSystemPermissions",
            "Effect": "Allow",
            "Action":
            [
                "elasticfilesystem:CreateFileSystem"
            ],
            "Resource": "arn:aws:elasticfilesystem:::file-system/*"
        },
        {
            "Sid": "KMSPermissionsForSageMaker",
            "Effect": "Allow",
            "Action":
            [
                "kms:CreateGrant",
                "kms:Decrypt",
                "kms:DescribeKey",
                "kms:Encrypt",
                "kms:GenerateDataKey",
                "kms:RetireGrant",
                "kms:ReEncryptTo",
                "kms:ListGrants",
                "kms:RevokeGrant",
                "kms:GenerateDataKeyWithoutPlainText"
            ],
            "Resource":
            [
                "arn:aws:kms:::key/"
            ]
        },
        {
            "Sid": "AmazonSageMakerPresignedUrlPolicy",
            "Effect": "Allow",
            "Action":
            [
                "sagemaker:CreatePresignedDomainUrl"
            ],
            "Resource":
            [
                "arn:aws:sagemaker:::user-profile/*"
            ]
        },
        {
            "Sid": "AllowRolePerm",
            "Effect": "Allow",
            "Action":
            [
                "iam:PassRole",
                "iam:GetRole"
            ],
            "Resource":
            [
                "arn:aws:iam:::role/*"
            ]
        },
        {
            "Sid": "ListExecutionRoles",
            "Effect": "Allow",
            "Action":
            [
                "iam:ListRoles"
            ],
            "Resource":
            [
                "arn:aws:iam:::role/*"
            ]
        },
        {
            "Sid": "SageMakerApiListDomain",
            "Effect": "Allow",
            "Action":
            [
                "sagemaker:ListDomains"
            ],
            "Resource": "arn:aws:sagemaker:::domain/*"
        },
        {
            "Sid": "VpcConfigurationForCreateForms",
            "Effect": "Allow",
            "Action":
            [
                "ec2:DescribeVpcs",
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups"
            ],
            "Resource": "*"
        },
        {
            "Sid": "KmsKeysForCreateForms",
            "Effect": "Allow",
            "Action":
            [
                "kms:DescribeKey",
                "kms:ListAliases"
            ],
            "Resource":
            [
                "arn:aws:kms:::key/*"
            ]
        },
        {
            "Sid": "KmsKeysForCreateForms2",
            "Effect": "Allow",
            "Action":
            [
                "kms:ListAliases"
            ],
            "Resource":
            [
                "*"
            ]
        },
        {
            "Sid": "StudioReadAccess",
            "Effect": "Allow",
            "Action":
            [
                "sagemaker:ListDomains",
                "sagemaker:ListApps",
                "sagemaker:DescribeDomain",
                "sagemaker:DescribeUserProfile",
                "sagemaker:ListUserProfiles",
                "sagemaker:EnableSagemakerServicecatalogPortfolio",
                "sagemaker:GetSagemakerServicecatalogPortfolioStatus"
            ],
            "Resource": "*"
        },
        {
            "Sid": "SageMakerProjectsSC",
            "Effect": "Allow",
            "Action":
            [
                "servicecatalog:AcceptPortfolioShare",
                "servicecatalog:ListAcceptedPortfolioShares",
                "servicecatalog:Describe*",
                "servicecatalog:List*",
                "servicecatalog:ScanProvisionedProducts",
                "servicecatalog:SearchProducts",
                "servicecatalog:SearchProvisionedProducts",
                "cloudformation:GetTemplateSummary",
                "servicecatalog:ProvisionProduct",
                "cloudformation:ListStackResources",
                "servicecatalog:AssociatePrincipalWithPortfolio"
            ],
            "Resource": "*"
        },
        {
            "Action":
            [
                "s3:CreateBucket",
                "s3:ListAllMyBuckets",
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:PutObject",
                "s3:DeleteObject",
                "s3:AbortMultipartUpload",
                "s3:GetBucketCors",
                "s3:PutBucketCors",
                "s3:GetBucketAcl",
                "s3:PutObjectAcl"
            ],
            "Effect": "Allow",
            "Resource":
            [
                "arn:aws:s3:::",
                "arn:aws:s3:::/*"
            ]
        }
    ]
}

Erstellen Sie eine Servicerolle für die Weitergabe an Jobs und Endpunkte

Wenn Sie Rollen für Ihre ML-Experten erstellen, um Aktivitäten in SageMaker auszuführen, müssen sie Berechtigungen an eine Servicerolle weitergeben, die Zugriff auf die Verwaltung der zugrunde liegenden Infrastruktur hat. Diese Servicerolle kann wiederverwendet werden und muss nicht für jeden Anwendungsfall erstellt werden. In diesem Abschnitt erstellen Sie eine Servicerolle und verweisen dann darauf, wenn Sie Ihre anderen Personas über erstellen PassRole. Wenn Sie bereits über eine entsprechende Servicerolle verfügen, können Sie diese verwenden, anstatt eine weitere zu erstellen.

  1. Wählen Sie in der SageMaker-Konsole Erste Schritte in der Navigationsleiste.
  2. Der Rolle konfigurieren, wählen Erstellen Sie eine Rolle.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
  3. Aussichten für Suffix des Rollennamens, geben Sie Ihrer Rolle einen Namen, der zum Suffix des für Sie erstellten IAM-Rollennamens wird. Für diesen Beitrag treten wir ein SageMaker-demoComputeRole.
  4. Auswählen SageMaker-Compute-Rolle als deine Persönlichkeit.
  5. Konfigurieren Sie optional die Netzwerk- und Verschlüsselungseinstellungen, um Ihre gewünschten Ressourcen zu verwenden.
  6. Auswählen Weiter.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
    Im ML-Aktivitäten konfigurieren Abschnitt können Sie sehen, dass die ML-Aktivität für Greifen Sie auf erforderliche AWS-Services zu ist bereits für die SageMaker Compute Role Persona vorausgewählt.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.Da die Greifen Sie auf erforderliche AWS-Services zu ML-Aktivität ist ausgewählt, weitere Optionen werden angezeigt.
  7. Geben Sie die entsprechenden S3-Bucket-ARNs und Amazon ECR-ARNs ein, auf die diese Servicerolle zugreifen kann.
    Sie können mehrere Werte hinzufügen, indem Sie auswählen Speichern in jedem Abschnitt.
  8. Nachdem Sie die erforderlichen Werte eingetragen haben, wählen Sie Weiter.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
  9. Im Fügen Sie zusätzliche Richtlinien und Tags hinzu Wählen Sie im Abschnitt andere Richtlinien aus, die Ihre Servicerolle möglicherweise benötigt.
  10. Auswählen Weiter.
  11. Im Rolle überprüfen überprüfen Sie, ob Ihre Konfiguration korrekt ist, und wählen Sie dann aus Absenden.
    Das letzte, was Sie für die Servicerolle tun müssen, ist den Rollen-ARN zu notieren, damit Sie ihn später im Prozess der Erstellung Ihrer Data Scientist-Persona-Rolle verwenden können.
  12. Um die Rolle in IAM anzuzeigen, wählen Sie Gehe zur Rolle im Erfolgsbanner oder suchen Sie alternativ nach dem Namen, den Sie Ihrer Servicerollen-Persona in der IAM-Konsole gegeben haben.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
  13. Notieren Sie sich in der IAM-Konsole den ARN der Rolle im Abschnitt ARN.

Sie geben diesen ARN später ein, wenn Sie Ihre anderen personenbasierten Rollen erstellen.

Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Erstellen Sie eine Ausführungsrolle für Data Scientists

Nachdem Sie nun die grundlegenden Servicerollen für Ihre anderen Personas erstellt haben, können Sie Ihre Rolle für Data Scientists erstellen.

  1. Wählen Sie in der SageMaker-Konsole Erste Schritte in der Navigationsleiste.
  2. Der Rolle konfigurieren, wählen Erstellen Sie eine Rolle.
  3. Aussichten für Suffix des Rollennamens, geben Sie Ihrer Rolle einen Namen, z. B. SageMaker-dataScientistRole.
    Beachten Sie, dass dieser resultierende Name für Ihre vorhandenen Rollen eindeutig sein muss, da sonst die Persona-Erstellung fehlschlägt.
  4. Fügen Sie optional eine Beschreibung hinzu.
  5. Wählen Sie eine Basis-Persona-Vorlage aus, um Ihrer Persona einen grundlegenden Satz von ML-Aktivitäten zu geben. In diesem Beispiel wählen wir Daten Scientist.
  6. Optional im Netzwerkeinrichtung Geben Sie im Abschnitt die spezifischen VPC-Subnetze und Sicherheitsgruppen an, auf die die Persona für Ressourcen zugreifen kann, die sie unterstützen.
  7. Im Verschlüsselung einrichten, können Sie optional einen oder mehrere Datenverschlüsselungs- und Volumenverschlüsselungsschlüssel für Dienste auswählen, die die Verschlüsselung im Ruhezustand unterstützen.
  8. Nachdem Sie die Anpassung Ihrer Persona abgeschlossen haben, wählen Sie aus Weiter.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
    Im ML-Aktivitäten konfigurieren Abschnitt werden eine oder mehrere ML-Aktivitäten basierend auf Ihrer Baseline-Persona-Vorlage vorausgewählt.
  9. In diesem Abschnitt können Sie zusätzliche ML-Aktivitäten hinzufügen oder entfernen, um diese Rolle an Ihren spezifischen Anwendungsfall anzupassen.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
    Bestimmte ML-Aktivitäten erfordern zusätzliche Informationen, um die Rolleneinrichtung abzuschließen. Wählen Sie beispielsweise die S3-Bucket-Zugriff Für ML-Aktivitäten müssen Sie eine Liste von S3-Buckets angeben, auf die Sie Zugriff gewähren möchten. Andere ML-Aktivitäten erfordern möglicherweise a PassRoles -Eintrag, damit diese Persona ihre Berechtigungen an eine Servicerolle weitergeben kann, um Aktionen im Namen der Persona auszuführen. In unserem Beispiel ist die ML-Jobs verwalten ML-Aktivität erfordert a PassRoles Eintrag.
  10. Geben Sie den Rollen-ARN für die zuvor erstellte Servicerolle ein.
    Sie können mehrere Einträge hinzufügen, indem Sie wählen Speichern, wodurch ein Array der angegebenen Werte in der resultierenden Rolle erstellt wird.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
  11. Nachdem Sie alle geeigneten ML-Aktivitäten ausgewählt und die erforderlichen Werte angegeben haben, wählen Sie aus Weiter.
  12. Im Fügen Sie zusätzliche Richtlinien hinzu Wählen Sie im Abschnitt andere Richtlinien aus, die Ihre Ausführungsrolle möglicherweise benötigt. Sie können Ihrer Ausführungsrolle auch Tags hinzufügen.
  13. Auswählen Weiter.
  14. Im Rolle überprüfen überprüfen Sie, ob die Persona-Konfigurationsdetails korrekt sind, und wählen Sie dann aus Absenden.

Zeigen Sie Ihrer neuen Rolle endgültige Anpassungen an und fügen Sie sie hinzu

Nachdem Sie Ihre Persona übermittelt haben, können Sie zur IAM-Konsole gehen und die resultierenden Rollen und Richtlinien anzeigen, die für Sie erstellt wurden, sowie weitere Änderungen vornehmen. Um zur neuen Rolle in IAM zu gelangen, wählen Sie Gehen Sie zur Rolle im Erfolgsbanner.

In der IAM-Konsole können Sie Ihre neu erstellte Rolle zusammen mit den angehängten Richtlinien anzeigen, die die ML-Aktivitäten abbilden, die Sie in Role Manager ausgewählt haben. Sie können die vorhandenen Richtlinien hier ändern, indem Sie die Richtlinie auswählen und das Dokument bearbeiten. Diese Rolle kann auch über Infrastructure as Code (IaC) neu erstellt werden, indem Sie einfach die Inhalte der Richtliniendokumente nehmen und in Ihre bestehende Lösung einfügen.

Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Verknüpfen Sie die neue Rolle mit einem Benutzer

Damit Ihre Benutzer auf Studio zugreifen können, müssen sie mit der von Ihnen erstellten Benutzerausführungsrolle verknüpft sein (in diesem Beispiel basierend auf der Data Scientist-Persona). Die Methode zum Zuordnen des Benutzers zu der Rolle hängt von der Authentifizierungsmethode ab, die Sie für Ihre Studio-Domäne eingerichtet haben, entweder IAM oder IAM Identity Center. Die Authentifizierungsmethode finden Sie unter der Domain Abschnitt in der Studio-Systemsteuerung, wie in den folgenden Screenshots gezeigt.

Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai. Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Fahren Sie je nach Ihrer Authentifizierungsmethode mit dem entsprechenden Unterabschnitt fort.

Greifen Sie über IAM auf Studio zu

Beachten Sie, dass die IAM-Rolle in diesem Abschnitt nicht erforderlich ist, wenn Sie die IAM Identity Center-Integration mit Studio verwenden. Fahren Sie mit dem nächsten Abschnitt fort.

SageMaker Role Manager erstellt Ausführungsrollen für den Zugriff auf AWS-Services. Damit Ihre Data Scientists ihre jeweilige Rolle über die Konsole annehmen können, benötigen sie eine Konsolenrolle, um zur Studio-Umgebung zu gelangen.

Die folgende Beispielrolle erteilt die erforderlichen Berechtigungen, um einem Data Scientist den Zugriff auf die Konsole zu ermöglichen und die Rolle seiner Persona in Studio zu übernehmen:

{
    "Version": "2012-10-17",
    "Statement":
    [
        {
            "Sid": "DescribeCurrentDomain",
            "Effect": "Allow",
            "Action": "sagemaker:DescribeDomain",
            "Resource": "arn:aws:sagemaker:::domain/"
        },
        {
            "Sid": "RemoveErrorMessagesFromConsole",
            "Effect": "Allow",
            "Action":
            [
                "servicecatalog:ListAcceptedPortfolioShares",
                "sagemaker:GetSagemakerServicecatalogPortfolioStatus",
                "sagemaker:ListModels",
                "sagemaker:ListTrainingJobs",
                "servicecatalog:ListPrincipalsForPortfolio",
                "sagemaker:ListNotebookInstances",
                "sagemaker:ListEndpoints"
            ],
            "Resource": "*"
        },
        {
            "Sid": "RequiredForAccess",
            "Effect": "Allow",
            "Action":
            [
                "sagemaker:ListDomains",
                "sagemaker:ListUserProfiles"
            ],
            "Resource": "*"
        },
        {
            "Sid": "CreatePresignedURLForAccessToDomain",
            "Effect": "Allow",
            "Action": "sagemaker:CreatePresignedDomainUrl",
            "Resource": "arn:aws:sagemaker:::user-profile//"
        }
    ]
}

Die beschriftete Aussage RemoveErrorMessagesFromConsole kann entfernt werden, ohne die Möglichkeit zu beeinträchtigen, auf Studio zuzugreifen, führt jedoch zu API-Fehlern auf der Benutzeroberfläche der Konsole.

Manchmal gewähren Administratoren ML-Experten Zugriff auf die Konsole, um Probleme mit ihrer Studio-Umgebung zu debuggen. In diesem Szenario möchten Sie zusätzliche Berechtigungen zum Anzeigen von CloudWatch und AWS CloudTrail Protokolle.

Der folgende Code ist ein Beispiel für eine schreibgeschützte CloudWatch Logs-Zugriffsrichtlinie:

{
"Version": "2012-10-17",
    "Statement": [
        {
        "Action": [
                "logs:Describe*",
                "logs:Get*",
                "logs:List*",
                "logs:StartQuery",
                "logs:StopQuery",
                "logs:TestMetricFilter",
                "logs:FilterLogEvents"
            ],
            "Effect": "Allow",
            "Resource": "*"
        }
    ]
}

Weitere Informationen zu CloudWatch Logs-Richtlinien finden Sie unter Beispiele für vom Kunden verwaltete Richtlinien.

Der folgende Code ist ein Beispiel für eine schreibgeschützte CloudTrail-Zugriffsrichtlinie:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "cloudtrail:Get*",
                "cloudtrail:Describe*",
                "cloudtrail:List*",
                "cloudtrail:LookupEvents"
            ],
            "Resource": "*"
        }
    ]
}

Weitere Details und Beispielrichtlinien finden Sie unter Identitäts- und Zugriffsverwaltung für AWS CloudTrail.

  1. Wählen Sie im Studio Control Panel Benutzer hinzufügen um Ihren neuen Data Scientist-Benutzer zu erstellen.
  2. Aussichten für Name und Vorname, geben Sie Ihrem Benutzer einen Namen.
  3. Aussichten für Standardausführungsrolle, wählen Sie die Persona-Rolle aus, die Sie zuvor erstellt haben.
  4. Auswählen Weiter.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
  5. Wählen Sie die entsprechende Jupyter Lab-Version und ob Sie sie aktivieren möchten Amazon SageMaker-JumpStart und SageMaker-Projektvorlagen.
  6. Auswählen Weiter.
  7. Dieser Beitrag geht davon aus, dass Sie RStudio nicht verwenden, also wählen Sie Weiter erneut, um die RStudio-Konfiguration zu überspringen.
  8. Wählen Sie, ob Sie aktivieren möchten Amazon SageMaker-Leinwand unterstützen und zusätzlich, ob Zeitreihenprognosen in Canvas zugelassen werden sollen.
  9. Auswählen Absenden.
    Sie können jetzt Ihren neuen Data-Science-Benutzer in der Studio-Systemsteuerung sehen.
  10. Um diesen Benutzer zu testen, auf der App starten Menü, wählen Sie Studio.
    Dadurch werden Sie als ausgewählter Benutzer mit den Berechtigungen seiner Persona zur Studio-Konsole weitergeleitet.Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Greifen Sie über IAM Identity Center auf Studio zu

Das Zuweisen von IAM Identity Center-Benutzern zu Ausführungsrollen erfordert, dass sie zunächst im IAM Identity Center-Verzeichnis vorhanden sind. Wenn sie nicht vorhanden sind, wenden Sie sich an Ihren Identitätsadministrator oder wenden Sie sich an Verwalten Sie Identitäten in IAM Identity Center für weitere Instruktionen.

Beachten Sie, dass sich zur Verwendung der IAM Identity Center-Authentifizierungsmethode das Verzeichnis und Ihre Studio-Domäne in derselben AWS-Region befinden müssen.

  1. Um IAM Identity Center-Benutzer Ihrer Studio-Domäne zuzuweisen, wählen Sie Weisen Sie Benutzer und Gruppen zu in der Studio-Systemsteuerung.
  2. Wählen Sie Ihren Data Scientist-Benutzer aus, und wählen Sie dann aus Weisen Sie Benutzer und Gruppen zu.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
  3. Nachdem der Benutzer zum Studio-Steuerfeld hinzugefügt wurde, wählen Sie den Benutzer aus, um den Bildschirm mit den Benutzerdetails zu öffnen.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
  4. Auf dem Nutzerdetails Seite wählen Bearbeiten.
  5. Auf dem Benutzerprofil bearbeiten Seite unter Allgemeine Einstellungen, ändere das Standardausführungsrolle entsprechend der Benutzerausführungsrolle, die Sie für Ihre Data Scientists erstellt haben.
  6. Auswählen Weiter.
    Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.
  7. Auswählen Weiter durch die restlichen Einstellungsseiten und wählen Sie dann Absenden um Ihre Änderungen zu speichern.

Wenn sich Ihr Datenwissenschaftler jetzt beim IAM Identity Center-Portal anmeldet, sieht er eine Kachel für diese Studio-Domäne. Wenn Sie diese Kachel auswählen, werden sie mit der Benutzerausführungsrolle, die Sie ihnen zugewiesen haben, bei Studio angemeldet.

Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Testen Sie Ihre neue Persönlichkeit

Nachdem Sie sich bei Studio angemeldet haben, können Sie Folgendes verwenden Beispiel Notizbuch um die Berechtigungen zu validieren, die Sie Ihrem Data Science-Benutzer erteilt haben.

Sie können beobachten, dass der Data Scientist-Benutzer nur die Aktionen im Notebook ausführen kann, für die seine Rolle zugelassen wurde. Zum Beispiel:

  • Der Benutzer wird daran gehindert, Jobs ohne VPC- oder AWS KMS-Konfiguration auszuführen, wenn die Rolle entsprechend angepasst wurde
  • Der Benutzer hat nur dann Zugriff auf Amazon S3-Ressourcen, wenn in der Rolle die ML-Aktivität enthalten war
  • Der Benutzer kann Endpunkte nur bereitstellen, wenn die Rolle die ML-Aktivität beinhaltet

Aufräumen

Führen Sie die folgenden Schritte aus, um die Ressourcen zu bereinigen, die Sie in dieser exemplarischen Vorgehensweise erstellt haben:

  1. Entfernen Sie die Zuordnung Ihrer neuen Rolle zu Ihren Benutzern:
    1. Wenn Sie Studio mit IAM verwenden, löschen Sie alle neu erstellten Studio-Benutzer.
    2. Wenn Sie Studio mit IAM Identity Center verwenden, trennen Sie die erstellte Ausführungsrolle von Ihren Studio-Benutzern.
  2. Suchen Sie in der IAM-Konsole Ihre Benutzerausführungsrolle und löschen Sie sie.
  3. Suchen Sie in der IAM-Konsole nach Ihrer Servicerolle und löschen Sie sie.
  4. Wenn Sie eine neue Rolle für einen ML-Administrator erstellt haben:
    1. Melden Sie sich als ML-Administrator von Ihrem Konto ab und als anderer Administrator mit IAM-Berechtigungen wieder an.
    2. Löschen Sie die von Ihnen erstellte ML-Administratorrolle.

Zusammenfassung

Bis vor kurzem mussten Sie zum Erstellen von SageMaker-Rollen mit benutzerdefinierten Berechtigungen bei Null anfangen. Mit dem neuen SageMaker Role Manager können Sie die Kombination aus Personas, vorgefertigten ML-Aktivitäten und benutzerdefinierten Richtlinien verwenden, um in wenigen Minuten schnell benutzerdefinierte Rollen zu generieren. Dadurch können Ihre ML-Experten schneller mit der Arbeit in SageMaker beginnen.

Weitere Informationen zur Verwendung von SageMaker Role Manager finden Sie unter SageMaker Role Manager-Entwicklerhandbuch.


Über die Autoren

Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai. Giuseppe Zappia ist Senior Solutions Architect bei AWS mit über 20 Jahren Erfahrung in der Full-Stack-Softwareentwicklung, dem Design verteilter Systeme und der Cloud-Architektur. In seiner Freizeit spielt er gerne Videospiele, programmiert, schaut Sport und baut Dinge.

Widder VittalWidder Vittal ist Principal ML Solutions Architect bei AWS. Er verfügt über mehr als 20 Jahre Erfahrung in der Entwicklung und Erstellung verteilter, hybrider und Cloud-Anwendungen. Er entwickelt leidenschaftlich gerne sichere und skalierbare KI/ML- und Big-Data-Lösungen, um Unternehmenskunden bei ihrer Cloud-Einführung und -Optimierung zu unterstützen und ihre Geschäftsergebnisse zu verbessern. In seiner Freizeit fährt er gerne Motorrad, spielt Tennis und fotografiert.

Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.Arvind Sowmyan ist Senior Software Development Engineer im SageMaker Model Governance Team, wo er sich auf den Aufbau skalierbarer Webservices mit Schwerpunkt auf Unternehmenssicherheit spezialisiert hat. Davor arbeitete er auf der Training Jobs-Plattform, wo er Teil des SageMaker-Startteams war. In seiner Freizeit illustriert er gerne Comics, erforscht die virtuelle Realität und bastelt an großen Sprachmodellen.

Definieren Sie benutzerdefinierte Berechtigungen in wenigen Minuten mit Amazon SageMaker Role Manager PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.Ozan Eken ist Senior Product Manager bei Amazon Web Services. Seine Leidenschaft gilt der Entwicklung von Governance-Produkten im maschinellen Lernen für Unternehmenskunden. Außerhalb der Arbeit erkundet er gerne verschiedene Outdoor-Aktivitäten und schaut Fußball.

Zeitstempel:

Mehr von AWS Maschinelles Lernen