Check ID: eventbridge_schema_registry_cross_account_access
Provider: AWS
Service: eventbridge
Severity: HIGH
Categories: trust-boundaries, identity-access
Resource type: AwsEventSchemasRegistry

What this check verifies

EventBridge schema registry resource policies are assessed for cross-account access. It identifies statements that grant external or public principals (e.g., Principal: * or other accounts) permissions to interact with the registry and its schemas.

Risk

Unknown cross-account access exposes schema definitions, enabling reconnaissance and leaking data models (confidentiality). Excessive permissions may let outsiders alter or delete schemas, corrupt code bindings, and disrupt integrations (integrity and availability).

Recommendation

Apply least privilege to registry resource policies:
  • Avoid public principals like Principal: *
  • Allow only trusted account ARNs or org IDs
  • Grant minimal actions, prefer read-only
  • Use separation of duties and log changes
If cross-account is needed, scope tightly and review often.

Remediation

aws schemas put-resource-policy --registry-name <example_resource_name> --policy '{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"AWS":"arn:aws:iam::<example_account_id>:root"},"Action":"schemas:*","Resource":"*"}]}'

References

Where this check fires

This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable by Check ID = eventbridge_schema_registry_cross_account_access. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks