data-api-builder icon indicating copy to clipboard operation
data-api-builder copied to clipboard

[Bug]: Token Validation Failed

Open cdgipson opened this issue 1 year ago • 0 comments

What happened?

Using the JWT authentication method results in a token validation failure. The signing keys were not getting pulled from the identity provider. Resulting in a IDX10500 error. Doing some digging, I found this discussion in the Duende Identity Server github repo. https://github.com/DuendeSoftware/Support/issues/1197.

The issue was that the following two nuget packages had mismatched versions, Microsoft.IdentityModel.JsonWebTokens and Microsoft.IdentityModel.Protocols.OpenIdConnect. Microsoft.IdentityModel.JsonWebTokens was on version 7.5.0 and Microsoft.IdentityModel.Protocols.OpenIdConnect was at version 6.35.0. Updating Microsoft.IdentityModel.Protocols.OpenIdConnect to 7.5.0 and rebuilding the projects resulted in successful authentication.

Suggested solution, is to make sure that these two packages remain at the same version.

Version

Microsoft.DataApiBuilder 1.1.7+74ea6c5f37f8629fd7f8b13fc56027bf0bf0a93a

What database are you using?

Azure SQL

What hosting model are you using?

Local (including CLI), Container Apps

Which API approach are you accessing DAB through?

REST

Relevant log output

PS C:\...\src>dotnet list package --include-transitive | sls "Microsoft.IdentityModel|System.IdentityModel
>> "

   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    6.35.0
   > Microsoft.IdentityModel.Tokens                                                     7.5.0
   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  7.1.2
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    7.1.2
   > Microsoft.IdentityModel.Tokens                                                     7.5.0
   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    6.35.0
   > Microsoft.IdentityModel.Tokens                                                     7.5.0
   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  7.1.2
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    7.1.2
   > Microsoft.IdentityModel.Tokens                                                     7.5.0
   > Microsoft.IdentityModel.JsonWebTokens      7.5.0       7.5.0
   > Microsoft.IdentityModel.Abstractions                       7.5.0
   > Microsoft.IdentityModel.Logging                            7.5.0
   > Microsoft.IdentityModel.Protocols                          6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect            6.35.0
   > Microsoft.IdentityModel.Tokens                             7.5.0
   > Microsoft.IdentityModel.JsonWebTokens      7.5.0       7.5.0
   > Microsoft.IdentityModel.Abstractions                       7.5.0
   > Microsoft.IdentityModel.Logging                            7.5.0
   > Microsoft.IdentityModel.Protocols                          6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect            6.35.0
   > Microsoft.IdentityModel.Tokens                             7.5.0
   > Microsoft.IdentityModel.Abstractions                       7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                      7.5.0
   > Microsoft.IdentityModel.Logging                            7.5.0
   > Microsoft.IdentityModel.Protocols                          6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect            6.35.0
   > Microsoft.IdentityModel.Tokens                             7.5.0
   > Microsoft.IdentityModel.Abstractions                       7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                      7.5.0
   > Microsoft.IdentityModel.Logging                            7.5.0
   > Microsoft.IdentityModel.Protocols                          6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect            6.35.0
   > Microsoft.IdentityModel.Tokens                             7.5.0
   > Microsoft.IdentityModel.Abstractions                       7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                      7.5.0
   > Microsoft.IdentityModel.Logging                            7.5.0
   > Microsoft.IdentityModel.Protocols                          6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect            6.35.0
   > Microsoft.IdentityModel.Tokens                             7.5.0
   > Microsoft.IdentityModel.Abstractions                       7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                      7.5.0
   > Microsoft.IdentityModel.Logging                            7.5.0
   > Microsoft.IdentityModel.Protocols                          6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect            6.35.0
   > Microsoft.IdentityModel.Tokens                             7.5.0
   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    6.35.0
   > Microsoft.IdentityModel.Tokens                                                     7.5.0
   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  7.1.2
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    7.1.2
   > Microsoft.IdentityModel.Tokens                                                     7.5.0
   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    6.35.0
   > Microsoft.IdentityModel.Tokens                                                     7.5.0
   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  7.1.2
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    7.1.2
   > Microsoft.IdentityModel.Tokens                                                     7.5.0
   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  6.35.0
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    6.35.0
   > Microsoft.IdentityModel.Tokens                                                     7.5.0
   > Microsoft.IdentityModel.Abstractions                                               7.5.0
   > Microsoft.IdentityModel.JsonWebTokens                                              7.5.0
   > Microsoft.IdentityModel.Logging                                                    7.5.0
   > Microsoft.IdentityModel.Protocols                                                  7.1.2
   > Microsoft.IdentityModel.Protocols.OpenIdConnect                                    7.1.2
   > Microsoft.IdentityModel.Tokens                                                     7.5.0

Code of Conduct

  • [X] I agree to follow this project's Code of Conduct

cdgipson avatar Jul 29 '24 15:07 cdgipson