交通信息資源平臺-接口授權與鑒權詳細設計_第1頁
交通信息資源平臺-接口授權與鑒權詳細設計_第2頁
交通信息資源平臺-接口授權與鑒權詳細設計_第3頁
交通信息資源平臺-接口授權與鑒權詳細設計_第4頁
交通信息資源平臺-接口授權與鑒權詳細設計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

編號:EHL-EP-RD-0A1

密級:

交通信息資源平臺

接口授權與鑒權詳細設計

[VI.1]

擬制人:胡綱飛

審核人:____________________

批準人:____________________

[2016年05月090]

北京易華錄信息技術股份有限公司

e-Hualu^易華錄接口規(guī)范

文件變更記錄

變更類型:*A-增加M-修訂D-刪除

版本號日期變更類型修改人摘要審核人備注

V0.82016/03/28A張雷元,創(chuàng)建交通信息資源平臺接口授權

張韌,胡與鑒權詳細設計

綱飛

VI.02016/4/11M徐立峰、修改數(shù)據(jù)庫設計表,調(diào)整申請表與

張韌訪問授權表

VI.12016/5/09M徐立峰、完善設計文檔,1、增加授權流程

胡綱飛圖;2、增加各功能原型;3、增加

序列號實現(xiàn)規(guī)則;4、修改一些文

字描述。5、增加業(yè)務大類;

e-Hualu^易華錄接口規(guī)范

目錄

1資源平臺授權流程.........................................................................1

2授權功能設計..............................................................................2

2.1功能設計.............................................................................2

2.1.1授權管理..........................................................................2

2.1.1.1接口使用申請...........................................................................2

2.1.1.1.1原型設計............................................................................2

2.1.1.1.2功能操作設計.......................................................................2

2.1.1.2接口申請審核...........................................................................3

2.1.1.2.1原型設計............................................................................3

2.1.1.2.2功能操作設計.......................................................................4

2.1.2參數(shù)配置..........................................................................4

2.1.2.1接口標識配置...........................................................................4

2.1.2.1.1原型設計...........................................................................4

2.1.2.1.2功能操作設計.......................................................................5

2.2數(shù)據(jù)庫設計...........................................................................5

2.2.1外掛接口申請表(T_IMS_APPLYFORM).......................................................................................................5

2.2.2外部接口定義表(T」MS」NFO)..................................................................................................................6

2.2.3外部接口訪問授權表(T」MS_PERMIT).....................................................................................................7

2.2.4本地接口訪問控制表(暫時不用考慮)................................................8

3鑒權功能設計..............................................................................8

4附錄.....................................................................................13

4.1授權碼生成規(guī)則(無錫所提供)........................................................13

4.2基礎應用系統(tǒng)接口說明..........................................................19

e-Hualu^易華錄接口規(guī)氾

1資源平臺授權流程

現(xiàn)由于本次共同開發(fā)的平臺的部局端尚未實現(xiàn),所以采用接口授權功能在當?shù)刭Y源平

臺(易華錄)上實現(xiàn),流程大致如下:

1)廠商在資源平臺填寫接口申請信息

2)當?shù)刭Y源平臺的系統(tǒng)管理員審核后,生成接口訪問控制信息

3)廠商可以在“接口使用授權查詢”頁面,查詢到jkxlh(接口序列號)

授權系統(tǒng)流程圖

階段內(nèi)段階段

接口方法實現(xiàn)

申請審核生成授權碼

圖1.1

1

易華錄接口規(guī)范

2授權功能設計

2.1功能設計

2.1.1授權管理

2.1.1.1接口使用申請

2.1.1.1.1原型設計

2016.04.11星期一④」接口使用申請宜理

?授權R理

調(diào)用軟件開發(fā)尊位:易華泉,一舊圖|

。?廢口使用申請

手刷?,'網(wǎng)向帔

o堂口a;核由清

調(diào)用軟件開發(fā)單位謁用單位IP范國記錄狀態(tài)序列號

⑥參數(shù)&陷

易華錄無惕支隊127001'12700255未生成陳列號

OM標識sea

無惕所無援支隊127001.127005:12700204已序列號XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

圖2.1

訪問次數(shù)限

接口標識接口名稱狀態(tài)

□制

交通流監(jiān)測設備狀態(tài)

84C01-1啟用

信息

.84C02檢測器1分鐘原始數(shù)據(jù)-1啟用

