Можно ли использовать атрибут «extra», связанный с запросом apiserver, для принятия решений об авторизации с помощью RBAC? - PullRequest
0 голосов
/ 08 мая 2018

Когда клиент аутентифицируется на сервере, с запросом связывается ряд атрибутов . Эти атрибуты включают в себя дополнительный атрибут, который представляет собой просто отображение строк в списках строк.

Плагины авторизации могут просматривать эти атрибуты для принятия решений об авторизации. Поддерживает ли плагин авторизации RBAC просмотр этих «дополнительных» атрибутов?

1 Ответ

0 голосов
/ 08 мая 2018

Краткое описание дополнительных атрибутов из исходного кода говорит о том, что:

    // GetExtra can contain any additional information that the authenticator
    // thought was interesting.  One example would be scopes on a token.
    // Keys in this map should be namespaced to the authenticator or
    // authenticator/authorizer pair making use of them.
    // For instance: "example.org/foo" instead of "foo"
    // This is a map[string][]string because it needs to be serializeable into
    // a SubjectAccessReviewSpec.authorization.k8s.io for proper authorization
    // delegation flows
    // In order to faithfully round-trip through an impersonation flow, these keys
    // MUST be lowercase.
    GetExtra() map[string][]string
}

func (i *DefaultInfo) GetExtra() map[string][]string {
    return i.Extra
}

После прочтения кода я не нашел никаких ссылок на дополнительные атрибуты.
Похоже, что дополнительные атрибуты в настоящий момент не используются в плагине RBAC, но могут использоваться в режиме авторизации Webhook .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...