如何向 NATS 用户添加权限以允许用户查询和创建 Jestream 键值存储?

How do I add permissions to a NATS User to allow the User to query & create Jestream keyvalue stores?

我有一个用户需要能够查询和创建 Jetstream 键值存储。我试图添加 pub/sub 对 $JS.API.STREAM.INFO.* 的访问权限,以便让用户能够查询和创建键值存储:

96f4d12cdd02:~# nsc edit user RequestCacheService --allow-pubsub "$JS.API.STREAM.INFO.*"
[ OK ] added pub pub ".API.STREAM.INFO.*"
[ OK ] added sub ".API.STREAM.INFO.*"
[ OK ] generated user creds file `/nsc/nkeys/creds/Client/Client/RequestCacheService.creds`
[ OK ] edited user "RequestCacheService"

正如您在上面看到的,为“.API.STREAM.INFO.”添加了 pub sub,而不是“$JS.API.STREAM.INFO.”。

如何授予用户查询和创建 Jetstream 键值存储的权限?

应该是:

nsc edit user RequestCacheService --allow-pubsub '$JS.API.STREAM.INFO.*'

围绕主题single-quotes。我的印象是双引号和单引号会转义 $ 但显然只有 single-quote 会转义主题中的特殊字符。