When consuming external services in Salesforce applications, the following security considerations apply:
**Data Transfer and Authentication:**
- Test external endpoints to ensure secure data transfer and authentication processes
- Ensure secure transfer of Salesforce credentials and data
- Store sensitive information, such as secrets, securely (e.g., in protected custom metadata)
**Security Scanning and Documentation:**
- Use automated security scanning tools to identify vulnerabilities and document any false positives
- Include security scan reports with explanations for any false positives
- Provide detailed user documentation and your company's information security policies
**Access and Permissions:**
- Obtain necessary permissions for testing external endpoints and follow Salesforce's guidelines for allowed IP addresses and domains
- Provide access to all environments, packages, and external components your solution uses, including external web applications or services, client or mobile applications, and all Apex and Visualforce included in your solution
**Security Implementation:**
- Properly implement Create, Read, Update, and Delete (CRUD) and Field-Level Security (FLS) checks
- Escape tainted inputs to prevent vulnerabilities like cross-site scripting (XSS)
- Ensure your submission is a Managed—Released package, as unmanaged or beta packages are not accepted
These practices help ensure secure integration with external services and compliance with AppExchange Security Review requirements.