Python

开始

你可以将它添加到你的requirements.txt文件中:

         
1
tcell_hooks = = 1.0.0

然后运行PIP安装-r requirements.txt

从应用程序代码中调用钩子有两个选项:

  1. 提供一个Django/Flask请求对象,并让tCell Agent从中提取相关细节:

               
    1
    从tcell_hooks。v1导入send_django_login_event, LOGIN_SUCCESS
    2
    3.
    send_django_login_event (
    4
    = LOGIN_SUCCESS状态,
    5
    django_request =请求,
    6
    user_id =“tcell@tcell.io”,
    7
    session_id = " 124 kdjfl3234”
    8
    9
    从tcell_hooks。v1导入send_flask_login_event, LOGIN_SUCCESS
    10
    11
    send_flask_login_event (
    12
    = LOGIN_SUCCESS状态,
    13
    flask_request =请求,
    14
    user_id =“tcell@tcell.io”,
    15
    session_id = " 124 kdjfl3234”
    16
  2. 提供tCell事件所需的每一条信息:

               
    1
    从tcell_hooks。v1导入send_login_event, LOGIN_SUCCESS
    2
    3.
    send_login_event (
    4
    = LOGIN_SUCCESS状态,
    5
    session_id = " 124 kdjfl3234”,
    6
    user_agent = " Mozilla / 5.0(麦金塔电脑;英特尔Mac OS X 10_11_6)…
    7
    介绍人= " http://192.168.99.100:3000 ",
    8
    remote_address = " (192.168.99.1 ",
    9
    header_keys=["HOST", "USER_AGENT", "ACCEPT", "REFERER", "ACCEPT_ENCODING", "ACCEPT_LANGUAGE", "COOKIE"],
    10
    user_id =“tcell@tcell.io”,
    11
    document_uri = " /用户/认证/看门的人/ callbackuri”
    12

可用状态有:

LOGIN_SUCCESS

LOGIN_FAILURE

API文档

通过提供一个Django请求对象来报告一个Login事件

         
1
def send_django_login_event(状态,
2
django_request,
3.
user_id,
4
session_id,
5
user_valid = None):
  • 状态(string): tcell_hooks.v1。LOGIN_SUCCESSor tcell_hooks.v1.LOGIN_FAILURE
  • Django提供的请求对象
  • user_id(字符串):用于用户的标识(如电子邮件,用户名)
  • session_id (string):用户登录的会话ID。在发送之前,代理将进行hmac'ed。
  • user_valid (boolean):(可选)存在时设置为true,否则为false。默认值为零。

通过提供Flask请求对象报告Login事件

         
1
def send_flask_login_event(状态,
2
flask_request,
3.
user_id,
4
session_id,
5
user_valid = None):
  • 状态(string): tcell_hooks.v1。LOGIN_SUCCESSor tcell_hooks.v1.LOGIN_FAILURE
  • flask_request (Object): Flask提供的请求对象
  • user_id(字符串):用于用户的标识(如电子邮件,用户名)
  • session_id (string):用户登录的会话ID。在发送之前,代理将进行hmac'ed。
  • user_valid (boolean):(可选)存在时设置为true,否则为false。默认值为零。

通过为tCell事件提供所有必要的参数来报告Login事件

         
1
def send_login_event(状态,
2
session_id,
3.
user_agent,
4
上线,
5
remote_address,
6
header_keys,
7
user_id,
8
document_uri,
9
user_valid = None):
  • 状态(string): tcell_hooks.v1。LOGIN_SUCCESSor tcell_hooks.v1.LOGIN_FAILURE
  • session_id (string):用户登录的会话ID。在发送之前,代理将进行hmac'ed。
  • user_agent (string):从header中获取的用户代理
  • referrer (string):从header中获取的referrer
  • remote_addr (string):请求的IP
  • header_keys (string):头键数组。顺序很重要(不要对数组进行排序)
  • user_id(字符串):用于用户的标识(如电子邮件,用户名)
  • document_uri (string):从请求获取的文档URI
  • user_valid (boolean):(可选)存在时设置为true,否则为false。默认值为零。

重要的

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

密码散列

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