Certificates — Overview & Generation

DEX455 - Apex 集成与工具完全指南:Callouts、命名凭据、WSDL2Apex、Mock 测试

📄 第 395 页 🎬 视频课程

课程章节介绍

同学们,今天我们来看一个既重要又容易让人头疼的概念:双向SSL身份验证。别被名字吓到,其实它就像两个人见面要先互相看身份证一样,客户端和服务器彼此都要验证对方的身份。 那在Salesforce里,怎么来启用双向SSL呢?有几个关键步骤,我慢慢说给你听。 首先,你需要一个证书。这个证书就像是你Salesforce的身份证。你可以直接在Salesforce里生成一张自签名证书,也就是自己给自己签发的,速度快,适合测试或者内部系统。但如果是正式生产环境,和外部合作伙伴对接,最好还是去正规的证书颁发机构申请一个他们签发的证书,对方更认可。 有了证书之后,第二步,就要把这个身份证跟你的代码绑在一起。如果你用的是早期的SOAP服务,调用时可以通过一个叫clientCertName_x的变量来指定证书。如果你用现在的HTTP请求去调用外部API,那就用setClientCertificateName这个方法把证书的名字传进去。这样你的代码出去敲门的时候,就会带着这张身份证了。 第三步非常关键,如果你是连接一个第三方系统,而且你用的是自己签发的自签名证书,对方可不认识你。怎么办?你得把你的证书分享给对方,让他们把这张“身份证”添加到他们的信任关系、或者叫密钥库里。反过来也一样,如果对方是自签名证书,它们也得给我们一份,我们也要把它装进来,后面会说到。 第四步,要配置远程站点设置。在Salesforce里,你要调用外部的网址,得先在“远程站点设置”里把那个地址加进去,否则网络策略会拦住你的请求。不过这里有个小技巧,如果你用命名凭据(Named Credential)的话,就可以省去这一步了,因为命名凭据已经帮你做好了认证和端点管理的整合,更加方便和安全。 最后,还有一个自动完成的好处:当你保存证书成功后,Salesforce会自动帮你生成对应的密钥。这省得你再去手工折腾密钥生成的事情,系统全给你办妥了。 这样梳理下来,是不是清晰多了?简单总结就是:先搞证书,再绑定代码,需要的话交换证书,配上远程站点或者用命名凭据,然后钥匙自动配好。靠着这几步,就能实现安全可靠的双向SSL啦。下节课我们会实际操作一下,今天先理解这个流程。

关键词

Apex Salesforce Developer Guide