Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging
[qemu/ar7.git] / qapi / authz.json
blob1c836a3abdfe58744cb188099fffc2e66c0a289e
1 # -*- Mode: Python -*-
3 # QAPI authz definitions
5 ##
6 # @QAuthZListPolicy:
8 # The authorization policy result
10 # @deny: deny access
11 # @allow: allow access
13 # Since: 4.0
15 { 'enum': 'QAuthZListPolicy',
16   'prefix': 'QAUTHZ_LIST_POLICY',
17   'data': ['deny', 'allow']}
20 # @QAuthZListFormat:
22 # The authorization policy match format
24 # @exact: an exact string match
25 # @glob: string with ? and * shell wildcard support
27 # Since: 4.0
29 { 'enum': 'QAuthZListFormat',
30   'prefix': 'QAUTHZ_LIST_FORMAT',
31   'data': ['exact', 'glob']}
34 # @QAuthZListRule:
36 # A single authorization rule.
38 # @match: a string or glob to match against a user identity
39 # @policy: the result to return if @match evaluates to true
40 # @format: the format of the @match rule (default 'exact')
42 # Since: 4.0
44 { 'struct': 'QAuthZListRule',
45   'data': {'match': 'str',
46            'policy': 'QAuthZListPolicy',
47            '*format': 'QAuthZListFormat'}}
50 # @QAuthZListRuleListHack:
52 # Not exposed via QMP; hack to generate QAuthZListRuleList
53 # for use internally by the code.
55 # Since: 4.0
57 { 'struct': 'QAuthZListRuleListHack',
58   'data': { 'unused': ['QAuthZListRule'] } }