Search in sources :

Example 1 with IamLoginTrace

use of com.diboot.iam.entity.IamLoginTrace in project diboot by dibo-software.

the class WxAuthServiceImpl method saveLoginTrace.

/**
 * 保存登录日志
 * @param authToken
 * @param isSuccess
 */
protected void saveLoginTrace(BaseJwtAuthToken authToken, boolean isSuccess) {
    IamLoginTrace loginTrace = new IamLoginTrace();
    loginTrace.setAuthType(getAuthType()).setAuthAccount(authToken.getAuthAccount()).setUserType(authToken.getUserType()).setSuccess(isSuccess);
    BaseLoginUser currentUser = IamSecurityUtils.getCurrentUser();
    if (currentUser != null) {
        Long userId = currentUser.getId();
        loginTrace.setUserId(userId);
    }
    // 记录客户端信息
    String userAgent = HttpHelper.getUserAgent(request);
    String ipAddress = HttpHelper.getRequestIp(request);
    loginTrace.setUserAgent(userAgent).setIpAddress(ipAddress);
    try {
        iamLoginTraceService.createEntity(loginTrace);
    } catch (Exception e) {
        log.warn("保存登录日志异常", e);
    }
}
Also used : IamLoginTrace(com.diboot.iam.entity.IamLoginTrace) BaseLoginUser(com.diboot.iam.entity.BaseLoginUser) BusinessException(com.diboot.core.exception.BusinessException) AuthenticationException(org.apache.shiro.authc.AuthenticationException)

Example 2 with IamLoginTrace

use of com.diboot.iam.entity.IamLoginTrace in project diboot by dibo-software.

the class PwdAuthServiceImpl method saveLoginTrace.

/**
 * 保存登录日志
 * @param authToken
 * @param isSuccess
 */
protected void saveLoginTrace(BaseJwtAuthToken authToken, boolean isSuccess) {
    IamLoginTrace loginTrace = new IamLoginTrace();
    loginTrace.setAuthType(getAuthType()).setAuthAccount(authToken.getAuthAccount()).setUserType(authToken.getUserType()).setSuccess(isSuccess);
    BaseLoginUser currentUser = IamSecurityUtils.getCurrentUser();
    if (currentUser != null) {
        loginTrace.setUserId(currentUser.getId());
    }
    // 记录客户端信息
    String userAgent = HttpHelper.getUserAgent(request);
    String ipAddress = HttpHelper.getRequestIp(request);
    loginTrace.setUserAgent(userAgent).setIpAddress(ipAddress);
    iamAsyncWorker.saveLoginTraceLog(loginTrace);
}
Also used : IamLoginTrace(com.diboot.iam.entity.IamLoginTrace) BaseLoginUser(com.diboot.iam.entity.BaseLoginUser)

Example 3 with IamLoginTrace

use of com.diboot.iam.entity.IamLoginTrace in project diboot by dibo-software.

the class SSOAuthServiceImpl method saveLoginTrace.

/**
 * 保存登录日志
 * @param authToken
 * @param isSuccess
 */
protected void saveLoginTrace(BaseJwtAuthToken authToken, boolean isSuccess) {
    IamLoginTrace loginTrace = new IamLoginTrace();
    loginTrace.setAuthType(getAuthType()).setAuthAccount(authToken.getAuthAccount()).setUserType(authToken.getUserType()).setSuccess(isSuccess);
    BaseLoginUser currentUser = IamSecurityUtils.getCurrentUser();
    if (currentUser != null) {
        Long userId = currentUser.getId();
        loginTrace.setUserId(userId);
    }
    // 记录客户端信息
    String userAgent = request.getHeader("user-agent");
    String ipAddress = IamSecurityUtils.getRequestIp(request);
    loginTrace.setUserAgent(userAgent).setIpAddress(ipAddress);
    try {
        iamLoginTraceService.createEntity(loginTrace);
    } catch (Exception e) {
        log.warn("保存登录日志异常", e);
    }
}
Also used : IamLoginTrace(com.diboot.iam.entity.IamLoginTrace) BaseLoginUser(com.diboot.iam.entity.BaseLoginUser) InvalidUsageException(com.diboot.core.exception.InvalidUsageException) BusinessException(com.diboot.core.exception.BusinessException) AuthenticationException(org.apache.shiro.authc.AuthenticationException)

Aggregations

BaseLoginUser (com.diboot.iam.entity.BaseLoginUser)3 IamLoginTrace (com.diboot.iam.entity.IamLoginTrace)3 BusinessException (com.diboot.core.exception.BusinessException)2 AuthenticationException (org.apache.shiro.authc.AuthenticationException)2 InvalidUsageException (com.diboot.core.exception.InvalidUsageException)1