aws-sagemaker-feature-group-read-data

GetRecord / BatchGetRecord reads ML feature data from a SageMaker Feature Store online store.

explicit aws emits CanReadData

match (effective permission)

{ "action": "sagemaker:GetRecord", "resource_type": "AWS::SageMaker::FeatureGroup" }

where

feature group has an online store enabled

emit

source typeIdentity
target typeGenericData
source<principal>
target<SageMaker FeatureGroup>
permissionssagemaker:GetRecord sagemaker:BatchGetRecord
conditionsiam_permission resource_policy

Narrative

{principal.name} can read feature records from {featuregroup.name}'s online store (sagemaker:GetRecord / sagemaker:BatchGetRecord).

Raw rule rules/explicit/aws/sagemaker.yaml

id: aws-sagemaker-feature-group-read-data
emits: CanReadData
description: GetRecord / BatchGetRecord reads ML feature data from a SageMaker Feature Store online store.
match_effective_permission:
  action: sagemaker:GetRecord
  resource_type: AWS::SageMaker::FeatureGroup
where:
- feature group has an online store enabled
emit:
  source_type: Identity
  target_type: GenericData
  source: <principal>
  target: <SageMaker FeatureGroup>
  permissions:
  - sagemaker:GetRecord
  - sagemaker:BatchGetRecord
  conditions:
  - iam_permission
  - resource_policy
  false_positive_note: "Online store reads return individual feature records \u2014 structured data, not\
    \ bulk. Bulk offline-store access requires S3 read on the offline store prefix, which is an S3 CanReadData\
    \ edge, not a SageMaker edge. For offline store S3 access, the standard S3 rules apply. Feature data\
    \ may contain PII or sensitive ML training labels \u2014 treat as sensitive data."
  narrative: '{principal.name} can read feature records from {featuregroup.name}''s online store (sagemaker:GetRecord
    / sagemaker:BatchGetRecord).'
move · open · esc close