Authentication properties.
More...
#include <auth_properties.h>
|
|
std::string | token () const |
| | Get the bearer token.
|
| |
|
std::string | credential () const |
| | Get the raw credential string.
|
| |
|
std::string | scope () const |
| | Get the OAuth2 scope.
|
| |
|
std::string | oauth2_server_uri () const |
| | Get the token endpoint URI.
|
| |
|
bool | keep_refreshed () const |
| | Whether token refresh is enabled.
|
| |
|
bool | exchange_enabled () const |
| | Whether token exchange is enabled.
|
| |
|
const std::string & | client_id () const |
| | Parsed client_id from credential (empty if no colon).
|
| |
|
const std::string & | client_secret () const |
| | Parsed client_secret from credential.
|
| |
|
std::unordered_map< std::string, std::string > | optional_oauth_params () const |
| | Build optional OAuth params (audience, resource) from config.
|
| |
|
ConfigBase & | Set (const Entry< T > &entry, const T &val) |
| |
|
ConfigBase & | Unset (const Entry< T > &entry) |
| |
|
ConfigBase & | Reset () |
| |
|
T | Get (const Entry< T > &entry) const |
| |
|
const std::unordered_map< std::string, std::string > & | configs () const |
| |
|
std::unordered_map< std::string, std::string > & | mutable_configs () |
| |
| std::unordered_map< std::string, std::string > | Extract (std::string_view prefix) const |
| | Extracts the prefix from the configuration.
|
| |
|
|
static Result< AuthProperties > | FromProperties (const std::unordered_map< std::string, std::string > &properties) |
| | Build an AuthProperties from a properties map.
|
| |
|
|
static const std::string | kAuthType = "rest.auth.type" |
| |
|
static const std::string | kAuthTypeNone = "none" |
| |
|
static const std::string | kAuthTypeBasic = "basic" |
| |
|
static const std::string | kAuthTypeOAuth2 = "oauth2" |
| |
|
static const std::string | kAuthTypeSigV4 = "sigv4" |
| |
|
static const std::string | kBasicUsername = "rest.auth.basic.username" |
| |
|
static const std::string | kBasicPassword = "rest.auth.basic.password" |
| |
| static const std::string | kSigV4Enabled = "rest.sigv4-enabled" |
| |
| static const std::string | kSigV4DelegateAuthType |
| |
| static const std::string | kSigV4SigningRegion = "rest.signing-region" |
| |
|
static const std::string | kSigV4SigningName = "rest.signing-name" |
| |
|
static const std::string | kSigV4SigningNameDefault = "execute-api" |
| |
|
static const std::string | kSigV4AccessKeyId = "rest.access-key-id" |
| |
|
static const std::string | kSigV4SecretAccessKey = "rest.secret-access-key" |
| |
|
static const std::string | kSigV4SessionToken = "rest.session-token" |
| |
|
static Entry< std::string > | kToken {"token", ""} |
| |
|
static Entry< std::string > | kCredential {"credential", ""} |
| |
|
static Entry< std::string > | kScope {"scope", "catalog"} |
| |
| static Entry< std::string > | kOAuth2ServerUri |
| |
|
static Entry< bool > | kKeepRefreshed {"token-refresh-enabled", true} |
| |
|
static Entry< bool > | kExchangeEnabled {"token-exchange-enabled", true} |
| |
|
static Entry< std::string > | kAudience {"audience", ""} |
| |
|
static Entry< std::string > | kResource {"resource", ""} |
| |
|
|
std::unordered_map< std::string, std::string > | configs_ |
| |
Authentication properties.
◆ kOAuth2ServerUri
| Entry<std::string> iceberg::rest::auth::AuthProperties::kOAuth2ServerUri |
|
inlinestatic |
Initial value:{"oauth2-server-uri",
"v1/oauth/tokens"}
◆ kSigV4DelegateAuthType
| const std::string iceberg::rest::auth::AuthProperties::kSigV4DelegateAuthType |
|
inlinestatic |
Initial value:=
"rest.auth.sigv4.delegate-auth-type"
◆ kSigV4Enabled
| const std::string iceberg::rest::auth::AuthProperties::kSigV4Enabled = "rest.sigv4-enabled" |
|
inlinestatic |
Deprecated: rest.sigv4-enabled=true selects SigV4 regardless of rest.auth.type.
◆ kSigV4SigningRegion
| const std::string iceberg::rest::auth::AuthProperties::kSigV4SigningRegion = "rest.signing-region" |
|
inlinestatic |
SigV4 signing region. If unset, SigV4 resolves the signing region from AWS environment/profile configuration and fails if no region can be resolved.
The documentation for this class was generated from the following files:
- iceberg/catalog/rest/auth/auth_properties.h
- iceberg/catalog/rest/auth/auth_properties.cc