- Catégories :
LOGIN_HISTORY , LOGIN_HISTORY_BY_USER¶
La famille LOGIN_HISTORY de fonctions de table peut être utilisée pour interroger les tentatives de connexion effectuées par les utilisateurs de Snowflake selon différentes dimensions :
LOGIN_HISTORY renvoie les événements de connexion dans un intervalle de temps spécifié.
LOGIN_HISTORY_BY_USER renvoie les événements de connexion d’un utilisateur spécifié dans un intervalle de temps spécifié.
Chaque fonction est optimisée pour les requêtes au sein de la dimension spécifiée. Les résultats peuvent être filtrés à l’aide de prédicats SQL.
Note
Ces fonctions renvoient l’activité de connexion au cours des 7 derniers jours.
Syntaxe¶
LOGIN_HISTORY(
[ TIME_RANGE_START => <constant_expr> ]
[, TIME_RANGE_END => <constant_expr> ]
[, RESULT_LIMIT => <num> ] )
LOGIN_HISTORY_BY_USER(
[ USER_NAME => '<string>' ]
[, TIME_RANGE_START => <constant_expr> ]
[, TIME_RANGE_END => <constant_expr> ]
[, RESULT_LIMIT => <num> ] )
Arguments¶
Tous les arguments sont facultatifs.
TIME_RANGE_START => constant_expr
, .TIME_RANGE_END => constant_expr
Plage de temps (au format TIMESTAMP_LTZ), dans les 7 derniers jours durant lesquels l’événement de connexion s’est produit.
Si
TIME_RANGE_END
n’est pas spécifié, la fonction renvoie les événements de connexion les plus récents.Si l’intervalle de temps ne tombe pas dans les sept derniers jours, une erreur est renvoyée.
USER_NAME => 'string'
S’applique uniquement à LOGIN_HISTORY_BY_USER
Une chaîne spécifiant un nom d’utilisateur ou CURRENT_USER. Seuls les événements de connexion pour l’utilisateur spécifié sont renvoyés. Notez que le nom de connexion doit être entre guillemets simples. De plus, si le nom de connexion contient des espaces, des caractères en majuscules et minuscules ou des caractères spéciaux, le nom doit être entre guillemets doubles à l’intérieur des guillemets simples (p. ex.
'"User 1"'
vs'user1'
).Par défaut : CURRENT_USER
RESULT_LIMIT => num
Un nombre spécifiant le nombre maximum de lignes renvoyé par la fonction.
Si le nombre de lignes correspondantes est supérieur à cette limite, les événements de connexion avec l’horodatage le plus récent sont renvoyés, jusqu’à la limite spécifiée.
Plage : de
1
à10000
Par défaut :
100
.
Notes sur l’utilisation¶
Lors de l’appel d’une fonction de la table de schémas d’informations, la session doit avoir un schéma INFORMATION_SCHEMA en cours d’utilisation ou le nom de la fonction doit être complètement qualifié. Pour plus de détails, voir Schéma d’information de Snowflake.
Sortie¶
La fonction renvoie les colonnes suivantes :
Nom de la colonne |
Type de données |
Description |
---|---|---|
EVENT_TIMESTAMP |
TIMESTAMP_LTZ |
Heure de l’occurrence de l’événement. |
EVENT_ID |
NUMBER |
ID unique de l’événement. |
EVENT_TYPE |
TEXT |
Type d’événement, tel que LOGIN pour les événements d’authentification. |
USER_NAME |
TEXT |
Utilisateur associé à cet événement. |
CLIENT_IP |
TEXT |
Adresse IP d’où provient la demande. |
REPORTED_CLIENT_TYPE |
TEXT |
Type signalé du logiciel client, tel que JDBC_DRIVER, ODBC_DRIVER, etc. Cette information n’est pas authentifiée. |
REPORTED_CLIENT_VERSION |
TEXT |
Version rapportée du logiciel client. Cette information n’est pas authentifiée. |
FIRST_AUTHENTICATION_FACTOR |
TEXT |
Méthode utilisée pour authentifier l’utilisateur (le premier facteur est utilisé, si l’authentification à plusieurs facteurs). |
SECOND_AUTHENTICATION_FACTOR |
TEXT |
Le deuxième facteur, si vous utilisez une authentification à plusieurs facteurs, ou NULL sinon. |
IS_SUCCESS |
TEXT |
Indique si la demande de l’utilisateur a abouti ou non. |
ERROR_CODE |
NUMBER |
Code d’erreur si la requête n’a pas abouti. |
ERROR_MESSAGE |
TEXT |
Message d’erreur renvoyé à l’utilisateur si la requête n’a pas abouti. |
RELATED_EVENT_ID |
NUMBER |
Réservé pour une utilisation future. |
CONNECTION |
TEXT |
Nom de la connexion utilisée par le client, ou NULL si le client n’utilise pas d’URL de connexion. La connexion est un objet Snowflake qui fait partie de la redirection des clients. Il représente une URL de connexion qui peut être basculée d’un compte à l’autre pour assurer la continuité des activités et la récupération après sinistre. . , NOTE : si un client s’authentifie par le biais d’un fournisseur d’identité (IdP) qui est configuré avec l’URL de compte plutôt qu’avec l’URL de connexion, l’IdP dirige le client vers l’URL de compte une fois l’authentification terminée. La colonne CONNECTION de cet événement de connexion est NULL. Voir Authentification et redirection des clients. |
Pour plus d’informations sur les codes / messages d’erreur relatifs aux tentatives de connexion infructueuses en raison de réponses non valides SAML, voir Authentification fédérée et dépannage de SSO.
Exemples¶
Récupère au maximum les 100 derniers événements de connexion de l’utilisateur actuel :
select * from table(information_schema.login_history_by_user()) order by event_timestamp;
Récupère au maximum les 1 000 derniers événements de connexion de l’utilisateur spécifié :
select * from table(information_schema.login_history_by_user(USER_NAME => 'USER1', result_limit => 1000)) order by event_timestamp;
Récupère au maximum 100 événements de connexion de chaque utilisateur que votre rôle actuel est autorisé à surveiller durant la dernière heure :
select * from table(information_schema.login_history(TIME_RANGE_START => dateadd('hours',-1,current_timestamp()),current_timestamp())) order by event_timestamp;