On 14/11/13 17:16, Randall Burt wrote:
I think it could work for dashboards as well. The behavior would be to display 
the masked value and add a control that once activated, retrieves the unmasked 
value. Since one hopes this dashboard would be using some library like 
python-heatclient, its not that much work.

It _could_ work, especially if the control shows/hides all of the hidden outputs at once. I was thinking of the case where you would show/hide them individually, in which case trying to make use of the 2 APIs would lead to comically bad code. e.g.:

* Request the (possibly masked) output data.
* Display a control next to all outputs that have 'Hidden: true'.
* When the control is clicked, request the non-masked data
- Your data is now potentially inconsistent, so maybe you should update all of the outputs. * Display the non-masked data for that output. And change the data for all the other outputs. But not the ones marked 'Hidden', because that will show all of them. * If the user clicks again, repeat this process, fetching the masked data again. * Remember not to update the fields marked Hidden, except for the one where the click was, and the Hidden fields that are currently shown.

We could simplify this a bit:
* Request the (possibly masked) output data.
* Request the unmasked output data.
- Your data is now potentially inconsistent, so maybe you should update all of the outputs, aka throw out everything from the previous, masked, request that you just made. * Hide the data and display a control next to all outputs that have 'Hidden: true'.
* When the control is clicked, display the non-masked data for that output.
* If the user clicks again, hide the data.

Which reduces to what I was suggesting:
* Request the unmasked output data.
* Hide the data and display a control next to all outputs that have 'Sensitive: true'.
* When the control is clicked, display the non-masked data for that output.
* If the user clicks again, hide the data.

As to there being no security value in masking sensitive data

My point here was simple: if there is a known URL from which you can obtain sensitive data, the existence of another known URL from which you cannot obtain sensitive data does not in any meaningful sense increase the security of the system. And that's fine if security is not the reason you're doing it, I'm just pointing out that I don't see any other reasons and security isn't one either.

, we already have a precedent for this in parameters

We do, and consistency is nice, but simplicity of both the implementation and consumers' implementations is also good.

cheers,
Zane.

without having the ability to get the unmasked values IIRC. The fact that those 
are user-supplied sensitive data versus system generated sensitive data is 
irrelevant since its the template author (which isn't always the person 
deploying the template) that determines a value's sensitivity, not some 
inherent property of the value.


_______________________________________________
Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
Post to     : openstack@lists.openstack.org
Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack

Reply via email to