To implement secure metadata storage and meet security review requirements, follow these approaches:
1. **Protected Custom Settings**: Use protected custom settings to securely store sensitive information. Build a custom UI (e.g., Visualforce, Aura, or LWC) for subscribers to input and manage credentials securely, ensuring only authorized users have access.
2. **Protected Custom Metadata**: Store sensitive data in protected custom metadata, ensuring it is securely configured and adheres to best practices.
3. **Named Credentials**: Package metadata and configuration securely using named credentials. Subscribers can set up actual credentials post-installation, avoiding exposure during packaging.
4. **Encryption**: For sensitive data like encryption keys, store them in protected custom settings or metadata. Use AES symmetric encryption/decryption in Apex, and ensure encryption keys are securely stored and accessible only to authorized users.
5. **Access Restrictions**: Limit access to classes that handle sensitive data to admin users only. Avoid exposing sensitive data in API responses or unnecessarily.
These practices align with security review requirements and help mitigate risks associated with insecure storage of sensitive data.