The security requirements for Marketing Cloud app components include:
1. **Access to Environments**: Provide access to all environments, packages, and external components your solution uses, including external web applications, services, and client or mobile applications (required or optional).
2. **Secret Storage**: Avoid writing secrets to property files, XML files, or obfuscating them. Secrets must be stored in the OS vendor-supplied keystore (e.g., keychain for Mac, DP-API for Windows, or gnome-keyring for Unix). Pure Java client apps cannot pass the security review if they store secrets permanently on the client.
3. **Server App Credentials**: Protect credentials against SQL injection and encrypt them with a key accessible to the application layer but not the database layer. Use vendor-supplied encryption functionality whenever possible.
4. **Testing and Documentation**: Perform end-to-end testing, configure test environments, and create supporting documentation before submitting the solution for review.
5. **Security Scan Reports**: Include security scan reports and explanations for any false positives flagged during testing.
6. **User Documentation and Policies**: Provide detailed solution user documentation and your company's information security policies. The extent of documentation may vary based on company size and maturity.
7. **OAuth 2.0 Guidelines**: Follow the OAuth 2.0 Web and Public App integration guidelines for Marketing Cloud, ensuring secure handling of authorization code requests and redirect URLs.
8. **Password Storage**: Test for password storage and ensure compliance with secure storage practices.
These requirements ensure secure handling of customer data and compliance with enterprise security standards.