18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>aswan陌陌風(fēng)控系統(tǒng)靜態(tài)規(guī)則引擎

aswan陌陌風(fēng)控系統(tǒng)靜態(tài)規(guī)則引擎

2022-05-07 | zip | 2.30 MB | 次下載 | 免費(fèi)

資料介紹

授權(quán)協(xié)議 LGPL
開發(fā)語言 Python
操作系統(tǒng) 跨平臺(tái)
軟件類型 開源軟件

軟件簡(jiǎn)介

aswan 是陌陌開發(fā)的風(fēng)控系統(tǒng)靜態(tài)規(guī)則引擎,零基礎(chǔ)簡(jiǎn)易便捷的配置多種復(fù)雜規(guī)則,實(shí)時(shí)高效管控用戶異常行為。

架構(gòu)介紹

poYBAGJnq1iAOsKnAAF2zz3IP2E128.jpg

快速啟動(dòng)

  1. 本項(xiàng)目依賴redis, mysql, mongodb,因此需準(zhǔn)備環(huán)境并更改配置項(xiàng)
    # 為了簡(jiǎn)單可以使用docker安裝
    # docker安裝文檔地址(以u(píng)buntu為例): https://docs.docker.com/install/linux/docker-ce/ubuntu/
    mongo: docker run -d --name mongo -v $HOME/docker_volumes/mongodb:/data/db  -p 27017:27017 mongo:latest
    mysql: docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=root -v $HOME/docker_volumes/mysql:/var/lib/mysql -v $HOME/docker_volumes/conf/mysql:/etc/mysql/conf.d -p 3306:3306 mysql:5.6
    redis: docker run -d --name redis -p 6379:6379  -v $HOME/docker_volumes/redis:/var/lib/redis redis:latest
  1. 在mysql中創(chuàng)建risk_control庫
    docker exec -it mysql mysql -h 127.0.0.1 -u root -p # 后續(xù)需輸入密碼 若以上述方式安裝mysql,密碼為root.
    CREATE DATABASE risk_control CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; # 創(chuàng)建數(shù)據(jù)庫時(shí)指定編碼格式,規(guī)避亂碼問題(注意: 此編碼格式在mysql低版本上可能有兼容性問題)
  1. 安裝所需依賴,本項(xiàng)目基于python2.7進(jìn)行開發(fā),可運(yùn)行pip install -r requirements.txt安裝依賴包
  2. 初始化django運(yùn)行所需的表并創(chuàng)建賬戶,并可以預(yù)生成一些數(shù)據(jù)(可選)
    # 在www目錄下
    python manage.py makemigrations && python manage.py migrate
    # 創(chuàng)建管理員賬戶  此處詳見  其它操作--增加用戶
    python manage.py createsuperuser # 后續(xù) 依次輸入用戶名、密碼、郵箱 即可創(chuàng)建一個(gè)管理員賬號(hào)
    # 如果希望對(duì)系統(tǒng)有一個(gè)直觀的感受,可以使用如下指令來預(yù)注入一些數(shù)據(jù)
    python manage.py init_risk_data
  1. 啟動(dòng)服務(wù)
    # 在aswan下以nohup的方式啟動(dòng)服務(wù)進(jìn)程、管理后臺(tái)、攔截日志消費(fèi)進(jìn)程
    bash start.sh

