@ @public
@public
Применяется к: rpc
Раздел: §13.4
Синтаксис
Attr = "@" Path [ "(" [ AttrArgs ] ")" ] ;Грамматика: Прил. A
Определяется в
- 13.4 Авторизация и политики — Объект политики
- 4.9 Атрибуты — Синтаксис: @имя или @имя(аргументы) перед объявлением, полем, параметром или rpc.
- 10.2 Атрибуты rpc — Значения по умолчанию для всех rpc задаются в cluster { defaults { …
Примеры
policy Orders {
allow get(id) if caller.isUser(db.find(Order, id)?.userId)
allow list, recent if caller.has(role: .Support)
allow * if caller.service("billing")
deny delete unless caller.has(role: .Admin) && caller is .User(mfa: true, ..)
}
@public rpc health() -> Ok
@allow(role: .Admin) rpc purge() -> Ok
@internal rpc create(…) -> OrderСвязанные диагностики
data-rights, missing-policy, unknown-policy-target, deprecated, attribute-not-applicable, cache-not-readonly, invalid-window, retry-not-idempotent, rpc-attr