Castle保护您的用户不受帐户泄露的影响

castle的Python项目详细描述


Build Status

Castle分析设备、位置和 在您的网络和移动应用程序中的交互模式,并允许您停止 实时的帐户接管攻击。

安装

pip install castle

配置

使用castle api secret导入并配置库。

fromcastle.configurationimportconfiguration# Same as setting it through Castle.api_secretconfiguration.api_secret=':YOUR-API-SECRET'# For authenticate method you can set failover strategies: allow(default), deny, challenge, throwconfiguration.failover_strategy='deny'# Castle::RequestError is raised when timing out in milliseconds (default: 500 milliseconds)configuration.request_timeout=1000# Whitelisted and Blacklisted headers are case insensitive and allow to use _ and - as a separator, http prefixes are removed# Whitelisted headersconfiguration.whitelisted=['X_HEADER']# or append to defaultconfiguration.whitelisted=configuration.whitelisted+['http-x-header']# Blacklisted headers take advantage over whitelisted elementsconfiguration.blacklisted=['HTTP-X-header']# or append to defaultconfiguration.blacklisted=configuration.blacklisted+['X_HEADER']

跟踪

这是一个简单的径赛项目的例子。

fromcastle.clientimportClientfromcastleimporteventscastle=Client.from_request(request)castle.track({'event':events.LOGIN_SUCCEEDED,'user_id':'user_id'})

客户端将自动为每个请求配置上下文。

签名

fromsecure_modeimportsignaturesignature(user_id)

将创建已签名的用户ID。

异步跟踪

默认情况下,castle同步发送请求。在 后台工作进程您可以为工作进程生成数据:

fromcastle.clientimportClientfromcastleimporteventscontext=Client.to_context(request)options=Client.to_options({'event':events.LOGIN_SUCCEEDED,'user_id':user.id,'properties':{'key':'value'},'user_traits':{'key':'value'}})

以后再以某种方式使用它

fromcastle.clientimportClientclient=Client(context)client.track(options)

例外情况

CastleError将被抛出,如果castle api返回400或500 级别http响应。您还可以选择捕捉更多的finegrained error

文档

有关其他资源的文档和链接,请访问 https://castle.io/docs

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java什么数据库最类似于Map,每个用户/id存储无限多个“键”和“值”?   java仅使用super pom进行测试   内存不足如何解析java。OutOfMemoryError:Java堆空间在增加堆大小的情况下将意味着延迟OutOfMemoryError   来自另一个类的mysql和java jdbc调用[运行时应用程序]   java通过下拉菜单更改搜索框搜索的内容   JAVAlang.ClassNotFoundException:sun。jdbc。odbc。JdbcOdbcDriver   java Selenium点击链接   JavaSpringHibernate:从唯一值列表中获取对象列表   java Bing广告与桌面身份验证问题   java如何在没有任何外部SDK的情况下从安卓打印到收据打印机?   未调用java菜单片段类   java在IDEA和PyCharm中同时为同一个项目工作   java我们如何为同一个异常提供不同的海关信息   jakarta ee中是否预定义了“请求”和“响应”变量或值?   java更好地解决“之前和之后”难题?   尝试将数据从Excel添加到Java   发送电子邮件的Java代码只适用于一个电子邮件id?   java如何从资产解析XML?