后臺(tái)介紹

  1. 名單管理

    為名單型策略提供基礎(chǔ)的數(shù)據(jù)管理功能。

    名單數(shù)據(jù)的維度包括:用戶ID、IP、設(shè)備號(hào)、支付賬號(hào)、手機(jī)號(hào)。后續(xù)也可以根據(jù)自己的需求擴(kuò)充其他的維度。

    名單包含三個(gè)類型:黑、白、灰名單

    名單必須屬于某個(gè)項(xiàng)目(用于確定名單的范圍),可以在名單管理-名單項(xiàng)目管理中添加項(xiàng)目。

    poYBAGJnq1mAGP3zAAGKQ3E4Ekg779.png

  2. 名單型策略

    描述符為**{參數(shù)名:單選,假設(shè)是“用戶ID”} {操作碼:在/不在} {XX項(xiàng)目:單選,可選全局} 的 {維度:?jiǎn)芜x}{方向:黑/白/灰名單}**

    示例:用戶ID 在 初始項(xiàng)目 的 用戶黑名單 中

    pYYBAGJnq1uAJkFjAAG8Lcd1onA560.png

  3. 布爾型策略

    不傳閾值的布爾型,描述符為?{參數(shù)名:單選,假設(shè)是"賬號(hào)ID"} {操作碼:是/不是} {內(nèi)置函數(shù):異常用戶}?示例:賬號(hào)ID是異常用戶

    傳閾值的布爾型,描述符為?{參數(shù)名:單選,假設(shè)是"賬號(hào)ID"} {操作碼:大于/小于/等于/不等于} {內(nèi)置函數(shù):歷史登錄次數(shù)} {閾值:170}?示例:賬號(hào)ID歷史登錄次數(shù)大于100

    pYYBAGJnq12AAILwAAGeuxM9cGw787.png

    內(nèi)置函數(shù)是什么?就是自定義的一些邏輯判斷函數(shù),只需要滿足要求返回布爾值即可。比如注冊(cè)時(shí)間是否在某個(gè)范圍以內(nèi),當(dāng)前設(shè)備是否是常用設(shè)備。

  4. 時(shí)段頻控型策略

    描述符為?同一 {計(jì)數(shù)維度:單選,假設(shè)是“設(shè)備”} 在 {時(shí)段:時(shí)間跨度} 內(nèi)限制 {閾值:整數(shù)N} 次 某動(dòng)作?示例:同一設(shè)備一天內(nèi)限制操作10次. 可是我怎么知道當(dāng)前已經(jīng)有多少次呢?這就需要上報(bào),上報(bào)后將計(jì)數(shù) 詳見第9條?數(shù)據(jù)源管理

    poYBAGJnq1-AenyMAAGRodyrxw8192.png

  5. 限用戶數(shù)型策略

    描述符為?同一 {計(jì)數(shù)維度:單選,假設(shè)是“設(shè)備”} 在 {時(shí)段:時(shí)間跨度} 內(nèi)限制 {閾值:整數(shù)N} 個(gè)用戶

    示例:同一設(shè)備當(dāng)天限10個(gè)用戶 此策略同樣需要上報(bào)的數(shù)據(jù),且由于與用戶相關(guān),因此上報(bào)數(shù)據(jù)中必須包含user_id字段(在數(shù)據(jù)源中需配置) 詳見第9條?數(shù)據(jù)源管理

    pYYBAGJnq2CALTSdAAGUI3c9OYA699.png

  6. 規(guī)則管理

    管控原子:命中某條策略后的管控動(dòng)作,比如攔截... 把上面2--5中所述的策略原子按照優(yōu)先級(jí)組合起來,由上向下執(zhí)行,直到命中某條策略,則返回對(duì)應(yīng)策略的管控原子。此模塊更多是重交互,完成策略的配置、組合、權(quán)重等等

    pYYBAGJnq2KAbxu9AAJ27QQQJQY362.png

  7. 日志管理

    所有命中策略的日志均在此展示,也會(huì)包含審計(jì)相關(guān)的日志,下一期會(huì)基于此日志,開放攔截溯源功能

    pYYBAGJnq2KAbxu9AAJ27QQQJQY362.png

    poYBAGJnq2WATJEOAAMWOgjTWRM786.png

  8. 權(quán)限配置

    供權(quán)限設(shè)置使用,精確限定某個(gè)用戶能看哪些頁面的數(shù)據(jù)。 詳見 其它 -- 權(quán)限管理。

  9. 數(shù)據(jù)源配置

    示例策略:同一設(shè)備一天內(nèi)限制登錄1000次 那么每次登陸就需要上報(bào)一條數(shù)據(jù),系統(tǒng)會(huì)分類計(jì)數(shù),并分類存儲(chǔ)。 存儲(chǔ)的名字叫啥?就是此處要配置的數(shù)據(jù)源。對(duì)于此策略,只需要配置數(shù)據(jù)源,命名為login_uid, 字段包含uid, uid類型是string。然后程序就能根據(jù)uid為維度計(jì)數(shù),并自動(dòng)計(jì)算指定時(shí)間窗口內(nèi)是否超出指定閾值。

    重要:由于邏輯必然依賴時(shí)間信息,為通用且必需字段,timestamp為默認(rèn)隱含字段,類型是時(shí)間戳(精確到秒,整數(shù))

    poYBAGJnq2eADpuCAAEnnVFA2HU969.png

調(diào)用樣例

  1. 調(diào)用查詢服務(wù)

    假設(shè)存在id為1的規(guī)則,則可以通過如下方式查詢是否命中策略

curl 127.0.0.1:50000/query/ -X POST -d '{"rule_id": "1", "user_id": "10000"}' -H "Content-Type:application/json"
  1. 調(diào)用上報(bào)服務(wù)

    假設(shè)存在名稱為test的數(shù)據(jù)源, 且數(shù)據(jù)源含有的數(shù)據(jù)是: {"ip": "string", "user_id": "string", "uid": "string"}

curl 127.0.0.1:50000/report/ -X POST -d '{"source": "test", "user_id": "10000", "ip": "127.0.0.1", "uid": "abcabc112333222", "timestamp": 1559049606}' -H "Content-Type:application/json"
  1. 關(guān)于服務(wù)拆分

    開源樣例中,為了簡(jiǎn)化安裝部署,查詢和上報(bào)揉進(jìn)了一個(gè)服務(wù)。實(shí)際場(chǎng)景中,顯然讀寫應(yīng)該分離。

    1.可以直接此方式部署2份,域名不同,一份用于查詢(上報(bào)接口不被訪問),一份用于上報(bào)(查詢接口不被訪問),流量分發(fā)在nginx層完成

    2.risk_server.py中修改配置URL_2_HANDLERS,選擇您需要的服務(wù)接口部署

內(nèi)置函數(shù)的擴(kuò)展

  1. 不帶閾值的內(nèi)置函數(shù)擴(kuò)展

    是否異常用戶內(nèi)置函數(shù)為例
    代碼見 aswan/buildin_funcs/sample.py 中的 is_abnormal 方法

  2. 帶閾值的內(nèi)置函數(shù)布爾型策略擴(kuò)展

    歷史登錄次數(shù)內(nèi)置函數(shù)為例
    代碼見 aswan/buildin_funcs/sample.py 中的 user_login_count 方法
    注意:閾值計(jì)算不包含在內(nèi)置函數(shù)中進(jìn)行,控制流詳見 aswan/buildin_funcs/base.py

其它

增加用戶

考慮到企業(yè)用戶大多數(shù)為域賬戶登錄,因此推薦使用LDAP認(rèn)證模塊直接集成。但考慮到大家的場(chǎng)景不一樣,因此也可以手動(dòng)增加用戶,樣例代碼如下:

# coding=utf-8
from django.contrib.auth.models import User

username = 'username'
password = 'password'
email = 'email@momo.com'
first_name = '測(cè)'
last_name = '試'
# 普通用戶
User.objects.create_user(username=username, password=password, email=email, first_name=first_name, last_name=last_name)
# 管理員賬戶
User.objects.create_superuser(username=username, password=password, email=email, first_name=first_name, last_name=last_name)

添加完成后,讓用戶登錄,然后管理員配置權(quán)限即可。

權(quán)限管理

目前的權(quán)限模型包含如下元素,可在對(duì)應(yīng)的頁面進(jìn)行配置。

元素名稱 元素含義 配置方式
uri 風(fēng)控管理后臺(tái)的一個(gè)獨(dú)立uri 開發(fā)時(shí)自動(dòng)產(chǎn)生 此處uri為相對(duì)路徑,例如: /permissions/groups/
uri組 多個(gè)相互關(guān)聯(lián)的uri可以被放置到一個(gè)uri組中 /permissions/uri_groups/ -
權(quán)限組 多個(gè)uri組可以被分配到一個(gè)權(quán)限組中 /permissions/groups/ -
用戶 用戶即為獨(dú)立的個(gè)人/員工 /permissions/users/ 1. 本系統(tǒng)在界面上不提供添加用戶的功能;2. 用戶可以被分配到某個(gè)權(quán)限組中,也可以直接配置uri組
管理員 即為系統(tǒng)的擁有者,默認(rèn)擁有所有權(quán)限 手動(dòng)配置 -

具體圖示如下:

poYBAGJnq2iAROGvAAFtwRE9gmc956.png

pYYBAGJnq2qAcxZ_AAEUuEa8hG4575.png

poYBAGJnq2uANenzAAFLN-WFIfU845.png

配置相關(guān)

目前Django部分的配置均存放于 www/settings 目錄,非Django部分的配置均位于 config 目錄下。

為了在不同環(huán)境加載不同的配置,我們使用了RISK_ENV這個(gè)環(huán)境變量,系統(tǒng)在運(yùn)行時(shí)會(huì)自動(dòng)通過這個(gè)環(huán)境變量的值加載對(duì)應(yīng)的配置文件。

為了方便項(xiàng)目啟動(dòng),在未設(shè)置這個(gè)值時(shí),系統(tǒng)默認(rèn)會(huì)加載 develop 環(huán)境的配置。而在執(zhí)行測(cè)試時(shí)(python manage.py test)時(shí),RISK_ENV的值必須是 test 。

?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1PFC電路與BOOST電路設(shè)計(jì)實(shí)例分享
  2. 1.83 MB   |  12次下載  |  4 積分
  3. 2世平基于靈動(dòng)微 SPIN560C 的低壓無刷電機(jī)應(yīng)用方案
  4. 10.93 MB  |  11次下載  |  免費(fèi)
  5. 3電源測(cè)試報(bào)告-基于 國(guó)民技術(shù) N32L406 和杰華特 JW3376+3330 的 BMS 方案
  6. 6.47 MB  |  11次下載  |  免費(fèi)
  7. 4PWM控制器的控制方法
  8. 0.39 MB   |  3次下載  |  4 積分
  9. 5電流檢測(cè)芯片F(xiàn)P135應(yīng)用說明
  10. 1.24 MB   |  3次下載  |  免費(fèi)
  11. 6全面解讀被動(dòng)式與主動(dòng)式PFC電路
  12. 1.27 MB   |  1次下載  |  4 積分
  13. 7HC88L051F4低功耗芯片規(guī)格書
  14. 4.76 MB  |  1次下載  |  免費(fèi)
  15. 8CIU32D655x5數(shù)據(jù)手冊(cè)
  16. 2.14 MB   |  1次下載  |  免費(fèi)

本月

  1. 1常用電子元器件使用手冊(cè)
  2. 2.40 MB   |  52次下載  |  免費(fèi)
  3. 2高功率密度碳化硅MOSFET軟開關(guān)三相逆變器損耗分析
  4. 2.27 MB   |  33次下載  |  10 積分
  5. 3PFC電路與BOOST電路設(shè)計(jì)實(shí)例分享
  6. 1.83 MB   |  12次下載  |  4 積分
  7. 4世平基于靈動(dòng)微 SPIN560C 的低壓無刷電機(jī)應(yīng)用方案
  8. 10.93 MB  |  11次下載  |  免費(fèi)
  9. 5電源測(cè)試報(bào)告-基于 國(guó)民技術(shù) N32L406 和杰華特 JW3376+3330 的 BMS 方案
  10. 6.47 MB  |  11次下載  |  免費(fèi)
  11. 6USB拓展塢PCB圖資料
  12. 0.57 MB   |  11次下載  |  免費(fèi)
  13. 7MS1826 HDMI 多功能視頻處理器數(shù)據(jù)手冊(cè)
  14. 4.51 MB   |  9次下載  |  免費(fèi)
  15. 8HAL9303線性霍爾效應(yīng)傳感器技術(shù)手冊(cè)
  16. 0.70 MB   |  9次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935134次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191424次下載  |  10 積分
  9. 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183352次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81600次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73818次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65991次下載  |  10 積分