平台功能-子帳號授權改造升級介紹


 

改造內容

這次改造內容分為兩塊,第一是子帳號sessionkey的改造;第二是子帳號授權模式的改造;

①.子帳號 sessionkey改造,影響主要面向ISV(第三方應用開發者)

  • 改造前:子帳號登陸取得的授權碼sessionkey值跟主帳號的一致;

  • ## 改造後:給子帳號頒發重新產生的sessionkey值,與主sessionkey相關但參數值不同, 子sessionkey授權時長與主sessionkey一致,支援主子sessionkey各自獨立刷新高風險讀寫API的有效時長,子帳號授權方式與回傳參數解析不變;

 

####②. 子帳號授權模式的改造,影響主要面向使用者;(請點選改造後使用者授權流程)################### #####改造前###:只支援所有子帳號對第三方應用的存取權;#####################已改造後### :可支援透過角色授權第三方應用或針對個別子帳號單獨授權第三方應用;#####################轉換範圍############################################################################### #############################只要支援子帳號的應用都生效;(###本次改造暫不對旺旺外掛類應用生效###)######################

改造目的

對使用者來說:

①. 保護使用者資料安全

;後期會在api層面根據不同權限不同子帳號sessionkey限制api權限(還在規劃中);

②. 多個應用程式使用一套帳號系統

;一個賣家會使用多個isv的系統,如ERP、CRM等,可以使用一套帳號系統;

③. 分角色分員工使用系統

;賣家主帳號可以根據員工權限和角色決定是否給予系統使用權限;

對ISV與商家來說:

#①. 日誌監控

;使用子帳號的sessionkey,方便記錄操作源頭,做安全日誌監控;並且官方會統一開放操作日誌供用戶查詢,進一步記錄到最準確的操作者; (目前官方記錄的操作日誌都是基於父帳號的,因為子帳sessionkey就是直接使用父帳號的,改造之後會做成繼承子sessionkey的控制);

注意:

#日誌查詢入口:在子帳號管理系統的「操作日誌」中查詢;

#監控業務範圍:主要是幾個核心的業務,如商品、交易等的修改、刪除等操作,所以監控的API只有部分高風險的API;

#監控物件範圍:所有支援子帳號並呼叫修改價格等高風險監控的API的第三方應用,以及淘寶後台對應操作記錄;

日誌開放內容:只記錄行為,不記錄特定的API,具體到操作者nick,時間,appkey(若是第三方應用),操作內容等;

#########

 

子帳號sessionkey生效規則

  • ##子sessionkey與主sessionkey的授權有效時長相等,當主帳號sessionkey失效時,子sessionkey也同樣失效;子帳號無法授權需給予提示;
  •  
主帳號在「子帳號管理」中取消某子帳號的授權,則該子帳號的所有外部sessionkey都失效;子帳號無法授權時給予提示;

