in internal/cfgfile/installation_id.go [36:59]
func GetInstallationIdFromPWSH() (string, error) {
home, err := os.UserHomeDir()
if err != nil {
return "", fmt.Errorf("retrieving user's HOME dir")
}
path := filepath.Join(home, ".azure", "AzureRmContextSettings.json")
// #nosec G304
b, err := os.ReadFile(path)
if err != nil {
return "", fmt.Errorf("reading %s: %v", path, err)
}
var f struct {
Settings struct {
InstallationId string `json:"InstallationId"`
} `json:"Settings"`
}
if err := json.Unmarshal(b, &f); err != nil {
return "", fmt.Errorf("unmarshalling the file: %v", err)
}
if f.Settings.InstallationId == "" {
return "", fmt.Errorf("no installation id found")
}
return f.Settings.InstallationId, nil
}