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

Steeltoe Security Updates #1311

Merged
merged 28 commits into from
Jun 18, 2024
Merged

Steeltoe Security Updates #1311

merged 28 commits into from
Jun 18, 2024

Conversation

TimHess
Copy link
Member

@TimHess TimHess commented Jun 3, 2024

Description

  • Split security packages up to align with Microsoft dependencies.
  • Add support for identity service bindings in CloudFoundry.ServiceBindings
  • Use new service bindings to directly configure the Microsoft security providers and reduce Steeltoe Security footprint
  • Drop support for using OAuth directly (for now... this can come back if it is still needed)
  • Drop Connectors.CloudFoundry

#908

Quality checklist

  • Your code complies with our Coding Style.
  • You've updated unit and/or integration tests for your change, where applicable.
  • You've updated documentation for your change, where applicable.
    If your change affects other repositories, such as Documentation, Samples and/or MainSite, add linked PRs here.
  • There's an open issue for the PR that you are making. If you'd like to propose a new feature or change, please open an issue to discuss the change or find an existing issue.
  • You've added required license files and/or file headers (explaining where the code came from with proper attribution), where code is copied from StackOverflow, a blog, or OSS.

@TimHess TimHess added Type/enhancement New feature or request Component/Security Issues related to Steeltoe Security components (not app-sec) ReleaseLine/4.x Identified as a feature/fix for the 4.x release line labels Jun 3, 2024
@TimHess TimHess added this to the 4.0.0-m1 milestone Jun 3, 2024
@TimHess TimHess self-assigned this Jun 3, 2024
@TimHess TimHess force-pushed the sso branch 2 times, most recently from 9bbeed0 to 2e3a2ff Compare June 7, 2024 21:28
@bart-vmware
Copy link
Member

Adding a reminder to consider adding custom host builders, based on the conversation at #1306 (comment).

Base automatically changed from named_certificates to main June 11, 2024 17:36
- split auth types to separate packages to align with the Microsoft libraries they configure
- delete Connectors.Abstractions and Connectors.CloudFoundry
@TimHess TimHess marked this pull request as ready for review June 11, 2024 23:24
Copy link
Member

@bart-vmware bart-vmware left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've gone over roughly 1/3 of the changes. Great to see IServiceInfo and friends are finally gone!

TimHess and others added 3 commits June 12, 2024 08:24
remove special handling for local uaa
remove shared named http client code (Microsoft code can handle backchannel creation)
remove globalusings
TimHess and others added 2 commits June 13, 2024 08:27
pluralize Common.Certificate
enforce S3900 in code but not tests (remove unused classes)
Copy link
Member

@bart-vmware bart-vmware left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like how the new extension methods are more focused now, thanks!

@TimHess TimHess requested a review from bart-vmware June 14, 2024 21:38
TimHess and others added 4 commits June 17, 2024 08:40
@TimHess
Copy link
Member Author

TimHess commented Jun 17, 2024

Adding a reminder to consider adding custom host builders, based on the conversation at #1306 (comment).

I am not sure that it makes sense to do any host builder extensions here. Since we're working with authentication and authorization, middleware is involved, and we don't have a way to deal with middleware ordering.

I think the original context of this follow-up was along the lines of combining ConfigurationBuilder and ServiceCollection extensions, but that might only make sense for Steeltoe to use internally. The only ConfigurationBuilder extension we're exposing now is specific to the AppInstanceIdentity, and that requires setup of HttpClient (now possibly on user-named instances only) and/or Authorization.

@TimHess TimHess requested a review from bart-vmware June 17, 2024 20:26
Copy link
Member

@bart-vmware bart-vmware left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.
Thanks, this PR is really a huge improvement!

@TimHess TimHess merged commit 20e0338 into main Jun 18, 2024
17 checks passed
@TimHess TimHess deleted the sso branch June 18, 2024 16:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component/Security Issues related to Steeltoe Security components (not app-sec) ReleaseLine/4.x Identified as a feature/fix for the 4.x release line Type/enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants