aws-cloudformation / aws-cloudformation/cloudformation-coverage-roadmap
[AWS::Macie::ClassificationJob] - [Coverage] - New resource type request
- 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
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