The security review process for an off-platform application connecting to Salesforce via OAuth includes the following steps:
1. **Principle of Least Privilege**: The application must request only the permissions necessary for its use case. OAuth is the preferred integration mechanism, and storing Salesforce usernames or passwords is not allowed.
2. **API Call Restrictions**: The app should not use the logged-in user's session to make arbitrary API calls.
3. **Secure Connections**: All connections must use HTTPS and meet certificate and SSL configuration requirements. Remote site settings and HTTP request endpoints must be properly described. Arbitrary servers or schemes are generally not permitted unless justified by a valid business case.
4. **Sensitive Data Protection**: Sensitive information, such as cryptographic secrets, API credentials, or passwords, must not be written to debug logs.
5. **Secure Coding Practices**: The application should follow secure coding practices and use automated security scanners to identify vulnerabilities.
6. **Thorough Testing**: Before submission, the app must undergo thorough testing, including manual and automated scans, to ensure compliance with Salesforce security guidelines.
These steps ensure the application meets Salesforce's security standards for OAuth-based integrations.