Skip to main content

πŸ“ Google Project has API Keys 🟒

  • Contextual name: πŸ“ Google Project has API Keys 🟒
  • ID: /ce/ca/google/project/api-keys-for-active-services
  • Located in: πŸ“ Google Project

Flags​

Our Metadata​

  • Policy Type: COMPLIANCE_POLICY
  • Policy Category:
    • SECURITY

Similar Policies​

Logic​

Description​

Open File

Description​

API Keys should only be used for services in cases where other authentication methods are unavailable. Unused keys with their permissions in tact may still exist within a project. Keys are insecure because they can be viewed publicly, such as from within a browser, or they can be accessed on a device where the key resides. It is recommended to use standard authentication flow instead.

Rationale​

To avoid the security risk in using API keys, it is recommended to use standard authentication flow instead. Security risks involved in using API-Keys appear below:

β€’ API keys are simple encrypted strings
β€’ API keys do not identify the user or the application making the API request
β€’ API keys are typically accessible to clients, making it easy to discover and steal an API key

Impact​

Deleting an API key will break dependent applications (if any).

Audit​

From Console​
  1. From within the Project you wish to audit Go to APIs & Services\Credentials.
  2. In the section API Keys, no API key should be listed.

... see more

Remediation​

Open File

Remediation​

From Console​

  1. Go to APIs & Services\Credentials
  2. In the section API Keys, to delete API Keys: Click the Delete Bin Icon in front of every API Key Name.

From Google Cloud Command Line​

  1. Run the following from within the project you wish to audit

    gcloud services api-keys list --filter

  2. Pipe the results into

    gcloud alpha services api-keys delete

policy.yaml​

Open File

Linked Framework Sections​

SectionSub SectionsInternal RulesPoliciesFlags
πŸ’Ό CIS GCP v3.0.0 β†’ πŸ’Ό 1.12 Ensure API Keys Only Exist for Active Services - Level 2 (Automated)1
πŸ’Ό Cloudaware Framework β†’ πŸ’Ό Cryptographic Configuration8