public RequestImpl(HttpRequest request) { HttpRequest = request; var apiToken = ApiToken; if (!string.IsNullOrEmpty(apiToken)) { var tokenInfo = AccessTokenManager.GetAccessTokenInfo(apiToken); if (tokenInfo != null) { if (!string.IsNullOrEmpty(tokenInfo.AdminName)) { var adminInfo = AdminManager.GetAdminInfoByUserName(tokenInfo.AdminName); if (adminInfo != null && !adminInfo.IsLockedOut) { AdminInfo = adminInfo; IsAdminLoggin = true; } } IsApiAuthenticated = true; } } var userToken = UserToken; if (!string.IsNullOrEmpty(userToken)) { var tokenImpl = ParseAccessToken(userToken); if (tokenImpl.UserId > 0 && !string.IsNullOrEmpty(tokenImpl.UserName)) { var userInfo = UserManager.GetUserInfoByUserId(tokenImpl.UserId); if (userInfo != null && !userInfo.IsLockedOut && userInfo.IsChecked && userInfo.UserName == tokenImpl.UserName) { UserInfo = userInfo; IsUserLoggin = true; } } } var adminToken = AdminToken; if (!string.IsNullOrEmpty(adminToken)) { var tokenImpl = ParseAccessToken(adminToken); if (tokenImpl.UserId > 0 && !string.IsNullOrEmpty(tokenImpl.UserName)) { var adminInfo = AdminManager.GetAdminInfoByUserId(tokenImpl.UserId); if (adminInfo != null && !adminInfo.IsLockedOut && adminInfo.UserName == tokenImpl.UserName) { AdminInfo = adminInfo; IsAdminLoggin = true; } } } }
private void AuthApi() { if (!string.IsNullOrEmpty(HttpRequest.Headers.Get(AuthKeyApiHeader))) { ApiToken = HttpRequest.Headers.Get(AuthKeyApiHeader); } else if (!string.IsNullOrEmpty(HttpRequest.QueryString[AuthKeyApiQuery])) { ApiToken = HttpRequest.QueryString[AuthKeyApiQuery]; } else if (!string.IsNullOrEmpty(CookieUtils.GetCookie(AuthKeyApiCookie))) { ApiToken = CookieUtils.GetCookie(AuthKeyApiCookie); } if (!string.IsNullOrEmpty(ApiToken)) { var tokenInfo = AccessTokenManager.GetAccessTokenInfo(ApiToken); SetAdmin(tokenInfo?.AdminName); IsApiAuthenticated = tokenInfo != null; } }