cloudfoundry / uaa-cli

CLI for UAA written in Go
Apache License 2.0
21 stars 14 forks source link

UAA _can_ return client resource_ids as string #63

Open sneal opened 4 years ago

sneal commented 4 years ago

Executing uaa get-client identity against a Tanzu Application Service installation results in the following error:

json: cannot unmarshal string into Go struct field Client.resource_ids of type []string

The raw UAA response object contains a single string instead of an array of resource_ids. Here's the raw response:

{
    "scope": [
        "cloud_controller.admin",
        "cloud_controller.read",
        "cloud_controller.write",
        "openid",
        "zones.*.*",
        "zones.*.*.*",
        "zones.read",
        "zones.write",
        "scim.read"
    ],
    "client_id": "identity",
    "resource_ids": "none",
    "authorized_grant_types": [
        "authorization_code",
        "client_credentials",
        "refresh_token"
    ],
    "redirect_uri": [
        "https://p-identity.sys.example.com/dashboard/",
        "https://p-identity.sys.example.com/dashboard/**"
    ],
    "autoapprove": true,
    "authorities": [
        "zones.read",
        "zones.write",
        "scim.zones",
        "uaa.resource",
        "uaa.admin",
        "cloud_controller.admin"
    ],
    "lastModified": 1588509584000
}

This is the only client that seems to have this issue. The UAA API clearly documents that client resource_ids should be an array.

cf-gitbot commented 4 years ago

We have created an issue in Pivotal Tracker to manage this:

https://www.pivotaltracker.com/story/show/172783608

The labels on this github issue will be updated when the story is started.

shamus commented 4 years ago

Hi there. I agree, the cli should be able to handle all API responses from the UAA. I've prioritized this issue and the team will take a look at it.

Additionally it looks like you've found an error in our API documentation. Thanks!