□72C02實時過車記錄信息200啟用

圖2.2

2.1.1.1.2功能操作設計

(1)通過調(diào)用軟件開發(fā)單位可查詢出所有申請的調(diào)用方,輸出列表:調(diào)用軟件開發(fā)單

位、調(diào)用單位、IP范圍、記錄狀態(tài)、序列號,如圖2.1

(2)圖2.2為新增申請頁面

2

e-Hualu^,易華錄接口規(guī)范

輸入項:調(diào)用軟件開發(fā)單位、調(diào)用單位、IP、使用起止時間、系統(tǒng)功能描述、使用接

口列表;

輸入項說明:

>調(diào)用軟件開發(fā)單位,必填項,數(shù)據(jù)來源是從無錫所廠家表同步過來的數(shù)據(jù);

>調(diào)用單位,必填項,為機構表的數(shù)據(jù);

>IP,必填項,分兩種選擇:IP范圍和IP列表,入庫規(guī)則為范圍用分隔,

列表用分隔,如127.0.0.1-127.0.1.255,127.0.0.1;127.0.0.5;127.0.0.7

>起始時間,必填項;

>使用接口列表,必填項,數(shù)據(jù)來源T_IMS」NFO,點擊文本框彈出右側接口列

表。

(3)編輯功能分為兩種:未生成序列號與已生成

已生成序列號:在編輯頁面中,調(diào)用軟件開發(fā)單位、使用單位為不可編輯狀態(tài);

編輯保存后,將SQLX字段更新為2;

2.LL2接口申請審核

2.1.1.2.1原型設計

2016.04.11?□格口審核中謂雷停

@曲2理

?用軟件開發(fā)?位:易華錄?董詢

。接口候用峭

謂用校件開發(fā)單位調(diào)用單位

ifi

易華錄無禱支隊12700172700255

無將所無援支隊12700U27.006,12700204

osntSiPEa

圖2.3

3

易華錄接口規(guī)范

訪問次數(shù)限

接口標識接口名稱狀態(tài)

交通流監(jiān)測設爸狀態(tài)

84C01-1啟用

信息

84C02檢測器1分鐘原始數(shù)據(jù)-1啟用

72C02實時過車記錄信息200啟用

圖2.4

2.1.1.2.2功能操作設計

(1)通過調(diào)用軟件開發(fā)單位可查詢出所有申請的調(diào)用方,輸出列表:調(diào)用軟件開發(fā)單

位、調(diào)用單位、IP范圍,如圖2.3

(2)圖2.4為審核頁面

輸入項:審核狀態(tài)、審核意見,其他項為只讀屬性;。

(3)審核通過后,生成授權碼(序列號),生成規(guī)則參考4.1

2.1.2參數(shù)配置

2.L2.1接口標識配置

2.1.2.1.1原型設計

2016.04.11④

?度權管理

StQ

6讖口使用甲溝

。■瓶0M核由濡

?,數(shù)££

o&afinPea

圖2.5

4

e-Hualu^易華錄接口規(guī)范

2.1.2.1.2功能操作設計

(1)通過接口標識、接口名稱(支持模糊查詢)可查詢出所有接口標識列表,輸出列

表:接口標識、接口名稱、訪問限制次數(shù)、狀態(tài)、封裝類、實現(xiàn)方法,如圖2.1

(2)點擊新增按鈕后,在列表中新增一行

輸入項:接口標識、接口名稱、訪問限制次數(shù)、狀態(tài)、封裝類、實現(xiàn)方法;

輸入項說明:

>接口標識,必填項,由實現(xiàn)接口的公司提供;

>接口名稱,必填項;

>訪問限制次數(shù),必填項,-1表示不限制,必須為數(shù)字

>封裝類,調(diào)用接口映射的class;

>實現(xiàn)方法,調(diào)用接口映射的實現(xiàn)方法。

(3)點擊編輯,可以對列表中的結果直接修改并保存。

2.2數(shù)據(jù)庫設計

2.2.1外掛接口申請表(T_IMS_APPLYFORM)

序號字段編碼字段名稱類型是否為空備注

1XTLB系統(tǒng)類別VARCHAR2(2)NO枚舉字典

2AZDM安裝點代碼VARCHAR2(6)NO

NO關聯(lián)廠商表id,與無錫所

