listen: 127.0.0.1:4222 authorization { # Our role based permissions. # Superuser can do anything. super_user = { publish = "*" subscribe = ">" } # Can do requests on foo or bar, and subscribe to anything # that is a response to an _INBOX. # # Notice that authorization filters can be singletons or arrays. req_pub_user = { publish = ["req.foo", "req.bar"] subscribe = "_INBOX.>" } # Setup a default user that can subscribe to anything, but has # no publish capabilities. default_user = { subscribe = "PUBLIC.>" } # Service can listen on the request subject and respond to any # received reply subject. my_service = { subscribe = "my.service.req" publish_allow_responses: true } # Can support a map with max messages and expiration of the permission. my_stream_service = { subscribe = "my.service.req" allow_responses: {max: 10, expires: "1m"} } # Default permissions if none presented. e.g. susan below. default_permissions: $default_user # Users listed with persmissions. users = [ {user: alice, password: foo, permissions: $super_user} {user: bob, password: bar, permissions: $req_pub_user} {user: susan, password: baz} {user: svca, password: pc, permissions: $my_service} {user: svcb, password: sam, permissions: $my_stream_service} ] }