Ruby

开始

您可以将其添加到您的Gemfile:

宝石的tcell_hooks

然后运行:包安装

从应用程序代码中调用它:

         
1
设计::OmniauthCallbacksController
2
def facebook
3.
oauth_data = request.env(“omniauth.auth”)
4
@user = User.find_or_create_for_facebook_oauth (oauth_data)
5
@user.save
6
7
TCellAgent::钩子::V1::框架:Rails:: Login.register_login_event (
8
TCellAgent::钩子::V1::登录:LOGIN_SUCCESS,请求,@user。电子邮件、零
9
10
11
#或
12
# TCellAgent::钩子::V1:: Login.register_login_event (
13
# TCellAgent::钩子::V1::登录:LOGIN_SUCCESS,
14
#“session_id”,
15
# request.env(“HTTP_USER_AGENT”),
16
# request.referrer,
17
#“(192.168.99.1”,
18
# [" host ", " user_agent ", " accept ", " referer ", " accept_encoding ", " accept_language ", " cookie "],
19
# @user.email,
20.
# request.env(“PATH_INFO”)
21
#)
22
23
sign_in_and_redirect @user
24
结束
25
结束

API

         
1
模块TCellAgent::钩子::V1::框架:Rails:登录
2
Def register_login_event(status, rails_request, user_id, user_valid=nil);结束
3.
结束
  • status (string): TCellAgent钩子V1登录LOGIN_SUCCESS或TCellAgent钩子V1登录LOGIN_FAILURE
  • rails_request (object): rails提供的请求对象
  • user_id (string):(可选)用于用户的标识(如电子邮件,用户名)
  • user_valid (boolean):(可选)存在时设置为true,其他为false。默认为零。
         
1
模块TCellAgent::钩子::V1::框架:Rails:登录
2
def self.register_login_event (
3.
的地位,
4
session_id,
5
user_agent,
6
上线,
7
remote_addr,
8
header_keys,
9
user_id,
10
document_uri,
11
user_valid = nil)
12
结束
13
结束
  • status (string): TCellAgent钩子V1登录LOGIN_SUCCESS或TCellAgent钩子V1登录LOGIN_FAILURE
  • session (string):用户登录的会话ID。这将在发送之前由代理进行hmaced
  • user_agent (string):(可选)从header中获取的用户代理
  • referrer (string):(可选)从header中获取的referrer
  • remote_addr (string):(可选)请求的IP
  • header_keys (string):可选)头键数组。顺序很重要(不要对数组进行排序)
  • user_id (string):(可选)用于用户的标识(如电子邮件,用户名)
  • document_uri (string):(可选)从请求获取的文档URI
  • user_valid (boolean):(可选)存在时设置为true,其他为false。默认为零。

重要的

如果tcell_agent没有安装或被禁用,则此代码将不做任何操作,也不会对应用程序产生性能影响。

密码散列

当您向tCell云发送安全的散列密码时,您将创建一个更健壮的帐户接管响应。看到密码散列为更多的信息。