3DYRJKFDW調(diào)用軟件開發(fā)單位VARCHAR2(12)

同步

NO用戶單位,如支隊、大

4DYZDW調(diào)用者單位VARCHAR2(12)

隊,關聯(lián)部門表id

5KFWJK可訪問接口VARCHAR2(2000)NO

NO~表示范圍,如

127.0.0.T127.0.0.255;

6IPIPVARCIIAR2(2000)

“;”表示ip集合,如

127.0.0.1;127.0.0.2

5

易華錄接口規(guī)范

7JKQSRQ調(diào)用者起始日期DATENO

8JKJZRQ調(diào)用者截止日期DATENO

9SQLX申請類型CHAR⑴YES1:新申請,2:調(diào)整申請

YES0:未生成序列號,1:已

10JLZT記錄狀態(tài)CHAR(l)

生成序列號,2:不同意

11GXSJ更新時間DATEYES

12BZ備注VARCHAR2(4000)YES

13SPYJ審批意見VARCHAR2(500)

注:聯(lián)合主鍵:XTLB+AZDM+DYRJKFDW+DYZDW

1.AZDM(安裝點代碼):可以先寫死,為當?shù)氐男姓^(qū)劃

2.DYRJKFDW(調(diào)用軟件開發(fā)單位):訪問公安網(wǎng)平臺廠商表

3.KFWJK(可訪問接口):為一組接口信息json字符串,解決廠商與接口多對多的關系

KFWJK示例如下:

{"60W01:{'jkmc':'非現(xiàn)場違法待篩選寫入接口','gpfwcsxz':-1,zt':1},

'60W02':('jkmc':'非現(xiàn)場違法待審核寫入接口','gpfwcsxz':'-1','zt':'T},

63Q01:{'jkmc':'客運車輛信息核查接口'gpfwcsxz:-1,zt:1})

4.同一個廠家,一個調(diào)用單位,一個系統(tǒng)分配一個授權碼。

2.2.2外部接口定義表(T_IMS」NFO)

序號字段編碼字段名稱類型是否為空備注

由系統(tǒng)類別+一位級別代

碼+兩位接口順序號組成

(參照監(jiān)管系統(tǒng)),C:支

1JKID接口IDVARCHAR2(5)N0

隊、B:總隊,A:部局,如

01A01代表機動車部局端提

供的接口

2JKMC接口名稱VARCHAR2(128)NO

3XTLB系統(tǒng)類別VARCHAR2(2)NO枚舉字典

4JKZT接口狀態(tài)VARCHAR2(1)NO1:啟用,0:未啟用

6

e竺變少易華錄接口規(guī)范

5JKLB接口類別VARCHAR2(1)NO1:寫入接口,2:查詢接口

封裝類

6FZLVARCHAR2(500)YES接口映射的class類

7SXL實現(xiàn)方法VARCHAR2(500)YES實現(xiàn)接口的具體方法

8GXSJ更新時間DATENO

9ZGPFWCSXZ最高頻訪問次數(shù)限制NUMBERNOT為不限制

10BZ備注VARCHAR2(4000)YES

注:

1.主鍵為JKID

2.該表定義系統(tǒng)向外提供的接口信息

2.2.3外部接口訪問授權表(T_IMS_PERMIT)

序號字段編碼字段名稱類型是否為空備注

1JKXLH序列號VARCHAR2(256)NO

2XTLB系統(tǒng)類別VARCHAR2(2)NO

3AZDM安裝點代碼VARCHAR2(6)NO

關聯(lián)廠商表id,與無錫所

4DYRJKFDW調(diào)用軟件開發(fā)單位VARCHAR2(12)NO

同步

用戶單位,如支隊、大

5DYZDW調(diào)用者單位VARCHAR2(12)NO

隊,關聯(lián)部門表id

7KFWJK可范惘接口VARCHAR2(2000)NO

NO、表示范圍,如

127.0.0.T127.0.0.255;

8IPIPVARCHAR2(2000)

“;”表示ip集合,如

127.0.0.1;127.0.0.2

10JKQSRQ調(diào)用者起始日期DATENO

11JKJZRQ調(diào)用者截止日期DATENO

13GXSJ更新時間DATEno

7

易華錄接口規(guī)范

14BZ備注VARCHAR2(4000)YES

2.2.4本地接口訪問控制表(暫時不用考慮)

序號字段編碼字段名稱類型是否為空備注

1XTLB系統(tǒng)類別VARCHAR2(2)N

2AZDM安裝點代碼VARCHAR2(6)N

省集中模式的填寫發(fā)證機

3DYRJKFDW調(diào)用者發(fā)證機關VARCHAR2(12)N

關頭

4DYFZJGVARCHAR2(10)N

5JKID接口編號VARCHAR2(5)N

6ZT狀態(tài)CTIAR(l)N

7GPFWCSXZ高頻訪問次數(shù)限制NUMBERN

8ZJFWSJ最近訪問時間DATEY

9DRFWCS當日訪問次數(shù)NUMBERY

10BZ調(diào)用者起始日期VARCIIAR2(400)Y

注:

1.該表維護的是本地接口訪問控制信息,對外部接口訪問授權表中的可訪問接口(KFWJK)

詳細信息進行維護,比如在一些大城市中為了減小系統(tǒng)壓力,對于部局端已經(jīng)審核過

的外部接口授權信息(外部接口訪問授權表中的kfwjk字段定義的接口),當?shù)亟痪?/p>

