aws-cloudformation / aws-cloudformation/cloudformation-coverage-roadmap

[AWS::Macie::ClassificationJob] - [Coverage] - New resource type request

Open
#2,503 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
1.1k
Forks
62
PR merge metrics
No merged PRs in 30d

Description

### Name of the resource

Other

### Resource name

AWS::Macie::ClassificationJob

### Description

The Amazon Macie API supports creating and managing classification jobs via [CreateClassificationJob](https://docs.aws.amazon.com/macie/latest/APIReference/jobs.html#jobs-method-post) (`POST /jobs`) and [UpdateClassificationJob](https://docs.aws.amazon.com/macie/latest/APIReference/jobs-jobid.html#jobs-jobid-method-patch) (`PATCH /jobs/{jobId}`), but CloudFormation has no `AWS::Macie::ClassificationJob` resource type.

The existing Macie resources in CloudFormation only cover `AWS::Macie::Session`, `AWS::Macie::AllowList`, `AWS::Macie::CustomDataIdentifier`, and `AWS::Macie::FindingsFilter`. Classification jobs — arguably the primary operational primitive of Macie — are missing from the CloudFormation resource specification.

This request falls under category **(b) new resource type for an existing service is desired**.

#### Suggested key properties (mirroring the CreateClassificationJob request body)

- `Name` (required)
- `JobType` (`ONE_TIME` | `SCHEDULED`)
- `ScheduleFrequency` (`DailySchedule` | `WeeklySchedule` | `MonthlySchedule`)
- `S3JobDefinition` (bucket/object scoping — `BucketDefinitions` or `BucketCriteria`, plus `Scoping`)
- `SamplingPercentage`
- `InitialRun`
- `ManagedDataIdentifierSelector` (`ALL` | `EXCLUDE` | `INCLUDE` | `RECOMMENDED` | `NONE`)
- `ManagedDataIdentifierIds`
- `CustomDataIdentifierIds`
- `AllowListIds`
- `Description`
- `Tags`

#### Why this matters

Without a native resource type, consumers must implement classification jobs via a CloudFormation Custom Resource (e.g. CDK's `AwsCustomResource`) that calls the Macie2 SDK directly. This workaround loses CloudFormation benefits like drift detection, resource import, native update/rollback semantics, and clean lifecycle management.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the linked Macie CreateClassificationJob and UpdateClassificationJob API operations, then compare them with the existing AWS::Macie::Session, AllowList, CustomDataIdentifier, and FindingsFilter resources. Done means CloudFormation supports an AWS::Macie::ClassificationJob resource with the requested job, scope, identifier, schedule, and tagging properties and native lifecycle behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws
Domain
cloud, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.