Skip to content

Commit b8977fe

Browse files
update google mcp secret (#490)
Signed-off-by: Michael Clifford <mcliffor@redhat.com>
1 parent 6740aa4 commit b8977fe

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

components/backend/handlers/oauth.go

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -665,7 +665,7 @@ func validateAndParseOAuthState(state string) (*OAuthStateData, error) {
665665
func storeCredentialsInSecret(ctx context.Context, projectName, sessionName, provider, accessToken, refreshToken string, expiresIn int64) error {
666666
secretName := fmt.Sprintf("%s-%s-oauth", sessionName, provider)
667667

668-
// Get OAuth provider config for client_id and client_secret
668+
// Get OAuth provider config for scopes
669669
providerConfig, err := getOAuthProvider(provider)
670670
if err != nil {
671671
return fmt.Errorf("failed to get OAuth provider config: %w", err)
@@ -675,13 +675,14 @@ func storeCredentialsInSecret(ctx context.Context, projectName, sessionName, pro
675675
// workspace-mcp expects timezone-naive format like Python's datetime.isoformat()
676676
expiryTime := time.Now().Add(time.Duration(expiresIn) * time.Second)
677677

678-
// Prepare credentials JSON in the format expected by workspace-mcp
678+
// Prepare credentials JSON with only the token, scopes, and expiry
679+
// client_id, client_secret, token_uri, and refresh_token are empty strings to minimize stored secrets
679680
credentials := map[string]interface{}{
680681
"token": accessToken,
681-
"refresh_token": refreshToken,
682-
"token_uri": providerConfig.TokenURL,
683-
"client_id": providerConfig.ClientID,
684-
"client_secret": providerConfig.ClientSecret,
682+
"refresh_token": "",
683+
"token_uri": "",
684+
"client_id": "",
685+
"client_secret": "",
685686
"scopes": providerConfig.Scopes,
686687
"expiry": expiryTime.Format("2006-01-02T15:04:05"), // Timezone-naive format for Python compatibility
687688
}
@@ -729,7 +730,7 @@ func storeCredentialsInSecret(ctx context.Context, projectName, sessionName, pro
729730
Data: map[string][]byte{
730731
"credentials.json": credentialsJSON,
731732
"access_token": []byte(accessToken),
732-
"refresh_token": []byte(refreshToken),
733+
"refresh_token": []byte(""),
733734
},
734735
}
735736

0 commit comments

Comments
 (0)