標籤:rsa sig 介面互動 限制 md5 base 特定 SHA256 登陸
總言:一般只要是 2端(調用方和被呼叫者)分離的 ,無論是後端對後端 還是前端對後端 或者終端對後端 正常的介面都需要有個鑒權,資料加解的過程
1.身份標識符
1.1.token方式鑒權 token作為身份標識符,
備忘:一般程式會有登陸模組,或者身份認證模組 ,調用認證介面 介面提供方 向 調用方下發token 作為身份標識符,後續需要鑒權介面帶上token,以此為憑證依據;token 有一定的生命週期(有效期間) ,和具體的或者專屬的建置規則( token 產生有獨立的規則 可以帶上特殊因子),憑證有效期間的處理: 處理方式有 主動續期 或者被動 續期 或者限制 使用次數
- 被動 續期 :調用方在調用介面時候, 介面自動延長使用時間 例如: 10點30分調用介面,token有效期間會自動後延續30分鐘
- 主動 續期 :介面提供方不自動處理憑證(token)續期,比如請求登陸介面時 介面下發的token 會限制有效期間 或者 將有效期間 連帶一起下發;調用方拿到token 和 有效期間 ,然後 根據時間,在有效期間內 調用提供的續期介面 ,介面提供方通過續期介面 如果續期介面產生的token發生變化事(續期下發的新token 可以 與之前 token一致也可以不一致),後端需要做兼 處理,保證新舊token在特定時間內同時有效。(如果程式設定了加密認證,當加密認證有更新時,同理需要提供更新介面,保證新舊並存時間)
- 使用次數 :一般特殊介面 憑證只需要用到少量的次數或者只是單次使用,可以進行標識使用次數控制。
1.2 固定id (key) 或者openid標識符 作為身份標識符號
備忘:固定標識比較長見 ,比如介面提供方為所有需要的調用方 每一個分配一個獨立的 標識符號和 一個加密串
介面提供方以特殊的方式將加密串提供給調用方; 例如 商定的key 為123,請求方將 請求的參數 進行特殊 組合之後與key進行混合 產生 sign ,介面提供方根據sign鑒權(比如 將請求參數 拼接成字串 加個key MD5 或者sha1等 產生sign值介面提供方用同樣方式進行sign比對是否一致)
2.資料的加密
2.1key 或 認證
一般會用到 類似 sha1 sha256 MD5 base64 aes rsa rsa256 等
- 例子1:分配專屬的key 用設定的規則產生sign值進行校正
- 例子2:分配專屬的key 用特定的方式對資料進行aes加密 保證請求的資料 除部分公開資料外返回的全部都是秘文或者位元據,常用的方式是採用 pkcs 的規則 或者特殊的固定計算
- 例子3: 產生公開金鑰私密金鑰 採用rsa 方式進行處理
2.2 認證的類型
一般常見的認證格式有 ca認證 pfx ,cer ,pem等。一般openssl各種格式都可以相互轉換,
另外各個開發語言之間用到的格式可能會有差異
介面互動鑒權以及資料處理