From 23b61e85447489709a10af383600e10368f323eb Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Tue, 3 Oct 2023 16:38:50 +0000 Subject: [PATCH] chore: check for valid regex in git auth configs --- coderd/workspaceagents.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/coderd/workspaceagents.go b/coderd/workspaceagents.go index 9a39f5ac0fbdc..a3b624dc376ce 100644 --- a/coderd/workspaceagents.go +++ b/coderd/workspaceagents.go @@ -2180,6 +2180,9 @@ func (api *API) workspaceAgentsGitAuth(rw http.ResponseWriter, r *http.Request) var externalAuthConfig *externalauth.Config for _, gitAuth := range api.ExternalAuthConfigs { + if gitAuth.Regex == nil { + continue + } matches := gitAuth.Regex.MatchString(gitURL) if !matches { continue @@ -2191,6 +2194,9 @@ func (api *API) workspaceAgentsGitAuth(rw http.ResponseWriter, r *http.Request) if len(api.ExternalAuthConfigs) > 0 { regexURLs := make([]string, 0, len(api.ExternalAuthConfigs)) for _, extAuth := range api.ExternalAuthConfigs { + if extAuth.Regex == nil { + continue + } regexURLs = append(regexURLs, fmt.Sprintf("%s=%q", extAuth.ID, extAuth.Regex.String())) } detail = fmt.Sprintf("The configured external auth provider have regex filters that do not match the git url. Provider url regexs: %s", strings.Join(regexURLs, ","))