Amazon Cognito anmelden AWS CloudTrail - Amazon Cognito

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Amazon Cognito anmelden AWS CloudTrail

Amazon Cognito ist in einen Service integriert AWS CloudTrail, der eine Aufzeichnung der Aktionen bereitstellt, die von einem Benutzer, einer Rolle oder einem AWS Service in Amazon Cognito ausgeführt wurden. CloudTrail erfasst eine Teilmenge von API-Aufrufen für Amazon Cognito als Ereignisse, einschließlich Aufrufe von der Amazon Cognito Cognito-Konsole und von Codeaufrufen an die Amazon Cognito Cognito-API-Operationen. Wenn Sie einen Trail erstellen, können Sie wählen, ob CloudTrail Ereignisse an einen Amazon S3-Bucket gesendet werden sollen, einschließlich Ereignisse für Amazon Cognito. Wenn Sie keinen Trail konfigurieren, können Sie die neuesten Ereignisse trotzdem in der CloudTrail Konsole im Ereignisverlauf anzeigen. Anhand der von gesammelten Informationen können Sie die Anfrage CloudTrail, die an Amazon Cognito gestellt wurde, die IP-Adresse, von der aus die Anfrage gestellt wurde, wer die Anfrage gestellt hat, wann sie gestellt wurde, und weitere Details ermitteln.

Weitere Informationen darüber CloudTrail, einschließlich der Konfiguration und Aktivierung, finden Sie im AWS CloudTrail Benutzerhandbuch.

Sie können auch CloudWatch Amazon-Alarme für bestimmte CloudTrail Ereignisse erstellen. Sie können beispielsweise CloudWatch -Alarme einrichten, um bei Änderung einer Identitäten-Pool-Konfiguration einen Alarm auszulösen. Weitere Informationen finden Sie unter CloudWatch Alarme für CloudTrail Ereignisse erstellen: Beispiele.

Informationen, an die Amazon Cognito sendet CloudTrail

CloudTrail ist aktiviert, wenn Sie Ihre AWS-Konto erstellen. Wenn unterstützte Ereignisaktivitäten in Amazon Cognito auftreten, wird diese Aktivität zusammen mit anderen AWS Serviceereignissen im CloudTrail Ereignisverlauf in einem Ereignis aufgezeichnet. Sie können aktuelle Ereignisse in Ihrem AWS Konto anzeigen, suchen und herunterladen. Weitere Informationen finden Sie unter Ereignisse mit CloudTrail Ereignisverlauf anzeigen.

Für eine fortlaufende Aufzeichnung von Ereignissen in Ihrem AWS Konto, einschließlich Ereignissen für Amazon Cognito, erstellen Sie einen Trail. Ein CloudTrail Trail liefert Protokolldateien an einen Amazon S3 S3-Bucket. Wenn Sie ein Trail in der Konsole anlegen, gilt dieser für alle Regionen. Der Trail protokolliert Ereignisse aus allen Regionen der AWS Partition und übermittelt die Protokolldateien an den von Ihnen angegebenen Amazon S3 S3-Bucket. Darüber hinaus können Sie andere AWS Dienste konfigurieren, um die in den CloudTrail Protokollen gesammelten Ereignisdaten weiter zu analysieren und darauf zu reagieren. Weitere Informationen finden Sie unter:

Jeder Ereignis- oder Protokolleintrag enthält Informationen zu dem Benutzer, der die Anforderung generiert hat. Die Identitätsinformationen unterstützen Sie bei der Ermittlung der folgenden Punkte:

  • Gibt an, ob die Anforderung mit Root- oder IAM-Benutzer-Anmeldeinformationen ausgeführt wurde.

  • Gibt an, ob die Anforderung mit temporären Sicherheitsanmeldeinformationen für eine Rolle oder einen Verbundbenutzer gesendet wurde.

  • Ob die Anfrage von einem anderen AWS Dienst gestellt wurde.

Weitere Informationen finden Sie unter CloudTrail -Element userIdentity.

Vertrauliche Daten in AWS CloudTrail