以自己啟停對某些廠商某幾個接口(ZT字段)

2.現(xiàn)由于本次共同開發(fā)的平臺的部局端尚未實現(xiàn),這張表可以先不實現(xiàn)

3鑒權功能設計

具體可以參考以下代碼,綠色部分為具體鑒權點和校驗邏輯,青綠色部分可以先不實

現(xiàn)

/**

*判斷

8

e-Hualu接口規(guī)范

*@parambdfzjg

*@paramjkxlhStr

*@paramjkidStr

*@paramxtlb

*@paramremotelp

*@paramwebAppContext

*@return

*/

privateDbResultcheckValid(Stringbdfzjg,StringjkxlhStr,StringjkidSir,Stringxtlb,Stringremotelp,

WebApplicationContextwebAppContext){

DhResultr=newDbResult();

r.setCode(1);

r.setMsg(,,u);

t>y(

if(!StringUtil.checkBN(jkxlhStr))(

thrownewException^未輸入接口序列號

if(!StringUtilcheckBN(jkidStr)){

thrownewException■未輸入接口ID”);

ContentQuetyDaocontentQuery'Dao

(ContentQueryDao)webAppContext.getBean(ContentQueryDao.class);

ControlQueryDaocontrolQueryDao

(ControlQueryDao)webAppContext.getBean(ControlQueryDao.class);

AppformJgWriteDaoappfannJgWriteDao

(AppformJgWriteDao)wehAppContext.getBean(AppformJgWriteDao.class);

HfQuetyDaohfQueiyDao=(HfQuetyDao)webAppContext.getBean(HfQueryDao.class);

Controlctl=controlQueryDao.queryControlByJklxh(jkxlhStr);

9

。竺則5易華錄接口規(guī)范

if(cil--null)1

thrownewException("接口序列號不存在;

AppfomiJgappfonnjg=newAppfi)nnJg();

appformJg.setXtlh(ctl.getXtlh());

appfonnJ^.setAzdm(ctl.getAzdm());

appforniJ^.setDyrjkfdw(ctl.getDyrjkfdw());

appformJg.setDyfzjg(ctl.getDyfzjgO);

Controljkxlh=appfarmJgWriteDao.queryControlJkxlh(appfonnjg);

Controljyw=controlQueryDao.queryControlJyw(appfonnjg);

〃可以不考慮,

ijljyw==null)(

thrownewException^驗證接口校驗位異常);

if(!jyw.getJyw().equals(ctl.getJyw())){

thrownewException("接口校驗位被非法修改,);

intidx=ctl.getKJyvjk().indexOf(,^n+jkidStr+

if(idx<=0)/

thrownewException("該接口序列號不適用于該接口1D");

StringstrKj\vjk=ctl,getKfwjk().replaced//(1,n,);

10

易華錄接口規(guī)范

JSONOhjectkjyvjkJSON=JSONOhject.fromOhject(strKJyvjk);

JSONObjectcurJkidJson=(JSONObject)kfwjkJSON.get(jkidStr);

Stringzt=(String)curJkidJson.get(Hzt");

識!〃l”.equak(zt)){

thrownewException(”部局已對該序列號停用本接口

)else{

〃可以先不考慮

Hfchf=hfQueryDao.queryHf(ctl.getXtlb(),ctl.getAzdm(),ctl.getDyrjkfdw()fctl.getD)fzjg(),

jkidStr);

if(chf!=null){

與”thr一ownewException^當前系統(tǒng)己對該序列號停用本接口

//xuxd20140902增加ip地址邏輯判斷,支持ip列表方式,為列表時jsip=u;

iffctl.getKsip().indexOf(remotelp)<0){

thrownewException("不是合法的IP地址”)

String!]remotelps=reniotelp.split(,\^n);

String[Jksips=ctl.getKsip().split(");

String1]jsips=ctl.getJsip().splitC^

longlJrips=newl(mg[4];

long[]kips=newlong14];

11

易華錄接口規(guī)范

thrownewExcepii(m("不是合法的IP地址

curTime=System.currentTimeMillis();

thrownewException”接口尚未啟用

f(Timestamp.valueOf(ctl.getJkjzrq()+r,23:59:59n).getTinie()<curTirne){

thrownewExceptiim(”接口已過申請期限

Contentent=c(mtentQueryDcu).getContent(jkidStr);

12

易華錄接口規(guī)范

thrownewException("接U不存在,或接口被非法修改);

if(Timestamp.valueOf(cnt.getJkyxq()).getTime()<curTime){

thrownewExcept接口已過有效期);

:equals(cnt,getJkzt())){

thrownew

}catch(Exceptione){

r.setCode(-l);

nsetMsg(e.getMessage());

returnr;

4附錄

4.1授權碼生成規(guī)則(無錫所提供)

JAVA代碼:

publicControlqueryControlJkxlh(AppformJgbean)throwsException{

StringjkxlhSql=,fSELECTEWS_PKG.CreateEwsJkxlh(?)JKXLHFROMDUAL";

Controljkxlh=(Control)this.jdbcTemplate.queryForBean(jkxlhSql,

newObject[]{bean.getXtlb()++bean.getAzdmO++bean.getDyrjkfdw()

++bean.getDyfzjgO),Control,class);

if(jkxlh==null|IIStringUtil.checkBN(jkxlh.getJkxlhO)){

thrownewRuntimeException("計算接口序列號錯誤!");

13

易華錄接口規(guī)范

returnjkxlh;

}

FunctionGet_Encrypt(ArgInstrInVarchar2)ReturnVarchar2Is

Begin

IfRaw_KeyIsNullThen

Get_Raw_Key;

EndIf;

ReturnRawtohex(Utl_Raw.Bit_Xor(Utl_Raw.Cast_To_Raw(Arg_Instr),

Raw_Key));

EndGet_Encrypt;

〃生成接口序列號

FunctionCreateewsjkxlh(PlaintextVarchar2)ReturnVarcharIs

CiphertextVarchar2(256);

Begin

Ciphertext:=Get_Encrypt(Plaintext);

IfLength(Ciphertext)>256Then

Ciphertext:=Substr(Ciphertext,1,256);

EndIf;

ReturnCiphertext;

End;

*判斷

*@parambdfzjg

14

易華錄接口規(guī)范

*@paramjkxlhStr

*@paramjkidStr

*@paramxtlb

*@paramremotelp

*@paramwebAppContext

*?return

*/

privateDbResultcheckValid(Stringbdfzjg,StringjkxlhStr,String

jkidStr,Stringxtlb,Stringremotelp,WebApplicationContextwebAppContext){

DbResultr=newDbResult();

r.setCode(1);

r.setMsg(nM);

try(

if(IStringUtil.checkBN(jkxlhStr)){

thrownewException("未輸入接口序列號");

)

if(IStringUtil.checkBN(jkidStr)){

thrownewException("未輸入接口ID");

)

ContentQueryDaocontentQueryDao=

(ContentQueryDao)webAppContext.getBean(ContentQueryDao.class);

ControlQueryDaocontrolQueryDao

(ControlQueryDao)webAppContext.getBean(ControlQueryDao.class);

AppformJgWriteDaoappformJgWriteDao

(AppformJgWriteDao)webAppContext.getBean(AppformJgWriteDao.class);

HfQueryDaohfQueryDao

(HfQueryDao)webAppContext.getBean(HfQueryDao.class);

Controlctl=controlQueryDao.queryControlByJklxh(jkxlhStr);

15

e-Hualu^易華錄接口規(guī)范

if(ctl==null){

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論