summaryrefslogtreecommitdiff
path: root/interface-definitions/https.xml.in
diff options
context:
space:
mode:
authorJohn Estabrook <jestabro@vyos.io>2022-10-25 12:08:42 -0500
committerGitHub <noreply@github.com>2022-10-25 12:08:42 -0500
commit1265b15ffc8baa05177c707f30205d70528c5dc6 (patch)
tree8cb9715666250f8599147d066bd93a9a06df4962 /interface-definitions/https.xml.in
parentec82d60828500a56b6fe8357970bf839053ac0af (diff)
parent3db5ba8ef354d80f080cc1baacf33d77ccbb6222 (diff)
downloadvyos-1x-1265b15ffc8baa05177c707f30205d70528c5dc6.tar.gz
vyos-1x-1265b15ffc8baa05177c707f30205d70528c5dc6.zip
Merge pull request #1613 from jestabro/graphql-hybrid-auth
graphql: T4574: add JWT token authentication
Diffstat (limited to 'interface-definitions/https.xml.in')
-rw-r--r--interface-definitions/https.xml.in53
1 files changed, 53 insertions, 0 deletions
diff --git a/interface-definitions/https.xml.in b/interface-definitions/https.xml.in
index 28656b594..6adb07598 100644
--- a/interface-definitions/https.xml.in
+++ b/interface-definitions/https.xml.in
@@ -118,6 +118,59 @@
<valueless/>
</properties>
</leafNode>
+ <node name="authentication">
+ <properties>
+ <help>GraphQL authentication</help>
+ </properties>
+ <children>
+ <leafNode name="type">
+ <properties>
+ <help>Authentication type</help>
+ <completionHelp>
+ <list>key token</list>
+ </completionHelp>
+ <valueHelp>
+ <format>key</format>
+ <description>Use API keys</description>
+ </valueHelp>
+ <valueHelp>
+ <format>token</format>
+ <description>Use JWT token</description>
+ </valueHelp>
+ <constraint>
+ <regex>(key|token)</regex>
+ </constraint>
+ </properties>
+ <defaultValue>key</defaultValue>
+ </leafNode>
+ <leafNode name="expiration">
+ <properties>
+ <help>Token time to expire in seconds</help>
+ <valueHelp>
+ <format>u32:60-31536000</format>
+ <description>Token lifetime in seconds</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 60-31536000"/>
+ </constraint>
+ </properties>
+ <defaultValue>3600</defaultValue>
+ </leafNode>
+ <leafNode name="secret-length">
+ <properties>
+ <help>Length of shared secret in bytes</help>
+ <valueHelp>
+ <format>u32:16-65535</format>
+ <description>Byte length of generated shared secret</description>
+ </valueHelp>
+ <constraint>
+ <validator name="numeric" argument="--range 16-65535"/>
+ </constraint>
+ </properties>
+ <defaultValue>32</defaultValue>
+ </leafNode>
+ </children>
+ </node>
</children>
</node>
<node name="cors">