Skip to content

Commit 81e6b2c

Browse files
committed
fix: validate oauth urls during update
1 parent 3a6933e commit 81e6b2c

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

internal/api/custom_oauth_admin.go

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -551,23 +551,38 @@ func updateProviderFromParams(provider *models.CustomOAuthProvider, params *Admi
551551
}
552552
provider.Issuer = &params.Issuer
553553
}
554-
if params.DiscoveryURL != nil {
554+
if params.DiscoveryURL != nil && *params.DiscoveryURL != "" {
555+
if err := utilities.ValidateOAuthURL(*params.DiscoveryURL); err != nil {
556+
return err
557+
}
555558
provider.DiscoveryURL = params.DiscoveryURL
556559
}
557560
if params.SkipNonceCheck != nil {
558561
provider.SkipNonceCheck = *params.SkipNonceCheck
559562
}
560563
} else if provider.IsOAuth2() {
561564
if params.AuthorizationURL != "" {
565+
if err := utilities.ValidateOAuthURL(params.AuthorizationURL); err != nil {
566+
return err
567+
}
562568
provider.AuthorizationURL = &params.AuthorizationURL
563569
}
564570
if params.TokenURL != "" {
571+
if err := utilities.ValidateOAuthURL(params.TokenURL); err != nil {
572+
return err
573+
}
565574
provider.TokenURL = &params.TokenURL
566575
}
567576
if params.UserinfoURL != "" {
577+
if err := utilities.ValidateOAuthURL(params.UserinfoURL); err != nil {
578+
return err
579+
}
568580
provider.UserinfoURL = &params.UserinfoURL
569581
}
570-
if params.JwksURI != nil {
582+
if params.JwksURI != nil && *params.JwksURI != "" {
583+
if err := utilities.ValidateOAuthURL(*params.JwksURI); err != nil {
584+
return err
585+
}
571586
provider.JwksURI = params.JwksURI
572587
}
573588
}

0 commit comments

Comments
 (0)