{ "id":"/axapi/v3/aam/jwt-authorization/{name}", "type":"object", "node-type":"list", "title":"jwt-authorization", "partition-visibility":"shared", "description":"AAM JWT authorization related configuration", "properties":{ "name":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "description":"Specify JWT authorization template name", "optional":false }, "verification-cert":{ "type":"string", "format":"string", "minLength":1, "maxLength":255, "partition-visibility":"shared", "not-list":[ "verification-jwks", "verification-secret" ], "description":"Specify the certificate to verify JWT token signature", "optional":true }, "verification-jwks":{ "type":"string", "format":"string", "minLength":1, "maxLength":255, "partition-visibility":"shared", "not-list":[ "verification-cert", "verification-secret" ], "description":"Specify the jwks file to verify JWT token signature", "optional":true }, "verification-secret":{ "type":"string", "format":"password", "minLength":1, "maxLength":128, "partition-visibility":"shared", "not-list":[ "verification-cert", "verification-jwks" ], "description":"Specify secret for verify JWT token signature", "optional":true }, "encrypted":{ "type":"encrypted", "format":"encrypted", "partition-visibility":"shared", "description":"Do NOT use this option manually. (This is an A10 reserved keyword.) (The ENCRYPTED secret string)", "optional":true }, "jwt-cache-enable":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Enable caching authorized JWT token and skip verification and authorization for cached tokens", "optional":true }, "log-level":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'0': log disable; '1': only log authorzation fail (default); '2': only log authorization success; '3': log all; ", "enum":[ "0", "1", "2", "3" ], "optional":true }, "exp-claim-requried":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Specify the exp claim is required for JWT authorization", "optional":true }, "jwt-exp-default":{ "type":"number", "format":"number", "minimum":1, "maximum":86400, "partition-visibility":"shared", "description":"Specify the default token expiration if exp claim is not available (default 1800)", "optional":true }, "jwt-forwarding":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Specify JWT token will not be stripped while forwarding client request", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true }, "user-tag":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":127, "partition-visibility":"shared", "description":"Customized tag", "optional":true }, "sampling-enable":{ "type":"array", "minItems":1, "items":{ "type":"object" }, "uniqueItems":true, "array":[ { "properties":{ "counters1":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'all': all; 'jwt-request': JWT Request; 'jwt-authorize-success': JWT Authorize Success; 'jwt-authorize-failure': JWT Authorize Failure; 'jwt-missing-token': JWT Missing Token; 'jwt-missing-claim': JWT Missing Claim; 'jwt-token-expired': JWT Token Expired; 'jwt-signature-failure': JWT Signature Failure; 'jwt-other-error': JWT Other Error; ", "enum":[ "all", "jwt-request", "jwt-authorize-success", "jwt-authorize-failure", "jwt-missing-token", "jwt-missing-claim", "jwt-token-expired", "jwt-signature-failure", "jwt-other-error" ] } } } ] }, "packet-capture-template":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/visibility/packet-capture/object-templates/aam-jwt-authorization-tmpl", "description":"Name of the packet capture template to be bind with this object", "optional":true } }, "object-keys":[ "name" ], "required":[ "name" ] }