-
Notifications
You must be signed in to change notification settings - Fork 162
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
Conversation
9bbeed0
to
2e3a2ff
Compare
Adding a reminder to consider adding custom host builders, based on the conversation at #1306 (comment). |
- split auth types to separate packages to align with the Microsoft libraries they configure - delete Connectors.Abstractions and Connectors.CloudFoundry
There was a problem hiding this 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!
src/Common/src/Common.Security/CertificateConfigurationExtensions.cs
Outdated
Show resolved
Hide resolved
src/Common/src/Common.Security/CertificateConfigurationExtensions.cs
Outdated
Show resolved
Hide resolved
src/Common/src/Common.Security/CertificateConfigurationExtensions.cs
Outdated
Show resolved
Hide resolved
src/Common/src/Common.Security/CertificateConfigurationExtensions.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/ApplicationInstanceCertificate.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/ApplicationInstanceCertificate.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/ApplicationInstanceCertificate.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateApplicationBuilderExtensions.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateApplicationBuilderExtensions.cs
Outdated
Show resolved
Hide resolved
Co-authored-by: Bart Koelman <[email protected]>
remove special handling for local uaa remove shared named http client code (Microsoft code can handle backchannel creation) remove globalusings
src/Security/src/Authentication.OpenIdConnect/TokenKeyResolver.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authentication.OpenIdConnect/TokenKeyResolver.cs
Outdated
Show resolved
Hide resolved
...Authentication.OpenIdConnect.Test/Steeltoe.Security.Authentication.OpenIdConnect.Test.csproj
Outdated
Show resolved
Hide resolved
src/Security/src/Authentication.JwtBearer/PublicAPI.Shipped.txt
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.OpenIdConnect.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authentication.OpenIdConnect/TokenKeyResolver.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/ApplicationInstanceCertificate.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.JwtBearer.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.JwtBearer.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.JwtBearer.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.JwtBearer.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.JwtBearer.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authorization.Certificate.Test/CertificateServiceCollectionExtensionsTest.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authorization.Certificate.Test/ClientCertificatesFixture.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateAuthorizationDefaults.cs
Outdated
Show resolved
Hide resolved
src/Common/test/Common.Certificate.Test/Steeltoe.Common.Certificate.Test.csproj
Outdated
Show resolved
Hide resolved
Co-authored-by: Bart Koelman <[email protected]>
pluralize Common.Certificate enforce S3900 in code but not tests (remove unused classes)
There was a problem hiding this 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!
src/Security/src/Authentication.JwtBearer/Steeltoe.Security.Authentication.JwtBearer.csproj
Outdated
Show resolved
Hide resolved
...urity/src/Authentication.OpenIdConnect/Steeltoe.Security.Authentication.OpenIdConnect.csproj
Outdated
Show resolved
Hide resolved
src/Common/test/Common.Certificates.Test/Steeltoe.Common.Certificates.Test.csproj
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateAuthorizationHandler.cs
Outdated
Show resolved
Hide resolved
src/Common/src/Common.Certificates/CertificateConfigurationExtensions.cs
Show resolved
Hide resolved
src/Security/test/Authorization.Certificate.Test/CertificateAuthorizationTest.cs
Outdated
Show resolved
Hide resolved
Co-authored-by: Bart Koelman <[email protected]>
flags for tag/label processing, null checks, wording changes, test improvements
src/Security/test/Authentication.JwtBearer.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.JwtBearer.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Common/src/Common.Certificates/CertificateServiceCollectionExtensions.cs
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/ApplicationInstanceCertificate.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateAuthorizationBuilderExtensions.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateAuthorizationPolicies.cs
Show resolved
Hide resolved
Co-authored-by: Bart Koelman <[email protected]>
test for non-null feature but null session with trace observer, add a constance for AppInstanceIdentity
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. |
src/Common/test/Common.TestResources/CancellationTokenSourceExtensions.cs
Outdated
Show resolved
Hide resolved
src/Common/test/Common.TestResources/IgnoreLineEndingsComparer.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.JwtBearer.Test/JwtBearerAuthenticationBuilderExtensionsTest.cs
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.JwtBearer.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Bootstrap/test/AutoConfiguration.Test/Steeltoe.Bootstrap.AutoConfiguration.Test.csproj
Outdated
Show resolved
Hide resolved
src/Security/test/Authentication.OpenIdConnect.Test/TokenKeyResolverTest.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateAuthorizationPolicies.cs
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateAuthorizationBuilderExtensions.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateHttpClientBuilderExtensions.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateHttpClientBuilderExtensions.cs
Outdated
Show resolved
Hide resolved
src/Security/src/Authorization.Certificate/CertificateHttpClientBuilderExtensions.cs
Outdated
Show resolved
Hide resolved
There was a problem hiding this 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!
Description
#908
Quality checklist
If your change affects other repositories, such as Documentation, Samples and/or MainSite, add linked PRs here.