Eine Möglichkeit zum Schutz vertraulicher Ressourcen besteht darin, den Zugriff darauf zu beschränken. Durch die Beschränkung des Zugriffs auf vertrauliche Ressourcen kann jedoch auch jeder, der gelegentlich auf diese Ressourcen zugreifen muss, Probleme haben. Beispielsweise benötigt ein Nutzer möglicherweise Break-Glass oder Notfallzugriff auf vertrauliche Ressourcen, um einen Vorfall zu beheben.
In diesen Fällen sollten Sie dem Nutzer vorübergehend Zugriff auf die Ressource gewähren. Wir empfehlen außerdem, zur Vereinfachung der Prüfung die Begründung des Nutzers für den Zugriff auf die Ressource aufzuzeichnen.
In Google Cloud können Sie diese Art von temporärem erweiterten Zugriff auf verschiedene Arten verwalten.
Google-Gruppen
Eine Möglichkeit, den temporären erhöhten Zugriff zu verwalten, besteht darin, einer Google-Gruppe Zugriff auf vertrauliche Ressourcen zu gewähren und dann dieser Gruppe Nutzer hinzuzufügen oder daraus zu entfernen, um den Zugriff zu steuern.
Wenn Sie eine Google-Gruppe für vorübergehenden erweiterten Zugriff einrichten möchten, erstellen Sie zuerst eine Gruppe und weisen Sie ihr dann die Rollen zu, die Sie den Nutzern vorübergehend zuweisen möchten. Wenn Sie Ablehnungsrichtlinien verwenden, sollten Sie die Gruppe auch von allen relevanten Ablehnungsregeln ausnehmen, um unerwartete Ablehnungen zu vermeiden.
Nachdem Sie Ihre Gruppe eingerichtet haben, können Sie Nutzer hinzufügen und entfernen, um ihren Zugriff zu ändern. Wenn Sie die Google Groups API verwenden, können Sie Nutzer mithilfe der Ablaufzeit von Mitgliedschaften vorübergehend einer Gruppe hinzufügen.
Wenn Sie die Begründungen des Nutzers für den Zugriff auf vertrauliche Ressourcen aufzeichnen möchten, müssen Sie Ihre eigenen operativen Prozesse und Tools festlegen.
Wenn Sie beispielsweise den Notfallzugriff auf Compute Engine-Ressourcen verwalten möchten, können Sie die Gruppe emergency-compute-access@example.com
erstellen und ihr die Rolle „Compute Admin“ (roles/compute.admin
) zuweisen. Wenn ein Nutzer Notfall-Administratorzugriff auf Compute-Ressourcen benötigt, können Sie ihn der Gruppe emergency-compute-access@example.com
hinzufügen. Nachdem der Notfall gelöst wurde, können Sie ihn aus der Gruppe entfernen.
IAM-Bedingungen
Sie können IAM Conditions verwenden, um Nutzern ablaufenden Zugriff auf Google Cloud-Ressourcen zu gewähren. Weitere Informationen finden Sie unter Temporären Zugriff konfigurieren.
Wenn Sie die Begründungen des Nutzers für den Zugriff auf vertrauliche Ressourcen aufzeichnen möchten, müssen Sie Ihre eigenen operativen Prozesse und Tools festlegen.
Abgelaufene Rollenbindungen werden nicht automatisch aus den Zulassungsrichtlinien entfernt. Damit Ihre Zulassungsrichtlinien die maximale Größe für Zulassungsrichtlinien nicht überschreiten, empfehlen wir, abgelaufene Rollenbindungen regelmäßig zu entfernen.
Ablehnungsrichtlinien unterstützen keine zeitbasierten Bedingungen. Daher können Sie Bedingungen in Ablehnungsrichtlinien nicht verwenden, um einen Nutzer vorübergehend von einer Ablehnungsregel auszuschließen.
Just-in-Time-Zugriff
Just-In-Time-Zugriff ist eine Open-Source-Anwendung, die IAM Conditions verwendet, um Nutzern Just-in-Time-Zugriff auf Google Cloud-Ressourcen zu gewähren. Diese Anwendung ist für die Ausführung in App Engine oder Cloud Run vorgesehen.
Diese Anwendung hat die folgenden Vorteile gegenüber dem manuellen Hinzufügen bedingter Rollenbindungen:
- Nutzer können nach Rollen suchen, die sie mit Just-In-Time-Zugriff aktivieren können.
- Nutzer müssen eine Begründung angeben, bevor sie Zugriff erhalten.
- Die Anwendung ersetzt die vorhandene bedingte Bindung, anstatt neue Bindungen zu erstellen. Dadurch wird die Größe Ihrer IAM-Zulassungsrichtlinie beibehalten.
Weitere Informationen zum Just-in-Time-Zugriff finden Sie unter Just-in-Time-Zugriff auf Projekte verwalten.
Identitätsübertragung für ein Dienstkonto
Wenn sich ein authentifiziertes Hauptkonto, z. B. ein Nutzer oder ein anderes Dienstkonto, als ein Dienstkonto authentifiziert, um die Berechtigungen des Dienstkontos zu erhalten, wird dies als Identitätsübernahme des Dienstkontos bezeichnet. Wenn Sie die Identität eines Dienstkontos übernehmen, kann ein authentifiziertes Hauptkonto auf alles zugreifen, auf das das Dienstkonto zugreifen kann. Nur authentifizierte Hauptkonten mit den entsprechenden Berechtigungen können die Identität von Dienstkonten übernehmen.
Wenn Sie ein Dienstkonto für den vorübergehend erhöhten Zugriff einrichten möchten, erstellen Sie das Dienstkonto und weisen Sie ihm die Rollen zu, die Sie vorübergehend einem Nutzer zuweisen möchten. Wenn Sie Ablehnungsrichtlinien verwenden, sollten Sie eventuell das Dienstkonto von allen relevanten Ablehnungsregeln ausnehmen, um unerwartete Ablehnungen zu vermeiden.
Nachdem Sie das Dienstkonto eingerichtet haben, können Sie Nutzern vorübergehend erweiterten Zugriff gewähren, indem Sie ihnen die Identitätsübernahme des Dienstkontos erlauben. Es gibt mehrere Möglichkeiten, Nutzern die Übernahme der Identität von Dienstkonten zu ermöglichen:
Gewähren Sie Nutzern eine Rolle, mit der sie kurzlebige Anmeldedaten für das Dienstkonto erstellen können. Nutzer können dann mit den kurzlebigen Anmeldedaten eine Identitätsübernahme des Dienstkontos durchführen.
Weisen Sie die Rolle „Ersteller des OpenID Connect-Identitätstokens für das Dienstkonto“ (
roles/iam.serviceAccountOpenIdTokenCreator
) zu, damit der Nutzer kurzlebige OIDC-ID-Tokens (OpenID Connect) für das Dienstkonto erstellen kann.Weisen Sie die Rolle „Ersteller von Dienstkonto-Tokens" (
roles/iam.serviceAccountTokenCreator
) zu, damit der Nutzer die folgenden Arten von Anmeldedaten für Dienstkonten erstellen kann:- OAuth 2.0-Zugriffstokens erstellen, die Sie zur Authentifizierung bei Google APIs verwenden können.
- OIDC-ID-Tokens.
- Signierte JSON-Web-Tokens (JWTs) und binäre Blobs.
Wenn Sie einem Nutzer eine dieser Rollen zuweisen, kann er die Identität des Dienstkontos jederzeit übernehmen, um seinen eigenen Zugriff zu erhöhen. Es ist jedoch weniger wahrscheinlich, dass er versehentlich auf vertrauliche Ressourcen zugreift oder diese ändert.
Informationen zum Übernehmen der Identität von Dienstkonten finden Sie unter Identitätsübernahme des Dienstkontos verwenden.
Erstellen Sie einen Token-Broker-Dienst, der Nutzern kurzlebige Anmeldedaten für das Dienstkonto bereitstellt, nachdem sie sich authentifiziert und eine Begründung angegeben haben. Nutzer können dann mit den kurzlebigen Anmeldedaten eine Identitätsübernahme des Dienstkontos durchführen.
Bei dieser Methode können Sie entscheiden, wann Nutzer die Identität des Dienstkontos übernehmen dürfen.
Informationen zum Erstellen kurzlebiger Anmeldedaten finden Sie unter Kurzlebige Anmeldedaten für ein Dienstkonto erstellen.
Weitere Informationen zur Übernahme der Identität von Dienstkonten finden Sie unter Identitätsübernahme des Dienstkontos.
Nächste Schritte
- Verwenden Sie IAM-Bedingungen, um einem Hauptkonto temporären Zugriff zu gewähren.
- Die Just-In-Time-Zugriffsanwendung bereitstellen.
- Kurzlebige Anmeldedaten manuell erstellen, um die Identität eines Dienstkontos zu übernehmen.