Da Benutzerpools und Identitätspools Benutzerdaten verarbeiten, verdeckt Amazon Cognito einige private Felder in Ihren CloudTrail Veranstaltungen mit dem Wert. HIDDEN_FOR_SECURITY_REASONS Beispiele für Felder, die Amazon Cognito bei Ereignissen nicht ausfüllt, finden Sie unter Beispiele für Amazon Cognito Cognito-Ereignisse. Amazon Cognito verdeckt nur einige Felder, die üblicherweise Benutzerinformationen enthalten, wie Passwörter und Token. Amazon Cognito führt keine automatische Erkennung oder Maskierung von personenbezogenen Daten durch, die Sie in Ihren API-Anforderungen in nicht private Felder eingeben.

Ereignisse im Benutzerpool

Amazon Cognito unterstützt die Protokollierung aller Aktionen, die auf der Seite Benutzerpool-Aktionen aufgeführt sind, als Ereignisse in CloudTrail Protokolldateien. Amazon Cognito protokolliert Benutzerpool-Ereignisse CloudTrail als Verwaltungsereignisse.

Das eventType Feld in einem Amazon Cognito CloudTrail Cognito-Benutzerpool-Eintrag gibt an, ob Ihre App die Anfrage an die Amazon Cognito Cognito-Benutzerpools-API oder an einen Endpunkt gestellt hat, der Ressourcen für OpenID Connect, SAML 2.0 oder verwaltete Anmeldeseiten bereitstellt. API-Anfragen haben den eventType AwsApiCall und Endpunktanfragen den eventType AwsServiceEvent.

Amazon Cognito protokolliert die folgenden Anfragen an Ihre verwalteten Anmeldedienste als Ereignisse in CloudTrail.

