π‘οΈ Google Project has API Keysπ’
- Contextual name: π‘οΈ Google Project has API Keysπ’
- ID:
/ce/ca/google/project/api-keys-for-active-services - Tags:
- π’ Policy with categories
- π’ Policy with type
- π’ Production policy
- Policy Type:
COMPLIANCE_POLICY - Policy Categories:
SECURITY
Logicβ
- π§ prod.logic.yamlπ π’
- π Google Project
- π§ͺ test-data.json
Similar Policiesβ
- Cloud Conformity: API Keys Should Only Exist for Active Services
Descriptionβ
Descriptionβ
API keys should only be used for services when other authentication methods are unavailable. Unused keys with their permissions intact may still exist within a project. Keys are insecure because they can be viewed publicly, such as from within a browser, or accessed on a device where the key resides. It is recommended to use the standard authentication flow instead.
Rationaleβ
To avoid the security risk of using API keys, it is recommended to use the standard authentication flow instead. Security risks involved in using API keys include:
- 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β
- From within the project you want to audit, go to
APIs & Services\Credentials.- In the section
API Keys, no API key should be listed.From Google Cloud CLIβ
... see more
Remediationβ
Remediationβ
From Google Cloud Consoleβ
- Go to
APIs & Services\Credentials.- In the
API Keyssection, delete API keys by clicking the Delete icon in front of eachAPI Key Name.From Google Cloud CLIβ
Run the following from within the project you want to audit:
gcloud services api-keys list \
--filter={{filter}}Pipe the results into:
gcloud alpha services api-keys delete {{api-key-id}}