Skip to content

Secret values on object in an array are not masked inside a pack config. #4139

@NikosVlagoidis

Description

@NikosVlagoidis
ISSUE TYPE
  • Bug Report
STACKSTORM VERSION
st2 2.8dev (0f1d9dc), on Python 2.7.6
OS / ENVIRONMENT / INSTALL METHOD

docker instalation

SUMMARY

When I mark a secret value on a pack config inside an array I get the values in plain text even if Ii don't make the request with parameter show_secret=true.

STEPS TO REPRODUCE

Pack config

---
  instance:
    type: "array"
    required: false
    items:
      type: "object"
      properties:
          alias:
              description: "an alias for this instance"
              type: "string"
              required: true
              secret: false
          base_url:
              description: "Base URL for a service"
              type: "string"
              secret: false
              required: true
          secret:
              description: "The api secret key"
              type: "string"
              secret: true
              required: true

when I make a request on : https://{{host}}/api/v1/configs/<pack_name>

{
    "values": {
        "instance": [
            {
                "alias": "alias1",
                "secret": "secret",
                "base_url": "10.10.10.1"
            },
            {
                "alias": "alias2",
                "secret": "secret23",
                "base_url": "10.10.10.2"
            }
        ]
    },
    "id": "5afadbb2b2c724049ee7e03c",
    "pack": "<pack_name>"
}
EXPECTED RESULTS
{
    "values": {
        "instance": [
            {
                "alias": "alias1",
                "secret": "****",
                "base_url": "10.10.10.1"
            },
            {
                "alias": "alias2",
                "secret": "*****",
                "base_url": "10.10.10.2"
            }
        ]
    },
    "id": "5afadbb2b2c724049ee7e03c",
    "pack": "<pack_name>"
}
ACTUAL RESULTS
{
    "values": {
        "instance": [
            {
                "alias": "alias1",
                "secret": "secret",
                "base_url": "10.10.10.1"
            },
            {
                "alias": "alias2",
                "secret": "secret23",
                "base_url": "10.10.10.2"
            }
        ]
    },
    "id": "5afadbb2b2c724049ee7e03c",
    "pack": "<pack_name>"
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions