關於http接口防止非法調用的設計方案
關於http接口防止非法調用的設計方案
假設有個http接口:
如 https://www.a.com/getBlog.jsp?uid=12
其他係統要調用這個接口取數據:
如果不做安全處理,任何係統隻要知道接口地址和參數即可調用。很可能造成非法調用,造成安全問題。
。
為了安全,可以考慮如下方案:
接口調用時增加一個校驗參數:如 mcheck=xxxxxx
https://www.a.com/getBlog.jsp?uid=12&mcheck=xxxxxx
校驗參數生成規則 假設如下:
md5(uid+"javaboy2012")
參數為uid和某個約定的字符串 經過md5編碼後的值。
調用時候:按照生成規則編碼後作為參數傳遞給接口,
https://www.a.com/getBlog.jsp?uid=123&mcheck=8C4E954B6DBD860517B68FAEF37C87CB
借口根據相同的編碼規則作判斷
getBlog.jsp 文件內容:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="com.yanek.util.MD5"%>
<%
String uid=request.getParameter("uid");
String mcheck=request.getParameter("mcheck");
String commonkey="javaboy2012";
MD5 md5=new MD5();
if (md5.getMD5ofStr(uid+commonkey).equals(mcheck))
{
out.print("成功調用,返回合法數據:!"+uid+"的數據");
}
else
{
out.print("非法調用");
}
%>
最後更新:2017-04-04 07:03:45
上一篇:
實戰:MySQL Sending data導致查詢很慢的問題詳細分析
下一篇:
poj 1258 Agri-Net MST
穿戴式醫療儀器電子再成產業焦點
HTAP數據庫 PostgreSQL 場景與性能測試之 31 - (OLTP) 高吞吐數據進出(堆存、行掃、無需索引) - 閱後即焚(讀寫大吞吐並測)
totem播放列表中文亂碼的修複
刪除mongodb庫
Objecitive-C中的nil
工信部信通院與阿裏雲合作,共同提升中國APP質量
[WCF安全係列]綁定、安全模式與客戶端憑證類型:NetNamedPipeBinding、NetTcpBinding與NetMsmqBinding
微軟將Bing變開放平台 同穀歌爭奪開發者
Java網絡教程之Socket
連載:麵向對象葵花寶典:思想、技巧與實踐(9) - “抽象類” 詳解