Mit der erneuten IAP-Authentifizierung können Dienst- und Anwendungsinhaber oder Google Cloud Administratoren festlegen, dass sich authentifizierte Endnutzer nach einer bestimmten Zeit neu authentifizieren müssen, wenn sie auf einen durch IAP geschützten Dienst oder eine durch IAP geschützte Anwendung zugreifen. Außerdem können sie begrenzen, wie lange ein Nutzer auf einen durch IAP geschützten Dienst oder eine durch IAP geschützte Anwendung zugreifen kann, bevor eine Authentifizierung erforderlich ist.
Die erneute IAP-Authentifizierung (oder Reauth) wurde entwickelt, um Richtlinien für die erneute Authentifizierung für durch IAP geschützte Dienste und Anwendungen (oder Apps) zu erzwingen. Mit diesem Dienst können Sie Richtlinien für die erneute Authentifizierung für kritische Dienste und Anwendungen erzwingen, die vertrauliche Informationen verarbeiten. Sie können beispielsweise festlegen, dass sich Nutzer, die auf eine kritische HR-Anwendung zugreifen, stündlich mit einem zweiten Faktor neu authentifizieren müssen.
Unterstützte Methoden zur erneuten Authentifizierung
Sie können folgende Methoden verwenden, um die Einstellungen für die erneute Authentifizierung zu verwalten:
- Anmeldung: Endnutzer authentifizieren sich mit ihren Anmeldedaten neu.
- Sicherer Schlüssel: Endnutzer authentifizieren sich mit ihrem konfigurierten Sicherheitsschlüssel neu.
- Registrierte zweite Faktoren: Endnutzer authentifizieren sich mit einem ihrer registrierten zweiten Faktoren neu.
Weitere Informationen finden Sie unter IapSettings.
Richtlinie zur erneuten Authentifizierung einrichten
Die reauthSettings sind in IapSettings enthalten und können für jeden
Ressourcentyp in der
Ressourcenhierarchie festgelegt werden. Sie können reauthSettings auf Organisations-, Ordner-, Projekt- oder Dienstebene festlegen, um Einschränkungen anzuwenden. Sie können beispielsweise die Sitzungslänge für alle Anwendungen in einer Organisation oder für eine bestimmte Anwendung auf maximal eine Stunde begrenzen.
Es gibt zwei Richtlinientypen, mit denen Sie die erneute Authentifizierung festlegen können:
Minimum: Wenn der Richtlinientyp für eine Ressource wie eine Organisation auf
MINIMUMfestgelegt ist, werden die beiden Einstellungen zusammengeführt, wenn die Einstellungen für die erneute Authentifizierung für die Ressource auf niedrigerer Ebene, z. B. einen Ordner, ausgewertet werden. Wenn für die Ressource auf niedrigerer Ebene keine Einstellungen für die erneute Authentifizierung vorhanden sind, sind die Einstellungen der Ressource auf höherer Ebene das Ergebnis der Zusammenführung. Andernfalls werden bei der Zusammenführung die kürzere Sitzungsdauer und die Methode zur erneuten Authentifizierung mit der höheren Priorität zwischen den beiden Ressourcen verwendet. Der resultierende zusammengeführte Richtlinientyp wird aufMINIMUMfestgelegt.Standard: Wenn der Richtlinientyp für eine Ressource wie eine Organisation auf
DEFAULTfestgelegt ist, wird bei der Auswertung der Einstellung für die erneute Authentifizierung für die Ressource auf niedrigerer Ebene, z. B. einen Ordner, die Einstellung für die Ressource auf niedrigerer Ebene verwendet, sofern konfiguriert. Andernfalls wird die Einstellung für die erneute Authentifizierung der Ressource auf höherer Ebene angewendet.
Für beide Richtlinientypen wird der Auswertungsprozess wiederholt, um die reauthSettings für den Zieldienst oder die Zielanwendung zu ermitteln. Die effektiven reauthSettings auf jeder Ebene werden so ermittelt:
Vererbung: Die Einstellungen der Ressource auf höherer Ebene werden mit den Einstellungen der Ressource auf niedrigerer Ebene zusammengeführt.
Zusammenführungsregeln: Wenn für die Ressource auf niedrigerer Ebene keine spezifischen Einstellungen für die erneute Authentifizierung vorhanden sind, werden die Einstellungen von der höheren Ebene übernommen.
Wenn beide Ebenen
reauthSettingshaben, werden für das zusammengeführte Ergebnis die folgenden Einstellungen verwendet:- Die kürzere Sitzungsdauer.
- Die Methode zur erneuten Authentifizierung mit der höheren Priorität.
- Die Priorität ist
Secure key(höchste),Enrolled second factors(mittel) undLogin(niedrigste).
Resultierender Richtlinientyp: Der Richtlinientyp der zusammengeführten Einstellungen ist
MINIMUM.
In den folgenden Beispielen werden die Einstellungen vor und nach der Auswertung gezeigt. Bei der Auswertung werden die reauthSettings des Ordners und der Organisation zusammengeführt, wodurch der Richtlinientyp des Ordners in MINIMUM geändert wird. Die zusammengeführten Einstellungen werden dann verwendet, um sie mit den reauthSettings des Dienstes oder der Anwendung zusammenzuführen.
Organisation IapSettings:
accessSettings:
reauthSettings:
method: "ENROLLED_SECOND_FACTORS"
maxAge: "3600s"
policyType: "MINIMUM"
Ordner IapSettings:
accessSettings:
reauthSettings:
method: "LOGIN"
maxAge: "1200s"
policyType: "DEFAULT"
Dienst oder Anwendung IapSettings:
accessSettings:
reauthSettings:
method: "SECURE_KEY"
maxAge: "7200s"
policyType: "DEFAULT"
Einstellungen nach der Zusammenführung:
Organisation IapSettings:
accessSettings:
reauthSettings:
method: "ENROLLED_SECOND_FACTORS"
maxAge: "3600s"
policyType: "MINIMUM"
Ordner IapSettings:
accessSettings:
reauthSettings:
method: "ENROLLED_SECOND_FACTORS"
maxAge: "1200s"
policyType: "MINIMUM"
Dienst oder Anwendung IapSettings:
accessSettings:
reauthSettings:
method: "SECURE_KEY"
maxAge: "1200s"
policyType: "MINIMUM"
Wenn in diesem Beispiel der Richtlinientyp jeder Ressource auf DEFAULT festgelegt ist, werden die reauthSettings des Dienstes oder der Anwendung verwendet.
MaxAge
Verwenden Sie den Parameter maxAge, um anzugeben, wie oft ein Endnutzer sich neu authentifizieren muss. Dieser wird in Sekunden angegeben. Zum Festlegen einer Richtlinie für eine erneute Authentifizierung von einer Stunde setzen Sie beispielsweise den Sekundenwert auf 3.600, wie im folgenden Beispiel gezeigt:
accessSettings:
reauthSettings:
method: "LOGIN"
maxAge: "3600s"
policyType: "MINIMUM"
Der Mindestwert für maxAge beträgt 300 Sekunden oder fünf Minuten.
So legen Sie eine Richtlinie für die erneute Authentifizierung fest:
Console
- Zur Seite „IAP“.
Zur Seite "Identity-Aware Proxy" Wählen Sie ein Projekt und dann die Ressource aus, für die Sie eine Richtlinie für die erneute Authentifizierung festlegen möchten.
Öffnen Sie die Einstellungen für die Ressource und wählen Sie unter Richtlinie für die erneute Authentifizierung die Option Erneute Authentifizierung konfigurieren aus.
Geben Sie die Einstellungen für die erneute Authentifizierung an und klicken Sie dann auf Speichern.
gcloud
Sie können eine Richtlinie für die erneute Authentifizierung für Ressourcen und Dienste auf Organisations-, Projekt- und Ordnerebene festlegen. Im Folgenden finden Sie einige Beispielbefehle zum Festlegen einer Richtlinie für die erneute Authentifizierung.
Weitere Informationen finden Sie unter gcloud iap settings set.
Führen Sie dazu diesen Befehl aus:
gcloud iap settings set SETTING_FILE [--organization=ORGANIZATION --folder=FOLDER --project=/PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
Führen Sie den folgenden Befehl aus, um eine Richtlinie für die erneute Authentifizierung für die Ressourcen in einer Organisation festzulegen:
gcloud iap settings set SETTING_FILE --organization=ORGANIZATION
Führen Sie den folgenden Befehl aus, um eine Richtlinie für die erneute Authentifizierung für die Ressourcen in einem Ordner festzulegen:
gcloud iap settings set SETTING_FILE --folder=FOLDER
Führen Sie den folgenden Befehl aus, um eine Richtlinie für die erneute Authentifizierung für alle Ressourcen vom Typ „Web“ in einem Projekt festzulegen:
gcloud iap settings set SETTING_FILE --project=PROJECT --resource-type=iap_web
Führen Sie den folgenden Befehl aus, um eine Richtlinie für die erneute Authentifizierung für einen App Engine-Dienst in einem Projekt festzulegen:
gcloud iap settings set SETTING_FILE --project=PROJECT --resource-type=app-engine --service=SERVICE
Dabei gilt:SETTING_FILE
accessSettings:
reauthSettings:
method: "LOGIN"
maxAge: "3600s"
policyType: "MINIMUM"
Ersetzen Sie Folgendes:
- FOLDER: Die Ordner-ID.
- ORGANIZATION: Die Organisations-ID.
- PROJECT: Die Projekt-ID.
- RESOURCE_TYPE: Der IAP-Ressourcentyp. Muss
app-engine,iap_web,compute,organizationoderfoldersein. - SERVICE: Der Dienstname. Dieser Parameter ist optional, wenn
resource-typeaufcomputeoderapp-enginefestgelegt ist. - VERSION: Der Versionsname. Dieser Parameter ist für den Ressourcentyp
computenicht anwendbar und für den Ressourcentypapp-engineoptional.
API
Führen Sie den folgenden Befehl aus, um eine iap_settings.json-Datei vorzubereiten: Aktualisieren Sie die Werte nach Bedarf.
cat << EOF > iap_settings.json
{
"access_settings": {
"reauth_settings": {
"method": "LOGIN",
"maxAge": "300s",
"policy_type": "DEFAULT"
}
}
}
EOF
Rufen Sie den Ressourcennamen mit dem Befehl gcloud iap settings get ab. Kopieren Sie das Feld „name“ aus der Ausgabe. Sie benötigen den Namen im nächsten Schritt.
gcloud iap settings get [--organization=ORGANIZATION --folder=FOLDER --project=/PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION]
Ersetzen Sie RESOURCE_NAME im folgenden Befehl durch den Namen aus dem vorherigen Schritt. Die IapSettings werden aktualisiert.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @iap_settings.json \ "https://iap.googleapis.com/v1/RESOURCE_NAME:iapSettings?updateMask=iapSettings.accessSettings.reauthSettings"
Informationen zu den Anmeldedaten für die erneute Authentifizierung
Nach einer erfolgreichen erneuten Authentifizierung erstellt IAP ein Cookie im Browser des Endnutzers. Damit die erneute Authentifizierung für Anwendungen in derselben Domain nicht zu häufig erforderlich ist, wird das Cookie für die private Top-Level-Domain festgelegt und ist für die gesamte Domain gültig.
foo.example.com ist beispielsweise eine durch IAP geschützte Ressource und hat eine IAP-Richtlinie zur erneuten Authentifizierung. Nach einer erfolgreichen erneuten Authentifizierung legt IAP ein Cookie für example.com fest, da dies die private Top-Level-Domain ist. Anwendungen von derselben privaten Top-Level-Domain wie bar.example.com verwenden dieselben Anmeldedaten zur erneuten Authentifizierung und der Nutzer wird nicht aufgefordert, sich noch einmal zu authentifizieren, solange die Anmeldedaten gültig sind.
Bei URLs wie myapp.appspot.com ist appspot.com eine öffentliche
Domain. Daher ist die private Top-Level-Domain myapp.appspot.com.
Bekannte Einschränkungen
- Die erneute Authentifizierung wird nur für Browserabläufe unterstützt. Der programmatische Zugriff auf Nutzerkonten wird nicht unterstützt. Beispielsweise können mobile und Desktop-Anwendungen Nutzer nicht neu authentifizieren, da die Ressourcen, die eine erneute Authentifizierung erfordern, für diese Anwendungen nicht zugänglich sind.
- Dienstkonten und IAP-TCP sind von den Anforderungen zur erneuten Authentifizierung ausgenommen.
- Die erneute Authentifizierung funktioniert nicht mit dem Identity and Access Management-Mitgliedstyp
allUsers. - Externe Identitäten wie OAuth und SAML werden für die erneute Authentifizierung nicht unterstützt.
- Identitäten der Mitarbeiteridentitätsföderation werden für die erneute IAP-Authentifizierung nicht unterstützt.