Provide visibility settings to simplify process deployment, listing and description #446
Labels
good first issue
Good for newcomers
project/OGC
Related to OGC testbeds or relavant projects.
triage/enhancement
New feature or request
triage/feature
New requested feature.
Description
Weaver supports a
visibility
field that originates from OGC Testbeds 14 when deploying a process to make it private or public.By default, private visibility is employed to avoid unintentional exposure of a process that should not be revealed.
Because of this, each new deployment must explicitly include
visibility: public
in the payload to make this process available right away.Given that this field is not represented in OGC-API - Processes (not core feature) nor easy to identify by new users, this leads to a confusing situation where a successfully deployed process returns forbidden when access to it is attempted afterwards. Most users cannot identity the cause of forbidden access is the visibility (rather than some platform authentication), and that it simply needs to be set (or reset with
PUT /processes/{processID}/visibility
endpoint) as public.A setting
weaver.process_visibility_default = private | public
could be made available from the INI configuration such that a platform that uses other means of access control to processes (or if we simply want weaver processes to be public at all times), can override the default private visibility. This default would be used during new process deployments, but would leave the visibility feature active if private was explicitly provided. Another option could be to addweaver.process_visibility = true | false
allowing to remove visibility checks altogether (ie: everything behaves as if public regardless of actual visibility applied, as in core OGC-API - Processes).To Do
weaver.process_visibility = true
(default setting) in example INIweaver.process_visibility_default = private
(default setting) in example INIweaver.process_visibility_default
setting when resolving a process deployment ifvisibility
field was omittedweaver.process_visibility = true
weaver.process_visibility = false
weaver.process_visibility = false
visibility
field from process descriptions and summaries ifweaver.process_visibility = false
References
The text was updated successfully, but these errors were encountered: