Andrii Tkach created AMBARI-7893:
------------------------------------

             Summary: Slider View: Updating view params in UI breaks masked 
params
                 Key: AMBARI-7893
                 URL: https://issues.apache.org/jira/browse/AMBARI-7893
             Project: Ambari
          Issue Type: Bug
          Components: ambari-admin
    Affects Versions: 1.7.0
            Reporter: Andrii Tkach
            Assignee: Andrii Tkach
            Priority: Critical
             Fix For: 1.7.0


I created a slider view in the Ambari-Admin UI. The view had one masked 
parameter {{ambari.server.password}}. I entered "admin" and saw in the POST 
that the decoded value was uploaded:
{code}
{
  "ViewInstanceInfo": {
    "instance_name": "s2",
    "label": "s2",
    "visible": true,
    "icon_path": "",
    "icon64_path": "",
    "properties": {
      "ambari.server.url": "http://tdk-1:8080/api/c1/clusters/tdk";,
      "ambari.server.username": "admin",
      "ambari.server.password": "admin",
      "view.kerberos.principal": "a",
      "view.kerberos.principal.keytab": "aa"
    },
    "description": "s2"
  }
}
{code}

After saved, I editing and changed another param (say view.kerberos.principal). 
This broke the masked param. The reason is that the GET call to view parameters 
gives the encoded value.

So POST takes decoded values and GET provides encoded values. So the next time 
UI PUTs, the encoded value is put resulting in original value corruption.

The API should either always provided encoded or decoded values, but not both.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to