生活随笔
收集整理的這篇文章主要介紹了
esxi root 密码规则_陌陌风控系统静态规则引擎aswan
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
陌陌風(fēng)控系統(tǒng)靜態(tài)規(guī)則引擎,零基礎(chǔ)簡易便捷的配置多種復(fù)雜規(guī)則,實時高效管控用戶異常行為。
【名詞解釋】
策略原子:基于用戶行為數(shù)據(jù)進行異常判斷的基礎(chǔ)元素,如設(shè)備黑名單、手機號黑名單等
管控原子:用戶命中策略原子后對應(yīng)的管控措施,如短信驗證碼、滑動驗證碼等;
規(guī)則:基于不同業(yè)務(wù)點建立的規(guī)則ID,由多條策略原子+管控原子構(gòu)成;
錯誤提示碼:用于前端規(guī)則命中后的提示,便于運營人員排查問題,解決問題。
【方案設(shè)計簡介】
規(guī)則配置:用于不同業(yè)務(wù)點的規(guī)則配置;
策略配置:用于設(shè)置策略原子及策略原子;
數(shù)據(jù)源配置:基于業(yè)務(wù)數(shù)據(jù)而設(shè)置的數(shù)據(jù)來源key,用于風(fēng)控策略的運算;
數(shù)據(jù)統(tǒng)計:用戶命中規(guī)則的數(shù)據(jù)統(tǒng)計與展示;
【使用說明】
當(dāng)一個業(yè)務(wù)需要接入風(fēng)控系統(tǒng)進行管控時,通過以下步驟進行配置
1. 建立該業(yè)務(wù)數(shù)據(jù)源,業(yè)務(wù)方需要向此數(shù)據(jù)源推送業(yè)務(wù)相關(guān)數(shù)據(jù);
2. 建立該業(yè)務(wù)所需要的策略原子,部分策略原子需要依賴該業(yè)務(wù)數(shù)據(jù)源;
3. 新建規(guī)則配置,設(shè)置策略名稱、權(quán)重、策略原子組、管控原子、提示語,完成規(guī)則配置;
4. 業(yè)務(wù)方調(diào)用此配置,進行業(yè)務(wù)風(fēng)控;
快速啟動
本項目依賴redis, mysql, mongodb,因此需準(zhǔn)備環(huán)境并更改配置項 # 為了簡單可以使用docker安裝 # docker安裝文檔地址(以ubuntu為例): 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
在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ù)庫時指定編碼格式,規(guī)避亂碼問題(注意: 此編碼格式在mysql低版本上可能有兼容性問題)
安裝所需依賴,本項目基于python2.7進行開發(fā),可運行pip install -r requirements.txt安裝依賴包初始化django運行所需的表并創(chuàng)建賬戶,并可以預(yù)生成一些數(shù)據(jù)(可選) # 在www目錄下 python manage.py makemigrations && python manage.py migrate # 創(chuàng)建管理員賬戶 此處詳見 其它操作--增加用戶 python manage.py createsuperuser # 后續(xù) 依次輸入用戶名、密碼、郵箱 即可創(chuàng)建一個管理員賬號 # 如果希望對系統(tǒng)有一個直觀的感受,可以使用如下指令來預(yù)注入一些數(shù)據(jù) python manage.py init_risk_data
啟動服務(wù) # 在aswan下以nohup的方式啟動服務(wù)進程、管理后臺、攔截日志消費進程 bash start.sh
后臺介紹
名單管理為名單型策略提供基礎(chǔ)的數(shù)據(jù)管理功能。名單數(shù)據(jù)的維度包括:用戶ID、IP、設(shè)備號、支付賬號、手機號。后續(xù)也可以根據(jù)自己的需求擴充其他的維度。名單包含三個類型:黑、白、灰名單名單必須屬于某個項目(用于確定名單的范圍),可以在名單管理-名單項目管理中添加項目。名單型策略描述符為**{參數(shù)名:單選,假設(shè)是“用戶ID”} {操作碼:在/不在} {XX項目:單選,可選全局} 的 {維度:單選}{方向:黑/白/灰名單}**示例:用戶ID 在 初始項目 的 用戶黑名單 中布爾型策略不傳閾值的布爾型,描述符為 {參數(shù)名:單選,假設(shè)是"賬號ID"} {操作碼:是/不是} {內(nèi)置函數(shù):異常用戶} 示例:賬號ID是異常用戶傳閾值的布爾型,描述符為 {參數(shù)名:單選,假設(shè)是"賬號ID"} {操作碼:大于/小于/等于/不等于} {內(nèi)置函數(shù):歷史登錄次數(shù)} {閾值:170} 示例:賬號ID歷史登錄次數(shù)大于100內(nèi)置函數(shù)是什么?就是自定義的一些邏輯判斷函數(shù),只需要滿足要求返回布爾值即可。比如注冊時間是否在某個范圍以內(nèi),當(dāng)前設(shè)備是否是常用設(shè)備。時段頻控型策略描述符為 同一 {計數(shù)維度:單選,假設(shè)是“設(shè)備”} 在 {時段:時間跨度} 內(nèi)限制 {閾值:整數(shù)N} 次 某動作 示例:同一設(shè)備一天內(nèi)限制操作10次. 可是我怎么知道當(dāng)前已經(jīng)有多少次呢?這就需要上報,上報后將計數(shù) 詳見第9條 數(shù)據(jù)源管理限用戶數(shù)型策略描述符為 同一 {計數(shù)維度:單選,假設(shè)是“設(shè)備”} 在 {時段:時間跨度} 內(nèi)限制 {閾值:整數(shù)N} 個用戶示例:同一設(shè)備當(dāng)天限10個用戶 此策略同樣需要上報的數(shù)據(jù),且由于與用戶相關(guān),因此上報數(shù)據(jù)中必須包含user_id字段(在數(shù)據(jù)源中需配置) 詳見第9條 數(shù)據(jù)源管理規(guī)則管理管控原子:命中某條策略后的管控動作,比如攔截... 把上面2--5中所述的策略原子按照優(yōu)先級組合起來,由上向下執(zhí)行,直到命中某條策略,則返回對應(yīng)策略的管控原子。此模塊更多是重交互,完成策略的配置、組合、權(quán)重等等日志管理所有命中策略的日志均在此展示,也會包含審計相關(guān)的日志,下一期會基于此日志,開放攔截溯源功能。權(quán)限配置供權(quán)限設(shè)置使用,精確限定某個用戶能看哪些頁面的數(shù)據(jù)。 詳見 其它 -- 權(quán)限管理。數(shù)據(jù)源配置示例策略:同一設(shè)備一天內(nèi)限制登錄1000次 那么每次登陸就需要上報一條數(shù)據(jù),系統(tǒng)會分類計數(shù),并分類存儲。 存儲的名字叫啥?就是此處要配置的數(shù)據(jù)源。對于此策略,只需要配置數(shù)據(jù)源,命名為login_uid, 字段包含uid, uid類型是string。然后程序就能根據(jù)uid為維度計數(shù),并自動計算指定時間窗口內(nèi)是否超出指定閾值。重要:由于邏輯必然依賴時間信息,為通用且必需字段,timestamp為默認隱含字段,類型是時間戳(精確到秒,整數(shù))調(diào)用樣例
調(diào)用查詢服務(wù)假設(shè)存在id為1的規(guī)則,則可以通過如下方式查詢是否命中策略curl 127.0.0.1:50000/query/ -X POST -d '{"rule_id": "1
總結(jié)
以上是生活随笔為你收集整理的esxi root 密码规则_陌陌风控系统静态规则引擎aswan的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。