acrlevel

package
v1.10.0-rc.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 24, 2026 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Overview

Package acrlevel — ранжирование уровня аутентификации (`acr`): ОДНА таблица на платформу.

Порядок (нормативный):

"" / "0" (аноним)  <  "1" (только пароль, AAL1)  <
"2" (стойкий к фишингу / MFA, AAL2)  <  "3" (аппаратный ключ доступа с проверкой пользователя, AAL3)

Незнакомое значение ранжируется нулём (fail-closed). Требование "" (или "0") означает, что требования НЕТ.

Почему отдельный пакет

Ранжирование — чистая функция, и читают его не только точки принуждения (правило step-up `grpcsrv.EvaluateStepUp`), но и слои, у которых транспорта нет вовсе: разбор настроек посадки, use-case службы доступа. Пока таблица жила в пакете gRPC-сервера, каждый такой читатель получал ребро на сервер ради одной функции. Здесь пакет не импортирует ничего; что транспорт не приезжает и транзитивно, держит проба `TestRankingPackagePullsNoTransport` рядом.

Одна таблица

Правило step-up берёт ранг отсюда и своей таблицы не держит; второй таблицы в модуле нет. Прежнего адреса (`grpcsrv.ACRRank`, `grpcsrv.ACRSatisfies`) тоже нет: второй адрес одной функции — переходный режим, и потребитель переезжает на этот вместе с бампом пина.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Rank

func Rank(acr string) int

Rank отображает значение `acr` в сравнимое целое. Незнакомое и искажённое значение — 0 (аноним): fail-closed там, где политика ждёт ≥ 1.

func Satisfies

func Satisfies(presented, required string) bool

Satisfies сообщает, удовлетворяет ли предъявленный `acr` требуемому порогу.

  • required "" или "0" → требования нет → всегда true;
  • иначе → Rank(presented) >= Rank(required).

Отсутствующий или незнакомый предъявленный `acr` ранжируется нулём и не проходит ни одного положительного порога (fail-closed).

Это ТОЛЬКО ветвь `acr` правила step-up. Точка принуждения зовёт `grpcsrv.EvaluateStepUp`, которое сверх неё применяет изъятие машинного принципала и окно свежести MFA; вызов Satisfies прямо из пути принуждения воспроизводит половину правила — ровно то, что ловят пробы равенства вердиктов у точек принуждения.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL