Zugriff zum Aufrufen und Verwalten von Funktionen steuern
Erfahren Sie, wie Sie die Funktionen steuern, die Benutzer in OCI Functions aufrufen und verwalten können.
Wenn Sie einen Mandanten für die Funktionsentwicklung konfigurieren, geben Sie die folgende Identitäts-Policy-Anweisung an (wie in Policy-Anweisungen, die OCI Functions-Benutzern Zugriff auf funktionsbezogene Ressourcen erteilen beschrieben):
Allow group <group-name> to manage functions-family in compartment <compartment-name>
Mit dieser Identitäts-Policy können authentifizierte Benutzer in der angegebenen Gruppe Funktionen und Anwendungen im benannten Compartment verwalten (d.h. erstellen, aktualisieren und löschen). Außerdem können diese Benutzer Funktionen im Compartment aufrufen. Diese Policy erfüllt im Allgemeinen die Anforderungen von Funktionsentwicklern, die mehrere Funktionen in Ihrer Organisation entwickeln und testen.
Diese Identitäts-Policy ist jedoch möglicherweise zu zulässig, um Ihre Sicherheitsanforderungen zur Steuerung des Aufrufs und der Verwaltung von Funktionen in Produktionsumgebungen zu erfüllen. Beispiel: Möglicherweise möchten Sie in einer Produktionsumgebung Benutzer daran hindern, Funktionen vollständig aufzurufen, oder Benutzer darauf beschränken, nur Funktionen in einer bestimmten Anwendung aufzurufen oder nur eine bestimmte Funktion aufzurufen.
Wenn Sie ein privates Subnetz für eine Anwendung angeben, wird der Zugriff vom Internet auf die Aufrufendpunkte von Funktionen in der Anwendung nicht verhindert. Mit Identitäts-Policys können Sie den Zugriff auf Funktionsaufrufendpunkte kontrollieren, wie in diesem Thema beschrieben.
Um die Funktionen zu kontrollieren, die Benutzer in einer Gruppe aufrufen und verwalten können, richten Sie Identitäts-Policys ein:
-
Um die Funktionen zu steuern, die ein Benutzer aufrufen und verwalten kann, vergewissern Sie sich, dass er nicht Mitglied einer Gruppe ist, der die Berechtigung
manage functions-family
erteilt wurde. - Wenn Sie Benutzern in einer Gruppe das Erstellen, Aktualisieren und Löschen von Anwendungen und Funktionen in einem Compartment erlauben, ihnen aber keine Berechtigung zum Aufrufen von Funktionen erteilen möchten, geben Sie die folgenden Policy-Anweisungen ein:
Allow group <group-name> to manage fn-app in compartment <compartment-name>
Allow group <group-name> to manage fn-function in compartment <compartment-name>
-
Wenn Sie nur Aufrufe bestimmter Funktionen oder nur Aufrufe von Funktionen in bestimmten Anwendungen zulassen möchten, nehmen Sie die entsprechenden Funktions- und Anwendungs-OCIDs in geeignete Policy-Anweisungen auf. Beispiel:
- Um Benutzern das Aufrufen aller Funktionen in einer bestimmten Anwendung zu ermöglichen, geben Sie eine Policy-Anweisung im folgenden Format ein:
Allow group <group-name> to use fn-invocation in compartment <compartment-name> where target.app.id = '<application-OCID>'
- Um Benutzern das Aufrufen einer bestimmten Funktion zu ermöglichen, geben Sie eine Policy-Anweisung im folgenden Format ein:
Allow group <group-name> to use fn-invocation in compartment <compartment-name> where target.function.id = '<function-OCID>'
- Um Benutzern das Aufrufen aller Funktionen in allen Anwendungen mit Ausnahme von Funktionen in einer bestimmten Anwendung zu ermöglichen, geben Sie eine Policy-Anweisung im folgenden Format ein:
Allow group <group-name> to use fn-invocation in compartment <compartment-name> where target.app.id != '<application-OCID>'
- Um Benutzern das Aufrufen aller Funktionen in einem Compartment mit Ausnahme einer bestimmten Funktion zu ermöglichen, geben Sie eine Policy-Anweisung im folgenden Format ein:
Allow group <group-name> to use fn-invocation in compartment <compartment-name> where target.function.id != '<function-OCID>'
- Um Benutzern das Aufrufen zwei bestimmter Funktionen zu ermöglichen, geben Sie eine Policy-Anweisung im folgenden Format ein:
Allow group <group-name> to use fn-invocation in compartment <compartment-name> where ANY {target.function.id='<function-OCID>', target.function.id='<function-OCID>'}
- Um Benutzern das Aufrufen einer bestimmten Funktion zusammen mit allen Funktionen in einer bestimmten Anwendung zu ermöglichen, geben Sie eine Policy-Anweisung im folgenden Format ein:
Allow group <group-name> to use fn-invocation in compartment <compartment-name> where ANY {target.function.id='<function-OCID>', target.app.id='<application-OCID>'}
- Um Benutzern das Aufrufen aller Funktionen in einer bestimmten Anwendung zu ermöglichen, geben Sie eine Policy-Anweisung im folgenden Format ein:
-
Wenn Sie Funktionsaufruf- und Verwaltungsanforderungen nur von bestimmten IP-Adressen zulassen möchten:
- Erstellen Sie eine Netzwerkquelle, um die zulässigen IP-Adressen anzugeben, wenn noch keine geeignete Netzwerkquelle vorhanden ist (siehe https://docs.oracle.com/iaas/Content/Identity/Tasks/managingnetworksources.htm).
-
Fügen Sie eine Policy-Anweisung hinzu, damit nur diese IP-Adressen in der Netzwerkquelle Funktionen aufrufen oder verwalten können. Beispiel:
-
Um nur Funktionsaufrufanforderungen von IP-Adressen zuzulassen, die in einer Netzwerkquelle mit dem Namen
corpnet
definiert sind, geben Sie eine Policy-Anweisung im folgenden Format ein:Allow group <group-name> to use fn-invocation in compartment <compartment-name> where request.networkSource.name='corpnet'
-
Um nur Funktionsverwaltungsanforderungen von IP-Adressen zuzulassen, die in einer Netzwerkquelle mit dem Namen
corpnet
definiert sind, geben Sie eine Policy-Anweisung im folgenden Format ein:Allow group <group-name> to manage functions-family in compartment <compartment-name> where request.networkSource.name='corpnet'
-