14874: Renames DefaultProperties to ManagedProperties. Fixes documentation.
[arvados.git] / doc / admin / collection-managed-properties.html.textile.liquid
1 ---
2 layout: default
3 navsection: admin
4 title: Configuring collection's managed properties
5 ...
6
7 {% comment %}
8 Copyright (C) The Arvados Authors. All rights reserved.
9
10 SPDX-License-Identifier: CC-BY-SA-3.0
11 {% endcomment %}
12
13 Collection's managed properties allow a cluster administrator to enable some special behaviors regarding properties at creation & update times.
14 This page describes how to enable and configure these behaviors on the API server.
15
16 h3. API Server configuration
17
18 The @Collections.ManagedProperties@ setting from the @config.yml@ file is used for enabling any of the following behaviors:
19
20 h4. Pre-assigned property key & value
21
22 For every newly created collection, assign a predefined key/value pair if it isn't already passed at creation time:
23
24 <pre>
25 Collections:
26   ManagedProperties:
27     foo: {value: bar}
28 </pre>
29
30 h4. Original owner UUID
31
32 This behavior will assign to a property key the UUID of the user who owns the collection's contaning project.
33
34 <pre>
35 Collections:
36   ManagedProperties:
37     responsible_person_uuid: {function: original_owner}
38 </pre>
39
40 h4. Protected properties
41
42 If there's a need to prevent a non-admin user from modifying a specific property, even by its owner, the @protected@ attribute can be set to @true@, like so:
43
44 <pre>
45 Collections:
46   ManagedProperties:
47     responsible_person_uuid: {function: original_owner, protected: true}
48 </pre>
49
50 This property can be applied to any of the defined managed properties. If missing, it's assumed as being @false@ by default.