The FAQ content aligns well with AppExchange security requirements but needed several clarifications for accuracy and consistency with security scanner rules. First, I clarified 'TLS v1.2 or higher' to 'HTTPS with TLS v1.2 or higher' to make it clearer that HTTPS protocol is required, which aligns with the ApexInsecureEndpoint and AvoidInsecureHttpRemoteSiteSetting rules that flag insecure HTTP endpoints. Second, I corrected 'protected metadata settings' to 'protected custom settings' to use the accurate Salesforce terminology. Third, I added guidance about Named Credentials to address credential management security, which is a key AppExchange requirement. The FAQ's points about session handling, CORS configuration, and testing remain unchanged as they accurately reflect security best practices.
For security rules selected: ApexInsecureEndpoint relates to the FAQ's point about 'Use TLS v1.2 or higher for all communications' as this rule detects insecure HTTP endpoints. ApexSuggestUsingNamedCred connects to the FAQ's discussion of secure external service integration and credential management. AvoidInsecureHttpRemoteSiteSetting and AvoidDisableProtocolSecurityRemoteSiteSetting relate to the secure communication protocols section. The hardcoded credentials rules (AvoidHardcodedCredentialsInHttpHeader, AvoidHardcodedCredentialsInFieldDecls, AvoidHardcodedCredentialsInVarDecls, AvoidHardcodedCredentialsInVarAssign) all relate to the FAQ's guidance on 'Store sensitive data securely' and the overall theme of secure external service integration.