Die Verwaltung des Zugriffs auf KI-Modelle über Dutzende oder Hunderte von AWS-Konten hinweg schafft operative Reibung, wenn jedes Workload-Konto AWS Marketplace Private Pricing Offers (MPPOs) einzeln abonnieren und akzeptieren muss. Amazon Bedrock mit verwalteten Berechtigungen vereinfacht den Multi-Account-Zugriff auf KI-Modelle von Drittanbietern, sodass Sie einmal von einem zentralen Konto aus abonnieren und den Zugriff in Ihrer Organisation verteilen können.
In diesem Beitrag zeigen wir Ihnen zwei Wege, um AWS Marketplace Private Pricing Offer (MPPO)-Berechtigungen in AWS License Manager zu aktivieren. Verwenden Sie das leichtgewichtige Skript, wenn Sie eine einmalige Korrektur ohne Infrastruktur für bereits vertrauenswürdige empfangene Lizenzen wünschen. Verwenden Sie die CDK-Automatisierung, wenn Sie eine laufende ereignisgesteuerte Verarbeitung wünschen, die Verkäufer überprüft und verteilte Grants erstellt und aktiviert.
Warum die Grant-Aktivierung automatisieren
Mit AWS Marketplace Private Pricing Offers können Sie individuelle Konditionen für Modelle von Drittanbietern auf Amazon Bedrock aushandeln. Nachdem ein qualifiziertes privates Angebot akzeptiert wurde, erstellt AWS Marketplace eine Lizenz in AWS License Manager. In AWS Organizations mit allen aktivierten Funktionen werden Grants auf Organisationsebene automatisch akzeptiert, bleiben aber im Status Disabled, bis Sie sie aktivieren.
Teams verwalten dies oft, indem sie die AWS-License-Manager-Konsole überprüfen und Grants manuell aktivieren. Manuelle Prüfungen funktionieren, aber sie bedeuten Aufwand und werden leicht übersehen. Bis jemand den Grant aktiviert, gelten die ausgehandelten Preise nicht. Derselbe Aufwand entsteht, wenn Teams neue Modelle einführen oder Vertragsbedingungen erneuern.
Lösungsübersicht
Das Beispiel-Repository bietet zwei Wege:
- Weg 1 – Der leichtgewichtige Weg ist ein eigenständiges Skript, das empfangene Lizenzen auflistet und einen Dry-Run-Plan ausgibt. Es erstellt und aktiviert organisationsweite Grants nur, wenn Sie es mit
--apply --confirm-account-iderneut ausführen. Es enthält keine Verkäufer-Allowlist, verwenden Sie es daher nur, wenn Sie jeder empfangenen Lizenz im Management-Konto vertrauen. - Weg 2 – Der ereignisgesteuerte Weg verwendet das AWS Cloud Development Kit (AWS CDK), um laufende Automatisierung in Ihrem AWS-Management-Konto bereitzustellen.
Wählen Sie einen der folgenden Implementierungswege. Verwenden Sie Weg 1 für eine einmalige Aktivierung ohne CDK. Verwenden Sie Weg 2 für laufende ereignisgesteuerte Automatisierung.
Weg 1: Leichtgewichtiges Skript (einmalige Aktivierung)
Verwenden Sie diesen Weg, wenn Sie eine einmalige Aktivierung ohne Bereitstellung von CDK benötigen. Das Skript listet jede empfangene Lizenz im Management-Konto auf, verwenden Sie daher den Dry Run als Ihre Prüfschwelle, bevor Sie Änderungen anwenden.
- Klonen Sie das Beispiel-Repository lokal und wechseln Sie in das Projektverzeichnis.
git clone https://github.com/aws-samples/sample-bedrock-managed-entitlements.git cd sample-bedrock-managed-entitlements - Führen Sie das leichtgewichtige Skript im Dry-Run-Modus aus.
python3 lightweight/distribute_licenses.py - Überprüfen Sie jede aufgelistete Lizenz und bestätigen Sie, dass der ISV-Partner-Aussteller und der Konto-Umfang mit dem erwarteten privaten Angebot übereinstimmen.
- Wenden Sie den überprüften Plan aus demselben AWS-Organizations-Management-Konto an.
python3 lightweight/distribute_licenses.py --apply --confirm-account-id ACCOUNT_ID - Nachdem der Grant aktiv ist, validieren Sie den Abrechnungspfad, bevor Sie sich in der Produktion auf das private Angebot verlassen. Abrechnungsdaten in AWS Cost Explorer können verzögert sein, verwenden Sie sie daher, um die effektive Gebühr für abgedeckte Amazon-Bedrock-Nutzung zu vergleichen, nachdem Gebühren erscheinen. Für eine wiederholbare Prüfung passen Sie das Beispiel-Dienstprogramm scripts/bedrock_discount_check.py an Ihren ISV-Partner-Aussteller an und bestätigen Sie den erwarteten Rabattpfad.
Weg 2: CDK-Automatisierung (laufende Aktivierung)
Verwenden Sie diesen Weg, wenn Sie neue private Preisvereinbarungen automatisch verarbeitet haben möchten. Der CDK-Stack lauscht auf qualifizierte AWS-Marketplace-Vereinbarungsereignisse, prüft Ihre Verkäufer-Allowlist, erstellt verteilte Grants und wiederholt die Aktivierung, wenn License Manager mehr Zeit benötigt. Die Lösung besteht aus drei Komponenten:
- Amazon-EventBridge-Regel: Der Stack lauscht auf AWS-Marketplace-Vereinbarungsereignisse auf dem Standard-Event-Bus in
us-east-1. Die Regel stimmt mit der Quelle übereinaws.agreement-marketplaceund DetailtypPurchase Agreement Created - Acceptor, und ruft dann die AWS-Lambda-Funktion auf. - AWS-Lambda-Funktion: Die Funktion empfängt das AWS Marketplace Agreement-Ereignis, prüft die Seller-Allow-List, findet die Lizenz, erstellt das verteilte Grant und fordert die Aktivierung an mit
CreateGrantVersion(Status=ACTIVE). Die Funktion protokolliert das Ergebnis in Amazon CloudWatch Logs zur Nachvollziehbarkeit. - AWS License Manager Entitlements: Das Grant zielt auf Ihre Organisation, ausgewählte Organisationseinheiten (OUs) oder bestimmte Konten. Ausgehandelte Preise gelten erst, nachdem das Grant aktiviert wurde und
ACTIVEoderWORKFLOW_COMPLETED.
Das folgende Diagramm zeigt den ereignisgesteuerten Ablauf.
Abbildung 1: Sequenzdiagramm, das zeigt, wie AWS Marketplace ein Purchase Agreement Created – Acceptor-Ereignis an Amazon EventBridge sendet, das eine AWS-Lambda-Funktion aufruft. Die Funktion verifiziert den Seller, findet die erhaltene Lizenz, erstellt ein verteiltes Grant, fordert die Aktivierung mit CreateGrantVersion(Status=ACTIVE) an und schreibt das Ergebnis in Amazon CloudWatch Logs.
Die wichtigsten Vorteile dieses Ansatzes:
- Schnellere Verfügbarkeit ausgehandelter Preise. Der ausgehandelte Tarif greift, sobald der verteilte Grant
ACTIVEoderWORKFLOW_COMPLETEDerreicht, ohne auf eine manuelle Konsole-Prüfung warten zu müssen. - Konsistente Handhabung über Konten hinweg. Dieselbe AWS-Lambda-Funktion und dasselbe Amazon-EventBridge-Regelmuster können für jede Organisation bereitgestellt werden, die Grants für Modelle von Drittanbietern erhält, sodass die Aktivierungslogik nicht je nach Betreiber variiert.
- Integrierte Audit-Trails. Jeder Aktivierungsversuch oder jede Überspringungsentscheidung wird in CloudWatch Logs protokolliert, sodass Sie eine Aufzeichnung darüber haben, wann jeder Grant aktiviert, zurückgestellt oder ignoriert wurde.
Voraussetzungen
Bevor Sie diesen Pfad bereitstellen, bestätigen Sie die folgenden Voraussetzungen:
- Verwenden Sie das Verwaltungskonto von AWS Organizations in
us-east-1mit Python 3.12+, AWS Command Line Interface (AWS CLI) und AWS CDK v2 konfiguriert. - Stellen Sie sicher, dass AWS Organizations alle Funktionen verwendet und dass das Private Offer für ein License Manager-basiertes Bedrock-Modell gilt. Software as a Service (SaaS)-Produkte sind für diese Automatisierung nicht im Umfang enthalten.
Umsetzungsschritte
- Klonen Sie das Beispiel-Repository lokal und wechseln Sie in das Projektverzeichnis.
git clone https://github.com/aws-samples/sample-bedrock-managed-entitlements.git cd sample-bedrock-managed-entitlements - Prüf- bzw. aktivieren Sie die Organisationsvoraussetzungen.
python3 scripts/bootstrap_prereqs.py --check --region us-east-1Prüfen Sie alle
APPLYoderMANUALElemente, bevor Sie Änderungen vornehmen. Das Bootstrap-Skript kann die License Manager-Organisationsintegration, License Manager Trusted Access, AWS Marketplace License-Management Trusted Access sowie die erforderlichen serviceverknüpften Rollen aktivieren.python3 scripts/bootstrap_prereqs.py --apply --region us-east-1 --confirm-account-id ACCOUNT_ID - Konfigurieren Sie die Bereitstellungseingaben.
python3 scripts/setup_config.pyPrüfen Sie
config/sellers.json. Konfigurieren Sie Ihre Organization ID, die Seller-Allow-List, Benachrichtigungen und optionale Grant-Ziele. Standardmäßig zielen Grants auf die gesamte Organisation. Verwenden SiegrantTargets, um Grants auf ausgewählte OUs oder AWS-Konten zu beschränken. - Stellen Sie den CDK-Stack bereit.
cd cdk pip install -r requirements.txt cdk bootstrap aws://ACCOUNT_ID/us-east-1 cdk deploy - Befüllen Sie die Amazon-DynamoDB-Seller-Allow-List aus
config/sellers.json.cd .. python scripts/seed_sellers.py --config config/sellers.jsonBehandeln Sie die Seller-Allow-List als Sicherheitsgrenze. Prüfen Sie jede Seller-Account-ID anhand Ihres akzeptierten AWS Marketplace Private Offer oder Ihrer erhaltenen License Manager-Lizenz, bevor Sie die Tabelle befüllen. Fügen Sie keine breiten oder unbestätigten Seller-Einträge hinzu, da passende Sellers die Erstellung und Aktivierung von Grants über alle konfigurierten Grant-Ziele auslösen können.
Nach der Bereitstellung und dem Befüllen der Seller-Liste ist der Stack bereit, geeignete AWS Marketplace-Vereinbarungsereignisse zu verarbeiten. Die Erstellung und Aktivierung von Grants erfolgt nur für verifizierte Sellers in der Allowlist, und die Aktivierung kann zurückgestellt werden, bis License Manager die Grant-Workflow-Verarbeitung abgeschlossen hat.
- Validieren Sie die bereitgestellte Automatisierung.
python scripts/e2e_validate.py --org-id o-xxxxxxxxxx --seller-account SELLER_ACCOUNT_ID --simulate - Prüfen Sie die Grant-Aktivierung nach einem geeigneten AWS Marketplace-Vereinbarungsereignis.
aws logs tail /aws/lambda/mppo-grants-handler --follow --region us-east-1 python scripts/bedrock_discount_check.py --issuer "ISV Partner"Aktivierung und Abrechnungssichtbarkeit können Stunden oder Tage dauern. Nachdem das ereignisgesteuerte Workflow die Grants akzeptiert und aktiviert hat, bestätigen Sie den Grant-Status in AWS License Manager und validieren Sie anschließend die abgedeckte Amazon-Bedrock-Nutzung in AWS Cost Explorer, sobald Abrechnungsdaten vorliegen. Für eine wiederholbare Prüfung passen Sie das Beispiel-Dienstprogramm scripts/bedrock_discount_check.py an Ihren ISV-Partner-Aussteller und das Ziel-Linked Account an.
Aufräumen
Wenn Sie diesen Stack zu Testzwecken bereitgestellt haben, entfernen Sie ihn, um die laufenden geringen Gebühren für Lambda und Amazon EventBridge zu vermeiden:
cdk destroy
Stimme des Kunden
„Als AI Care Partner, der wöchentlich Millionen von Clinician-Konsultationen unterstützt, verlässt sich Heidi Health in echtem Umfang auf Foundation Models von Drittanbietern. Private Pricing über AWS Marketplace gibt uns eine kosteneffiziente und effiziente Möglichkeit, dieses Wachstum zu steuern: Wir können Nutzung und Preise granular über AWS-Konten und Organisationseinheiten zuordnen und das Grant-Management automatisieren, wenn wir neue Modelle einführen. So kann unser Platform-Team Cost Governance skalieren, ohne den manuellen Aufwand zu vergrößern.“
— Marcus Lau, Head of Platform Engineering, Heidi Health
Fazit
Dieser Beitrag zeigte zwei Wege, um verwaltete Berechtigungen für Amazon Bedrock Private Pricing Offers zu aktivieren. Verwenden Sie das leichtgewichtige Skript für eine einmalige Aktivierung vertrauenswürdiger empfangener Lizenzen oder deployen Sie die CDK-Automatisierung, wenn Sie eine fortlaufende ereignisgesteuerte Verarbeitung neuer AWS Marketplace-Vereinbarungen benötigen. Beide Ansätze reduzieren den manuellen Aufwand und tragen dazu bei, dass ausgehandelte Preise nach der Aktivierung verteilter Grants angewendet werden.
Um loszulegen, testen Sie das Codebeispiel in Ihrem AWS-Verwaltungskonto, um Modellabonnements zu automatisieren.
Ressourcen
- Beispielcode: Amazon Bedrock mit verwalteten Berechtigungen (GitHub)
- AWS License Manager User Guide
- AWS License Manager API Reference: CreateGrantVersion
- Amazon EventBridge-Benutzerhandbuch
- AWS CDK-Entwicklerhandbuch
