之前講了「如何配置普通的 RSA2 密鑰」,今天來捋一下如何配置證書~
依照慣例先放一下官方文檔:[如何生成及配置公鑰證書],小伙伴們也可以直接按照文檔來~
?文章來源地址http://www.zghlxwxcb.cn/news/detail-750272.html
前期準備:證書的適用范圍
目前支付寶的所有產(chǎn)品都支持證書密鑰去進行調(diào)用。
其中「單筆轉(zhuǎn)賬」和「現(xiàn)金紅包」 只能使用 證書 進行接口調(diào)用。
詳情可參閱 ?? [什么接口推薦使用公鑰證書簽名]
?文章來源:http://www.zghlxwxcb.cn/news/detail-750272.html
劃重點:證書的主要用處
配置證書主要獲取 5 個參數(shù):CSR 文件 、應用私鑰、應用公鑰證書、支付寶公鑰證書、支付寶根證書
- 其中 CSR 文件 是拿來跟支付寶換 應用公鑰證書、支付寶公鑰證書、支付寶根證書 的;
- 而 應用私鑰、應用公鑰證書、支付寶公鑰證書、支付寶根證書 是要傳到代碼中進行接口調(diào)用的。
?
第一步:生成證書
需要先下載支付寶官方工具:密鑰生成工具。
通過這個工具,我們可以獲取到 CSR 文件 和 應用私鑰:
?
選擇【證書】、【RSA2】、【組織/公司】填寫支付寶賬號的全稱。
組織/公司 與 支付寶賬號的全稱 必須要保持一致,不然平臺配置會報錯:[上傳證書提示:CSR文件中的企業(yè)名稱 * 與認證的支付寶企業(yè)賬戶名稱 * 不匹配]。
?
點擊【打開文件位置】之后,我們可以在本地的 支付寶開放平臺密鑰工具 文件夾中找到生成的證書文件,文件名稱是 證書+證書生成的具體時間點,如下圖:
注意,其中:
- CSR文件 是要拿到平臺跟支付寶換 應用公鑰證書、支付寶公鑰證書、支付寶根證書 的。
- 應用私鑰 后續(xù)要寫到代碼里面的,需要妥善保管,如果泄露了需要及時更換整個密鑰。
?? [應用私鑰泄露會怎么樣]
- 應用公鑰 證書模式下一般情況用不到,先不管。
特別注意:這個工具生成的密鑰默認是 Java 語言(PKCS8 格式)使用的,如果是其他語言,請用工具中的【格式轉(zhuǎn)化】,把密鑰轉(zhuǎn)化成 PKCS1 格式。
?? [如何區(qū)分密鑰格式類型]
?
第二步:配置證書
配置密鑰的過程就是講 CSR 文件 要怎么去跟支付寶換 應用公鑰證書、支付寶公鑰證書、支付寶根證書。
其實官方的指引流程比較詳細了,只要找到配置的位置,接下來的步驟就比較順利。
位置在支付寶開放平臺對應的應用界面下:
?
?
沒有應用的小伙伴先可以創(chuàng)建一個應用 ?? [如何創(chuàng)建應用]
?
點擊【設置】,選擇【證書】:
?
?
點擊【下一步】,會有一個如何生成密鑰文件的指引說明,也就是本文之前說的生成密鑰步驟:
?
?
繼續(xù)點擊【下一步】:
?
在上傳文件的位置,選擇之前的 CSR 文件 上傳、
證書到期后的處理 直接選擇平臺自動簽發(fā),這兩個模式區(qū)別在于證書到期之后都會發(fā)通知告知安全聯(lián)系人需要修改證書,但是如果一直不處理的話,不自動簽發(fā)模式下的證書就自動過期了。這時這個密鑰下如果有線上業(yè)務在運行的話,所有業(yè)務都會因為證書到期而報錯導致業(yè)務中斷。
安全聯(lián)系人 就是填寫證書到期前要通知人的聯(lián)系方式。
?
點擊【上傳】之后,會有一個校驗,用驗證碼或者是支付密鑰校驗都可以:
?
?
上傳成功之后,就可以換到 應用公鑰證書、支付寶公鑰證書、支付寶根證書 ,直接下載下來:
?
?
第三步:如何使用證書
通過上文的配置密鑰的流程,我們就能拿到需要傳入到代碼中的 應用私鑰 、 應用公鑰證書、支付寶公鑰證書、支付寶根證書了
還是拿這個參考示例供大家查閱:
?? [手機網(wǎng)站支付的代碼參考示例]
import com.alipay.api.AlipayApiException; import com.alipay.api.AlipayClient; import com.alipay.api.CertAlipayRequest; import com.alipay.api.DefaultAlipayClient; import com.alipay.api.request.AlipayTradeWapPayRequest; import com.alipay.api.response.AlipayTradeWapPayResponse; import net.sf.json.JSONObject; public class AlipayTradeWapPay { public static void main(String[] args) throws AlipayApiException { /** 引用初始化方法,Config配置鏈接:https://opensupport.alipay.com/support/FAQ/08d46c24-15a8-4f1c-85a0-68fdf587f813 **/ CertAlipayRequest alipayConfig = new CertAlipayRequest(); alipayConfig.setServerUrl(Config.gatewayUrl); alipayConfig.setAppId(Config.app_id); alipayConfig.setCharset(Config.charset); alipayConfig.setSignType(Config.sign_type); alipayConfig.setFormat(Config.format); alipayConfig.setPrivateKey(Config.merchant_private_key); alipayConfig.setCertPath(Config.app_cert_path); alipayConfig.setAlipayPublicCertPath(Config.alipay_cert_path); alipayConfig.setRootCertPath(Config.alipay_root_cert_path); AlipayClient alipayClient = new DefaultAlipayClient(alipayConfig); AlipayTradeWapPayRequest request = new AlipayTradeWapPayRequest() JSONObject Content = new JSONObject() ; Content.put("out_trade_no", "20200612000001"); Content.put("subject", "subject"); Content.put("total_amount", "0.1"); Content.put("product_code", "ALIPAY_WAP_PAY"); request.setBizContent(Content.toString()); request.setNotifyUrl(Config.notify_url); AlipayTradeWapPayResponse response = alipayClient.pageExecute(request,"GET");//生成url鏈接 /** 獲取接口調(diào)用結(jié)果 **/ System.out.println(response.getBody()); } }
?
代碼中這四個參數(shù)對應的位置為:
merchant_private_key 傳入 應用私鑰
app_cert_path 傳入 應用公鑰證書
alipay_cert_path 傳入 支付寶公鑰證書
alipay_cert_path 傳入 支付寶根證書
?
以上就是配置「支付寶密鑰之如何配置證書」的教程啦~,希望對你有所幫助~??ヽ(°▽°)ノ?
?
?
?
?
?
到了這里,關于如何配置支付寶密鑰之如何配置證書|保姆級教學(二)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!