Start here. This is the direct spoken answer to practice first.
Overview
A model rarely needs to see the credential used by the operation it is requesting.
I never place API keys, connection strings, access tokens, signing keys, or reusable credentials in prompts, system instructions, retrieved context, memory, or tool results. The model proposes a typed operation using an opaque resource reference. A trusted executor validates the request, authorizes it from the real user and tenant context, and obtains the narrow credential needed to perform that operation.