We have a 3rd Party API that wants to connect to our Salesforce without using 2 factor authentication. They want to post data to Salesforce without asking for "access_token". They want us to enforce mutual authentication by some way so that they can exchange their SHA code. They are also going to share their certificate for mutual authentication. is there a way to accomplish this? They dont really want to use the 2 way "access_token" approach.
1 Answer
You can set up TLS mutual authentication in Salesforce by uploading your own certificate (+ its chain, if needed) and enabling that on a per-user (service account/integration user) basis. This will restrict the inbound connections from this user identity to trusted clients where the definition of trusted is based your X.509 certificate
Unfortunately doing so is not enough to access a Salesforce API. The caller still has to prove that it's been granted access to a particular API in addition to establishing trust at the transport/connection layer. If oAuth is too complicated, you can try a simpler scheme with SOAP as the protocol and username/password as credentials.