在子sessionkey有效的前提下,主子帳號都可各自刷新其R1、R2、W1 、W2四個長度,且相互不受影響;(詳見//open.taobao.com/doc/detail.htm?id=1002);

子帳號首次授權、短授權驗證需彈出授權頁面,無法授權成功需提示原因。

T1OpnvXdJqXXb1upjX.jpg

 

################### ######## #######子帳號sessionkey頒發規則#########################舊授權方式###:TOP授權大開關,控制所有子帳號可用或不可用。 #####################       a.  針對舊授權方式:將取消TOP給子帳號授權的大開關,兩個入口取消:###### ############               1.  TOP的授權頁面,取消授權子賬號的勾選框,如圖(1);################ ##               2.  賬號管理中的應用授權頁修改,取消下圖紅框中的功能,如圖(2);############### ####### ############## #######

圖(1)

 

T17O2wXnBkXXb1upjX.jpg

 

圖(2)

 

          b.  主帳號對子帳號的授權在賣家中心的「子帳號管理」中設置,官方會將授權關係推送到TOP,TOP只給擁有存取權的子帳號核發子sessionkey,否則不發給。

 

  •   

T13bvxXolhXXb1upjX.jpg

T1JQTxXkJcXXb1upjX.jpg

T1XHjwXbBmXXb1upjX.jpg

T1zA6xXb8cXXb1upjX.jpg

################################################################################################################################ # ##########新授權方式###:TOP取消授權大開關,使用者在「賣家中心---子帳號管理」中選擇子帳號授權(可透過角色授權,也可直接對某子帳號授權),如圖(3)圖(4)。 ########################    a.  ######進入“賣家中心—子帳號管理—員工管理—組織架構”,選中你要編輯的員工子帳號或新建員工:#######################################圖(3):直接對某子帳號授權###############             b. 進入“賣家中心—子帳號管理—員工管理—角色管理”,選取某個要編輯的角色:######################## #######

圖(4):角色授權

子帳號授權切換規則

    a. 對於已經支援子帳號的APP,允許ISV自主切換,之後會在UP清單出現切換按鈕”升級子帳號授權模式”,點選彈窗確認提示,

如下圖的模式,2個月後將統一切換完畢;

## 

T1NxHxXhNdXXb1upjX.jpg

T1f5YxXeJeXXb1upjX.jpg

 

    b.  對於未支援子帳號的APP,專案上線後選擇支援子帳號時,必須都會採用改造後的子帳號sessionkey。

ISV修改內容

#已經支援子帳號的老APP

##########      ① 程式變更:##################         A. 子帳號登陸流程,取消直接取父帳號的sessionkey所使用的過程,重新使用TOP提供的授權方式取得授###權######

             碼,appkey和appsecreat不做改變;

         B. 如果程式中接受一次接受一次接受一次接受一次接受一次接受一次接受一次接受一次接受一次接受一次接受一次接受一次接受一次接受 劑量的邏輯,請嘗試!修改成一次接受多個(以陣列形式存放),避免子帳號之

            間踢下線的現象;

      ② UP列表點擊切換按鈕,進TOP開發者中心→應用管理→應用列表,如「子帳號授權切換規則」圖片所示;

 

 

未支援子帳號的老APPT1DLPxXmFdXXb1upjX.jpg

     ① 在​​TOP應用管理→管理授權介面,補構上「是否支援淘寶子帳號登陸”,如圖:

#   ② 程式參考內容如上;

新申請的APP

   ① 應用創建之後,在TOP應用管理→管理授權介面,構上“是否支援淘寶子帳號登陸”,如上;

   ② 程式參考內容如上;

 

######子帳號授權系統#####################子帳號授權系統################################################################################## ##########

l  基於OAuth2.0的登入驗證授權方式(正式建議使用)://open.taobao.com/doc/detail.htm ?id=118  (對於使

#  以短授權的API建議使用該授權協定);

如何知道目前使用者是否是子帳號?透過解析傳回的json格式,解析回傳有sub_taobao_user_id和sub_taobao_user_nick。具體方法看文件2.2;

l 基於

## TOP協議的登入授權方式://open.taobao.com/doc/detail.htm?id=105

(已支援短授權

API,但不建議讓

#  用)

如何知道目前使用者是否是子帳號?透過解析傳回的top_paramater參數,具體方法參考

//open.taobao.com/doc/detail.htm?spm=0.0.0.181.wmACQo&id=110

 ### ############################ ##################

ISV改造過程建議

#① 後台定時輪詢操作

# 針對應用程式實現的定時訂單下載、定時商品上架、定時庫存變更等功能操作,可以保持使用快取在本地的主帳號sessionkey,

為一旦子帳號關閉或過期,​​該子帳號的sessionkey都會失效,導致應用程式定時功能無法正常進行;

 

#②

日常運算

##對於日常的操作功能,如價格修改,屬性修改等,官方強烈建議根據當前會話者的sessionkey來作為調用根據,特別是調用到高危險api(刪、改操作的操作;官方以後會將高危險的API寫的操作做成繼承子sessionkey的控制,相關的操作記錄會記錄到對應的子帳號,做到最準確的安全監控(這部分官方日誌資訊以後會統一開放);

######### ################### ################################ ############# ####③### ######單一app單sessionkey######################對於商家後台等自用型應用,isv一般程序設定是寫死appkey,接受一個sessionkey(父帳號sk),子帳號授權碼改造後(不同子帳號不同sessionkey),支援多個子帳號的帳號系統應用需要設定接受多個sessionkey,避免多個帳號登陸出現排擠下線現象;################## ##################④### ##################################################################################################### #及時判斷sessionkey是否有效############
  • 對於本地保存sessionkey形式的,建議用戶每次登陸後將當前返回的新sessionkey與本地保存對應用戶老的sessionkey做對比,如果不一致,要用新sessionkey覆蓋老sessionkey,保持sessionkey的有效性;因為淘寶子帳號在欠費、停用、主帳號取消過某個應用的授權、W2過時未重新登陸、R過時未刷新的情況下,對應子帳號的老sessionkey就會失效,之後重新使用,會重新頒發新sessionkey;

#不儲存在本機,每次使用者登入取得目前sessionkey使用;(建議使用)目前TOP的授權系統,在sessionkey沒有失效前,每次登陸會直接進入系統並傳回同一個sessionkey,若失效或sessionkey時長過期,之後登陸會重新跳到授權頁面並返回新頒發的sessionkey,所以採取使用當前登陸返回的sessionkey永遠是最新的;(對於使用父帳號後台定時輪訓操作的功能,還是建議保持父帳號的sessionkey保存在本機)

 

################## ##################################子帳號API############## ####呼叫詳情參考://open.taobao.com/doc/api_cat_detail.htm?cat_id=10123&category_id=102;#############FAQ#########關於此文件暫時還沒有FAQ##########