@@ -20,6 +20,7 @@ import (
20
20
"context"
21
21
"fmt"
22
22
23
+ "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy"
23
24
asocontainerservicev1hub "github.com/Azure/azure-service-operator/v2/api/containerservice/v1api20231001/storage"
24
25
"github.com/Azure/azure-service-operator/v2/pkg/genruntime"
25
26
"github.com/pkg/errors"
@@ -29,7 +30,6 @@ import (
29
30
infrav1 "sigs.k8s.io/cluster-api-provider-azure/api/v1beta1"
30
31
"sigs.k8s.io/cluster-api-provider-azure/azure"
31
32
"sigs.k8s.io/cluster-api-provider-azure/azure/services/aso"
32
- "sigs.k8s.io/cluster-api-provider-azure/azure/services/token"
33
33
clusterv1 "sigs.k8s.io/cluster-api/api/v1beta1"
34
34
"sigs.k8s.io/cluster-api/util/secret"
35
35
"sigs.k8s.io/controller-runtime/pkg/client"
@@ -148,7 +148,7 @@ func reconcileKubeconfig(ctx context.Context, scope ManagedClusterScope, namespa
148
148
}
149
149
150
150
if scope .AreLocalAccountsDisabled () {
151
- userKubeconfigWithToken , err := getUserKubeConfigWithToken (userKubeConfigData , ctx , scope )
151
+ userKubeconfigWithToken , err := getUserKubeConfigWithToken (ctx , userKubeConfigData , scope )
152
152
if err != nil {
153
153
return nil , nil , errors .Wrap (err , "error while trying to get user kubeconfig with token" )
154
154
}
@@ -190,28 +190,17 @@ func getUserKubeconfigData(ctx context.Context, scope ManagedClusterScope, names
190
190
}
191
191
192
192
// getUserKubeConfigWithToken returns the kubeconfig with user token, for capz to create the target cluster.
193
- func getUserKubeConfigWithToken (userKubeConfigData []byte , ctx context.Context , scope azure.Authorizer ) ([]byte , error ) {
194
- tokenClient , err := token .NewClient (scope )
195
- if err != nil {
196
- return nil , errors .Wrap (err , "error while getting aad token client" )
197
- }
198
-
199
- token , err := tokenClient .GetAzureActiveDirectoryToken (ctx , aadResourceID )
193
+ func getUserKubeConfigWithToken (ctx context.Context , userKubeConfigData []byte , auth azure.Authorizer ) ([]byte , error ) {
194
+ token , err := auth .Token ().GetToken (ctx , policy.TokenRequestOptions {Scopes : []string {aadResourceID + "/.default" }})
200
195
if err != nil {
201
196
return nil , errors .Wrap (err , "error while getting aad token for user kubeconfig" )
202
197
}
203
-
204
- return createUserKubeconfigWithToken (token , userKubeConfigData )
205
- }
206
-
207
- // createUserKubeconfigWithToken gets the kubeconfig data for authenticating with target cluster.
208
- func createUserKubeconfigWithToken (token string , userKubeConfigData []byte ) ([]byte , error ) {
209
198
config , err := clientcmd .Load (userKubeConfigData )
210
199
if err != nil {
211
200
return nil , errors .Wrap (err , "error while trying to unmarshal new user kubeconfig with token" )
212
201
}
213
202
for _ , auth := range config .AuthInfos {
214
- auth .Token = token
203
+ auth .Token = token . Token
215
204
auth .Exec = nil
216
205
}
217
206
kubeconfig , err := clientcmd .Write (* config )
0 commit comments