Hosted UI (classic) events
Gehostete UI-Ereignisse (klassisch) in CloudTrail
Operation Beschreibung
Login_GET, CognitoAuthentication Ein Benutzer sieht Ihre Anmeldeinformationen an oder sendet sie an Ihren Login-Endpunkt.
OAuth2_Authorize_GET, Beta_Authorize_GET Ein Benutzer sieht Ihren Autorisieren des Endpunkts an.
OAuth2Response_GET, OAuth2Response_POST Ein Benutzer sendet ein IdP-Token an Ihren /oauth2/idpresponse-Endpunkt.
SAML2Response_POST, Beta_SAML2Response_POST Ein Benutzer sendet eine IdP-SAML-Zusicherung an Ihren /saml2/idpresponse-Endpunkt.
Login_OIDC_SAML_POST Ein Benutzer gibt einen Benutzernamen in Ihrem Login-Endpunkt ein und stimmt mit einer IdP-Kennung überein.
Token_POST, Beta_Token_POST Ein Benutzer sendet einen Autorisierungscode an Ihren Token-Endpunkt.
Signup_GET, Signup_POST Ein Benutzer sendet Anmeldeinformationen an Ihren /signup-Endpunkt.
Confirm_GET, Confirm_POST Ein Benutzer sendet in der gehosteten UI einen Bestätigungscode.
ResendCode_POST Ein Benutzer sendet eine Anfrage zum erneuten Senden eines Bestätigungscodes in der gehosteten UI.
ForgotPassword_GET, ForgotPassword_POST Ein Benutzer sendet eine Anfrage zum Zurücksetzen seines Passworts an Ihren /forgotPassword-Endpunkt.
ConfirmForgotPassword_GET, ConfirmForgotPassword_POST Ein Benutzer sendet einen Code an Ihren /confirmForgotPassword-Endpunkt, der seine ForgotPassword-Anfrage bestätigt.
ResetPassword_GET, ResetPassword_POST Ein Benutzer sendet in der gehosteten UI ein neues Passwort.
Mfa_GET, Mfa_POST Ein Benutzer sendet einen Code zur Multi-Faktor-Authentifizierung (MFA) in der gehosteten UI.
MfaOption_GET, MfaOption_POST Ein Benutzer wählt seine bevorzugte Methode für MFA in der gehosteten UI.
MfaRegister_GET, MfaRegister_POST Ein Benutzer sendet bei der Registrierung der MFA einen Code zur Multi-Faktor-Authentifizierung (MFA) in der gehosteten UI.
Logout Ein Benutzer meldet sich bei Ihrem /logout-Endpunkt ab.
SAML2Logout_POST Ein Benutzer meldet sich bei Ihrem /saml2/logout-Endpunkt ab.
Error_GET Ein Benutzer sieht eine Fehlerseite in der gehosteten UI.
UserInfo_GET, UserInfo_POST Ein Benutzer oder IdP tauscht Informationen mit Ihrem UserInfo-Endpunkt aus.
Confirm_With_Link_GET Ein Benutzer sendet eine Bestätigung, die auf einem Link basiert, den Amazon Cognito in einer E-Mail-Nachricht gesendet hat.
Event_Feedback_GET Ein Benutzer gibt Feedback an Amazon Cognito zu einem Ereignis mit erweiterten Sicherheitsfunktionen.
Managed login events
Verwaltete Anmeldeereignisse in CloudTrail
Operation Beschreibung
login_POST Ein Benutzer sendet Anmeldeinformationen an IhreLogin-Endpunkt.
login_continue_POST Ein Benutzer, der sich bereits einmal angemeldet hat, entscheidet sich dafür, sich erneut anzumelden.
selectChallenge_POST Ein Benutzer reagiert auf eine Authentifizierungsanfrage, nachdem er seinen Benutzernamen oder seine Anmeldeinformationen eingegeben hat.
confirmUser_GET Ein Benutzer öffnet den Link in einer Bestätigungs- oder Bestätigungs-E-Mail.
mfa_back_POST Ein Benutzer wählt nach einer MFA-Aufforderung die Schaltfläche Zurück.
mfa_options_POST Ein Benutzer wählt eine MFA-Option aus.
mfa_phone_register_POST Ein Benutzer reicht eine Telefonnummer ein, um sich als MFA-Faktor zu registrieren. Dieser Vorgang veranlasst Amazon Cognito, einen MFA-Code an ihre Telefonnummer zu senden.
mfa_phone_verify_POST Ein Benutzer sendet einen MFA-Code, der an seine Telefonnummer gesendet wurde.
mfa_phone_resendCode_POST Ein Benutzer sendet eine Anfrage, um einen MFA-Code erneut an seine Telefonnummer zu senden.
mfa_totp_POST Ein Benutzer reicht einen TOTP-MFA-Code ein.
signup_POST Ein Benutzer sendet Informationen an Ihre /signup verwaltete Anmeldeseite.
signup_confirm_POST Ein Benutzer sendet einen Bestätigungscode aus einer E-Mail- oder SMS-Nachricht.
verifyCode_POST Ein Benutzer übermittelt ein Einmalkennwort (OTP) für die kennwortlose Authentifizierung.
passkeys_add_POST Ein Benutzer sendet eine Anfrage zur Registrierung eines neuen Hauptschlüssels.
passkeys_add_GET Ein Benutzer navigiert zu der Seite, auf der er einen Hauptschlüssel registrieren kann.
login_passkey_POST Ein Benutzer meldet sich mit einem Hauptschlüssel an.
Anmerkung

Amazon Cognito zeichnet Anfragen auf, die für einen Benutzer spezifisch sind, UserSub jedoch nicht UserName in CloudTrail Protokollen. Sie können einen Benutzer für ein bestimmtes UserSub finden, indem Sie die ListUsers-API aufrufen und einen Filter für sub verwenden.

Identitätspools von Ereignissen

Datenereignisse

Amazon Cognito protokolliert die folgenden Amazon Cognito Identity-Ereignisse CloudTrail als Datenereignisse. Datenereignisse sind API-Operationen mit hohem Volumen auf Datenebene, die standardmäßig CloudTrail nicht protokolliert werden. Für Datenereignisse werden zusätzliche Gebühren fällig.

Um CloudTrail Protokolle für diese API-Operationen zu generieren, müssen Sie Datenereignisse in Ihrem Trail aktivieren und Event-Selektoren für Cognito-Identitätspools auswählen. Weitere Informationen finden Sie unter Protokollieren von Datenereignissen für Trails im AWS CloudTrail -Benutzerhandbuch.

Mit dem folgenden CLI-Befehl können Sie Ihrem Trail auch Ereignisselektoren für Identitätspools hinzufügen.

aws cloudtrail put-event-selectors --trail-name <trail name> --advanced-event-selectors \ "{\ \"Name\": \"Cognito Selector\",\ \"FieldSelectors\": [\ {\ \"Field\": \"eventCategory\",\ \"Equals\": [\ \"Data\"\ ]\ },\ {\ \"Field\": \"resources.type\",\ \"Equals\": [\ \"AWS::Cognito::IdentityPool\"\ ]\ }\ ]\ }"

Verwaltungsereignisse

Amazon Cognito protokolliert die restlichen API-Operationen von Amazon Cognito Identity Pools als Verwaltungsereignisse. CloudTrail protokolliert standardmäßig API-Operationen für Verwaltungsereignisse.

Eine Liste der Amazon Cognito Identity Pools API-Operationen, bei denen Amazon Cognito sich anmeldet CloudTrail, finden Sie in der Amazon Cognito Identity Pools API-Referenz.

Amazon Cognito Sync

Amazon Cognito protokolliert alle Amazon Cognito Sync-API-Operationen als Verwaltungsereignisse. Eine Liste der Amazon Cognito Sync API-Operationen, bei denen Amazon Cognito sich anmeldet CloudTrail, finden Sie in der Amazon Cognito Sync API-Referenz.

Analysieren von Amazon Cognito CloudTrail Cognito-Ereignissen mit Amazon CloudWatch Logs Insights

Sie können Ihre Amazon CloudTrail Cognito-Ereignisse mit Amazon CloudWatch Logs Insights suchen und analysieren. Wenn Sie Ihren Trail so konfigurieren, dass Ereignisse an CloudWatch Logs gesendet werden, werden nur die Ereignisse CloudTrail gesendet, die Ihren Trail-Einstellungen entsprechen.

Um Ihre Amazon Cognito CloudTrail Cognito-Ereignisse abzufragen oder zu recherchieren, stellen Sie in der CloudTrail Konsole sicher, dass Sie in Ihren Trail-Einstellungen die Option Verwaltungsereignisse auswählen, damit Sie die auf Ihren AWS Ressourcen ausgeführten Verwaltungsvorgänge überwachen können. Sie können in Ihren Trail-Einstellungen optional die Option Insights–Ereignisse auswählen, wenn Sie Fehler, ungewöhnliche Aktivitäten oder ungewöhnliches Benutzerverhalten in Ihrem Konto identifizieren möchten.

Beispiele für Amazon-Cognito-Abfragen

Sie können die folgenden Abfragen in der CloudWatch Amazon-Konsole verwenden.

Allgemeine Abfragen

Findet die 25 zuletzt hinzugefügten Protokollereignisse.

fields @timestamp, @message | sort @timestamp desc | limit 25 | filter eventSource = "cognito-idp.amazonaws.com"

Rufen Sie eine Liste der 25 zuletzt hinzugefügten Protokollereignisse ab, die Ausnahmen enthalten.

fields @timestamp, @message | sort @timestamp desc | limit 25 | filter eventSource = "cognito-idp.amazonaws.com" and @message like /Exception/

Ausnahme- und Fehlerabfragen

Suchen Sie die 25 zuletzt hinzugefügten Protokollereignisse mit Fehlercode NotAuthorizedException zusammen mit dem Amazon-Cognito-Benutzerpool sub.

fields @timestamp, additionalEventData.sub as user | sort @timestamp desc | limit 25 | filter eventSource = "cognito-idp.amazonaws.com" and errorCode= "NotAuthorizedException"

Finden Sie die Anzahl der Datensätze mit sourceIPAddress und entsprechendem eventName.

filter eventSource = "cognito-idp.amazonaws.com" | stats count(*) by sourceIPAddress, eventName

Finden Sie die Top 25 IP-Adressen, die einen NotAuthorizedException-Fehler ausgelöst haben.

filter eventSource = "cognito-idp.amazonaws.com" and errorCode= "NotAuthorizedException" | stats count(*) as count by sourceIPAddress, eventName | sort count desc | limit 25

Finden Sie die 25 wichtigsten IP-Adressen, die die ForgotPassword-API abgerufen haben.

filter eventSource = "cognito-idp.amazonaws.com" and eventName = 'ForgotPassword' | stats count(*) as count by sourceIPAddress | sort count desc | limit 25