Skip to main content

🧠 Google IAM Service Account has User-Managed Keys - prod.logic.yaml 🟒

Flags​

Input Type​

TypeAPI NameExtractsExtract FilesLogic Files
πŸ”’πŸ“• Google IAM Service AccountCA10__CaGoogleIamServiceAccount__c312

Uses​

Test Results πŸŸ’β€‹

Generated at: 2025-05-10T12:05:23.453973240Z Open

ResultIdCondition IndexCondition TextRuntime Error
🟒aAL1βœ”οΈ 199βœ”οΈ not(extract('CA10__serviceAccountEmail__c').endsWith('iam.gserviceaccount.com'))βœ”οΈ null
🟒aAL2βœ”οΈ 299βœ”οΈ CA10__Google_IAM_Service_Account_Keys__r.has(INCOMPLIANT)βœ”οΈ null
🟒aAL3βœ”οΈ 300βœ”οΈ otherwiseβœ”οΈ null

Generation​

FileMD5
Open/ce/ca/google/iam/service-account-keys/policy.yamlD98FC422BC24227364397D6A3D35CAEB
Open/ce/ca/google/iam/service-account-keys/prod.logic.yaml9986C9797E80B1D3D113492B07743421
Open/ce/ca/google/iam/service-account-keys/test-data.jsonF2D71725B64986F97F9E2DEAD7468B02
Open/types/CA10__CaGoogleIamServiceAccount__c/object.extracts.yamlEB5FB013DE89FCA54D6B42804FC725D6

Generate FULL script​

java -jar repo-manager.jar policies generate FULL /ce/ca/google/iam/service-account-keys/prod.logic.yaml

Generate DEBUG script​

java -jar repo-manager.jar policies generate DEBUG /ce/ca/google/iam/service-account-keys/prod.logic.yaml

Generate CAPTURE_TEST_DATA script​

java -jar repo-manager.jar policies generate CAPTURE_TEST_DATA /ce/ca/google/iam/service-account-keys/prod.logic.yaml

Generate TESTS script​

java -jar repo-manager.jar policies generate TESTS /ce/ca/google/iam/service-account-keys/prod.logic.yaml

Execute tests​

java -jar repo-manager.jar policies test /ce/ca/google/iam/service-account-keys/prod.logic.yaml

Content​

Open File

---
inputType: "CA10__CaGoogleIamServiceAccount__c"
testData:
- file: test-data.json
importExtracts:
- file: /types/CA10__CaGoogleIamServiceAccount__c/object.extracts.yaml
conditions:
- status: "INAPPLICABLE"
currentStateMessage: "Only for user-managed service accounts."
check:
NOT:
arg:
ENDS_WITH:
arg:
EXTRACT: CA10__serviceAccountEmail__c
suffix:
TEXT: "iam.gserviceaccount.com"
- status: "INCOMPLIANT"
currentStateMessage: "User-managed service accounts should not have user-managed keys."
remediationMessage: "You should delete a user managed Service Account Key."
check:
RELATED_LIST_HAS:
status: "INCOMPLIANT"
relationshipName: "CA10__Google_IAM_Service_Account_Keys__r"
otherwise:
status: "COMPLIANT"
currentStateMessage: "User-managed service accounts haven't user-managed keys."
relatedLists:
- relationshipName: "CA10__Google_IAM_Service_Account_Keys__r"
conditions: []
otherwise:
status: "INCOMPLIANT"
currentStateMessage: "Service Account Key is enabled."