Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(lib): names generated using non-FIPS compliant algorithm #392

Merged
merged 20 commits into from Nov 19, 2020

Conversation

eladb
Copy link
Contributor

@eladb eladb commented Nov 18, 2020

The CDK8s name generator (Names.toLabelValue() and Names.toDnsLabel()) have used sha256, which cannot be used in environments that are FIPS compliant.

To fix this, we are now using the recently introduced Node.of(construct).addr as the hash postfix of generated names.

Fixes #334

BREAKING CHANGE: CAUTION! Auto-generated resource names will change with this release. Resource names in manifests synthesized by a previous version of the CDK8s will be invalidated. Deploying new manifests will cause resources to be replaced. Temporarily, you can opt to use the legacy hashing mechanism by setting the environment variable CDK8S_LEGACY_HASH=1.

  • lib: Names.toDnsLabel() now accepts a construct scope instead of a string path, and a set of options instead of maxLen.
  • lib: Names.toLabelValue() now accepts a construct scope instead of a string path, and a set of options instead of maxLen.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

Elad Ben-Israel added 6 commits November 18, 2020 22:37
The CDK8s name generator (`Names.toLabelValue()` and `Names.toDnsLabel()`) have used sha256, which cannot be used in environments that are FIPS compliant.

To fix this, we are now using the [recently introduced](aws/constructs#314) `Node.of(construct).addr` as the hash postfix of generated names.

Fixes #334

BREAKING CHANGE: CAUTION! Auto-generated resource names will change with this release. Resource names in manifests synthesized by a previous version of the CDK8s will be invalidated. Deploying new manifests will cause **resources to be replaced**. Temporarily, you can opt to use the legacy hashing mechanism by setting the environment variable `CDK8S_LEGACY_HASH=1`.
* **core:** `Names.toDnsLabel()` now accepts a construct scope instead of a string path, and a set of options instead of `maxLen`.
* **core:** `Names.toLabelValue()` now accepts a construct scope instead of a string path, and a set of options instead of `maxLen`.
@eladb eladb changed the title fix(core): names generated using non-FIPS compliant algorithm fix(lib): names generated using non-FIPS compliant algorithm Nov 18, 2020
iliapolo
iliapolo previously approved these changes Nov 18, 2020
@mergify
Copy link
Contributor

mergify bot commented Nov 18, 2020

Your pull request will be updated and merged automatically (do not update manually).

@mergify mergify bot dismissed iliapolo’s stale review November 18, 2020 21:11

Pull request has been modified.

@eladb eladb requested a review from iliapolo November 19, 2020 11:39
iliapolo
iliapolo previously approved these changes Nov 19, 2020
@mergify
Copy link
Contributor

mergify bot commented Nov 19, 2020

Your pull request will be updated and merged automatically (do not update manually).

@mergify mergify bot dismissed iliapolo’s stale review November 19, 2020 12:37

Pull request has been modified.

@eladb eladb requested a review from iliapolo November 19, 2020 12:42
@mergify
Copy link
Contributor

mergify bot commented Nov 19, 2020

Your pull request will be updated and merged automatically (do not update manually).

@mergify mergify bot merged commit a1acae7 into master Nov 19, 2020
@mergify mergify bot deleted the benisrae/fips-resource-names branch November 19, 2020 12:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Synth fails in FIPS-enabled linux
2 participants