#include <rbac_policy.h>
Public Member Functions | |
Principal & | operator= (Principal &&other) noexcept |
Principal ()=default | |
Principal (Principal &&other) noexcept | |
std::string | ToString () const |
Static Public Member Functions | |
static Principal | MakeAndPrincipal (std::vector< std::unique_ptr< Principal >> principals) |
static Principal | MakeAnyPrincipal () |
static Principal | MakeAuthenticatedPrincipal (absl::optional< StringMatcher > string_matcher) |
static Principal | MakeDirectRemoteIpPrincipal (CidrRange ip) |
static Principal | MakeHeaderPrincipal (HeaderMatcher header_matcher) |
static Principal | MakeMetadataPrincipal (bool invert) |
static Principal | MakeNotPrincipal (Principal principal) |
static Principal | MakeOrPrincipal (std::vector< std::unique_ptr< Principal >> principals) |
static Principal | MakePathPrincipal (StringMatcher string_matcher) |
static Principal | MakeRemoteIpPrincipal (CidrRange ip) |
static Principal | MakeSourceIpPrincipal (CidrRange ip) |
Public Attributes | |
HeaderMatcher | header_matcher |
bool | invert = false |
CidrRange | ip |
std::vector< std::unique_ptr< Principal > > | principals |
absl::optional< StringMatcher > | string_matcher |
RuleType | type = RuleType::kAnd |
Definition at line 102 of file rbac_policy.h.
|
strong |
Enumerator | |
---|---|
kAnd | |
kOr | |
kNot | |
kAny | |
kPrincipalName | |
kSourceIp | |
kDirectRemoteIp | |
kRemoteIp | |
kHeader | |
kPath | |
kMetadata |
Definition at line 103 of file rbac_policy.h.
|
default |
|
noexcept |
Definition at line 337 of file rbac_policy.cc.
|
static |
Definition at line 255 of file rbac_policy.cc.
|
static |
Definition at line 279 of file rbac_policy.cc.
|
static |
Definition at line 285 of file rbac_policy.cc.
|
static |
Definition at line 300 of file rbac_policy.cc.
|
static |
Definition at line 314 of file rbac_policy.cc.
|
static |
Definition at line 330 of file rbac_policy.cc.
|
static |
Definition at line 271 of file rbac_policy.cc.
|
static |
Definition at line 263 of file rbac_policy.cc.
|
static |
Definition at line 322 of file rbac_policy.cc.
|
static |
Definition at line 307 of file rbac_policy.cc.
|
static |
Definition at line 293 of file rbac_policy.cc.
|
noexcept |
Definition at line 359 of file rbac_policy.cc.
std::string grpc_core::Rbac::Principal::ToString | ( | ) | const |
Definition at line 383 of file rbac_policy.cc.
HeaderMatcher grpc_core::Rbac::Principal::header_matcher |
Definition at line 141 of file rbac_policy.h.
Definition at line 148 of file rbac_policy.h.
CidrRange grpc_core::Rbac::Principal::ip |
Definition at line 143 of file rbac_policy.h.
std::vector<std::unique_ptr<Principal> > grpc_core::Rbac::Principal::principals |
Definition at line 146 of file rbac_policy.h.
absl::optional<StringMatcher> grpc_core::Rbac::Principal::string_matcher |
Definition at line 142 of file rbac_policy.h.
RuleType grpc_core::Rbac::Principal::type = RuleType::kAnd |
Definition at line 140 of file rbac_policy.h.