various: change OAuth and WIF auth key resolvers to take struct args
Change signature of OAuth and identityfederation auth key resolution hooks to take in structs instead of lists of args as they were getting unwieldily. Updates https://github.com/tailscale/tailscale/issues/20339 Signed-off-by: Mario Minardi <mario@tailscale.com>
This commit is contained in:
committed by
Mario Minardi
parent
3ccc7725a3
commit
c8ae72b537
@@ -255,7 +255,11 @@ func getCredentials() (*http.Client, string) {
|
||||
} else if idok && idToken != "" && oiok && oauthId != "" {
|
||||
if exchangeJWTForToken, ok := tailscale.HookExchangeJWTForTokenViaWIF.GetOk(); ok {
|
||||
var err error
|
||||
apiKeyEnv, err = exchangeJWTForToken(context.Background(), fmt.Sprintf("https://%s", *apiServer), oauthId, idToken)
|
||||
apiKeyEnv, err = exchangeJWTForToken(context.Background(), tailscale.ExchangeJWTForTokenWIFArgs{
|
||||
BaseURL: fmt.Sprintf("https://%s", *apiServer),
|
||||
ClientID: oauthId,
|
||||
IDToken: idToken,
|
||||
})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
+11
-2
@@ -653,7 +653,10 @@ func runUp(ctx context.Context, cmd string, args []string, upArgs upArgsT) (retE
|
||||
}
|
||||
}
|
||||
|
||||
authKey, err = f(ctx, clientSecret, prefs.AdvertiseTags)
|
||||
authKey, err = f(ctx, tailscale.ResolveAuthKeyArgs{
|
||||
AuthKey: clientSecret,
|
||||
Tags: prefs.AdvertiseTags,
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -666,7 +669,13 @@ func runUp(ctx context.Context, cmd string, args []string, upArgs upArgsT) (retE
|
||||
return err
|
||||
}
|
||||
|
||||
authKey, err = f(ctx, prefs.ControlURL, upArgs.clientID, idToken, upArgs.audience, prefs.AdvertiseTags)
|
||||
authKey, err = f(ctx, tailscale.ResolveAuthKeyWIFArgs{
|
||||
BaseURL: prefs.ControlURL,
|
||||
ClientID: upArgs.clientID,
|
||||
IDToken: idToken,
|
||||
Audience: upArgs.audience,
|
||||
Tags: prefs.AdvertiseTags,
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user