func GetCredentials()

in cmd/utils/auth.go [37:56]


func GetCredentials() (*azidentity.ChainedTokenCredential, error) {
	azCLI, err := azidentity.NewAzureCLICredential(nil)
	if err != nil {
		return nil, fmt.Errorf("error creating default authentication chain: %w", err)
	}

	// Fallback if users didn't get already authenticated using the Azure CLI
	inBrowser, err := newCachedInteractiveBrowserCredential()
	if err != nil {
		return nil, fmt.Errorf("error creating interactive authentication chain: %w", err)
	}

	// Methods will be tried in that specific order: (1) Azure CLI (2) Interactive
	chain, err := azidentity.NewChainedTokenCredential([]azcore.TokenCredential{azCLI, inBrowser}, nil)
	if err != nil {
		return nil, fmt.Errorf("error creating credential chain: %w", err)
	}

	return chain, nil
}