Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_helper_identity_mfa_types_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Config

type Config struct {
	Type           string `sentinel:"" protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	Name           string `sentinel:"" protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	ID             string `sentinel:"" protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	MountAccessor  string `sentinel:"" protobuf:"bytes,4,opt,name=mount_accessor,json=mountAccessor,proto3" json:"mount_accessor,omitempty"`
	UsernameFormat string `sentinel:"" protobuf:"bytes,5,opt,name=username_format,json=usernameFormat,proto3" json:"username_format,omitempty"`
	// Types that are assignable to Config:
	//	*Config_TOTPConfig
	//	*Config_OktaConfig
	//	*Config_DuoConfig
	//	*Config_PingIDConfig
	Config isConfig_Config `protobuf_oneof:"config"`
	// contains filtered or unexported fields
}

    Config represents the configuration information used *along with* the MFA secret tied to caller's identity, to verify the MFA credentials supplied. Configuration information differs by type. Handler of each type should know what to expect from the Config field.

    func (*Config) Clone

    func (c *Config) Clone() (*Config, error)

    func (*Config) Descriptor

    func (*Config) Descriptor() ([]byte, []int)

      Deprecated: Use Config.ProtoReflect.Descriptor instead.

      func (*Config) GetConfig

      func (m *Config) GetConfig() isConfig_Config

      func (*Config) GetDuoConfig

      func (x *Config) GetDuoConfig() *DuoConfig

      func (*Config) GetID

      func (x *Config) GetID() string

      func (*Config) GetMountAccessor

      func (x *Config) GetMountAccessor() string

      func (*Config) GetName

      func (x *Config) GetName() string

      func (*Config) GetOktaConfig

      func (x *Config) GetOktaConfig() *OktaConfig

      func (*Config) GetPingIDConfig

      func (x *Config) GetPingIDConfig() *PingIDConfig

      func (*Config) GetTOTPConfig

      func (x *Config) GetTOTPConfig() *TOTPConfig

      func (*Config) GetType

      func (x *Config) GetType() string

      func (*Config) GetUsernameFormat

      func (x *Config) GetUsernameFormat() string

      func (*Config) ProtoMessage

      func (*Config) ProtoMessage()

      func (*Config) ProtoReflect

      func (x *Config) ProtoReflect() protoreflect.Message

      func (*Config) Reset

      func (x *Config) Reset()

      func (*Config) SentinelGet

      func (c *Config) SentinelGet(key string) (interface{}, error)

      func (*Config) SentinelKeys

      func (c *Config) SentinelKeys() []string

      func (*Config) String

      func (x *Config) String() string

      type Config_DuoConfig

      type Config_DuoConfig struct {
      	DuoConfig *DuoConfig `sentinel:"" protobuf:"bytes,8,opt,name=duo_config,json=duoConfig,proto3,oneof"`
      }

      type Config_OktaConfig

      type Config_OktaConfig struct {
      	OktaConfig *OktaConfig `sentinel:"" protobuf:"bytes,7,opt,name=okta_config,json=oktaConfig,proto3,oneof"`
      }

      type Config_PingIDConfig

      type Config_PingIDConfig struct {
      	PingIDConfig *PingIDConfig `sentinel:"" protobuf:"bytes,9,opt,name=pingid_config,json=pingidConfig,proto3,oneof"`
      }

      type Config_TOTPConfig

      type Config_TOTPConfig struct {
      	TOTPConfig *TOTPConfig `sentinel:"" protobuf:"bytes,6,opt,name=totp_config,json=totpConfig,proto3,oneof"`
      }

      type DuoConfig

      type DuoConfig struct {
      	IntegrationKey string `sentinel:"" protobuf:"bytes,1,opt,name=integration_key,json=integrationKey,proto3" json:"integration_key,omitempty"`
      	SecretKey      string `sentinel:"" protobuf:"bytes,2,opt,name=secret_key,json=secretKey,proto3" json:"secret_key,omitempty"`
      	APIHostname    string `sentinel:"" protobuf:"bytes,3,opt,name=api_hostname,json=apiHostname,proto3" json:"api_hostname,omitempty"`
      	PushInfo       string `sentinel:"" protobuf:"bytes,4,opt,name=push_info,json=pushInfo,proto3" json:"push_info,omitempty"`
      	// contains filtered or unexported fields
      }

        DuoConfig represents the configuration information required to perform Duo authentication.

        func (*DuoConfig) Descriptor

        func (*DuoConfig) Descriptor() ([]byte, []int)

          Deprecated: Use DuoConfig.ProtoReflect.Descriptor instead.

          func (*DuoConfig) GetAPIHostname

          func (x *DuoConfig) GetAPIHostname() string

          func (*DuoConfig) GetIntegrationKey

          func (x *DuoConfig) GetIntegrationKey() string

          func (*DuoConfig) GetPushInfo

          func (x *DuoConfig) GetPushInfo() string

          func (*DuoConfig) GetSecretKey

          func (x *DuoConfig) GetSecretKey() string

          func (*DuoConfig) ProtoMessage

          func (*DuoConfig) ProtoMessage()

          func (*DuoConfig) ProtoReflect

          func (x *DuoConfig) ProtoReflect() protoreflect.Message

          func (*DuoConfig) Reset

          func (x *DuoConfig) Reset()

          func (*DuoConfig) String

          func (x *DuoConfig) String() string

          type OktaConfig

          type OktaConfig struct {
          	OrgName      string `sentinel:"" protobuf:"bytes,1,opt,name=org_name,json=orgName,proto3" json:"org_name,omitempty"`
          	APIToken     string `sentinel:"" protobuf:"bytes,2,opt,name=api_token,json=apiToken,proto3" json:"api_token,omitempty"`
          	Production   bool   `sentinel:"" protobuf:"varint,3,opt,name=production,proto3" json:"production,omitempty"`
          	BaseURL      string `sentinel:"" protobuf:"bytes,4,opt,name=base_url,json=baseUrl,proto3" json:"base_url,omitempty"`
          	PrimaryEmail bool   `sentinel:"" protobuf:"varint,5,opt,name=primary_email,json=primaryEmail,proto3" json:"primary_email,omitempty"`
          	// contains filtered or unexported fields
          }

            OktaConfig contains Okta configuration parameters required to perform Okta authentication.

            func (*OktaConfig) Descriptor

            func (*OktaConfig) Descriptor() ([]byte, []int)

              Deprecated: Use OktaConfig.ProtoReflect.Descriptor instead.

              func (*OktaConfig) GetAPIToken

              func (x *OktaConfig) GetAPIToken() string

              func (*OktaConfig) GetBaseURL

              func (x *OktaConfig) GetBaseURL() string

              func (*OktaConfig) GetOrgName

              func (x *OktaConfig) GetOrgName() string

              func (*OktaConfig) GetPrimaryEmail

              func (x *OktaConfig) GetPrimaryEmail() bool

              func (*OktaConfig) GetProduction

              func (x *OktaConfig) GetProduction() bool

              func (*OktaConfig) ProtoMessage

              func (*OktaConfig) ProtoMessage()

              func (*OktaConfig) ProtoReflect

              func (x *OktaConfig) ProtoReflect() protoreflect.Message

              func (*OktaConfig) Reset

              func (x *OktaConfig) Reset()

              func (*OktaConfig) String

              func (x *OktaConfig) String() string

              type PingIDConfig

              type PingIDConfig struct {
              	UseBase64Key     string `sentinel:"" protobuf:"bytes,1,opt,name=use_base64_key,json=useBase64Key,proto3" json:"use_base64_key,omitempty"`
              	UseSignature     bool   `sentinel:"" protobuf:"varint,2,opt,name=use_signature,json=useSignature,proto3" json:"use_signature,omitempty"`
              	Token            string `sentinel:"" protobuf:"bytes,3,opt,name=token,proto3" json:"token,omitempty"`
              	IDPURL           string `sentinel:"" protobuf:"bytes,4,opt,name=idp_url,json=idpUrl,proto3" json:"idp_url,omitempty"`
              	OrgAlias         string `sentinel:"" protobuf:"bytes,5,opt,name=org_alias,json=orgAlias,proto3" json:"org_alias,omitempty"`
              	AdminURL         string `sentinel:"" protobuf:"bytes,6,opt,name=admin_url,json=adminUrl,proto3" json:"admin_url,omitempty"`
              	AuthenticatorURL string `sentinel:"" protobuf:"bytes,7,opt,name=authenticator_url,json=authenticatorUrl,proto3" json:"authenticator_url,omitempty"`
              	// contains filtered or unexported fields
              }

                PingIDConfig contains PingID configuration information

                func (*PingIDConfig) Descriptor

                func (*PingIDConfig) Descriptor() ([]byte, []int)

                  Deprecated: Use PingIDConfig.ProtoReflect.Descriptor instead.

                  func (*PingIDConfig) GetAdminURL

                  func (x *PingIDConfig) GetAdminURL() string

                  func (*PingIDConfig) GetAuthenticatorURL

                  func (x *PingIDConfig) GetAuthenticatorURL() string

                  func (*PingIDConfig) GetIDPURL

                  func (x *PingIDConfig) GetIDPURL() string

                  func (*PingIDConfig) GetOrgAlias

                  func (x *PingIDConfig) GetOrgAlias() string

                  func (*PingIDConfig) GetToken

                  func (x *PingIDConfig) GetToken() string

                  func (*PingIDConfig) GetUseBase64Key

                  func (x *PingIDConfig) GetUseBase64Key() string

                  func (*PingIDConfig) GetUseSignature

                  func (x *PingIDConfig) GetUseSignature() bool

                  func (*PingIDConfig) ProtoMessage

                  func (*PingIDConfig) ProtoMessage()

                  func (*PingIDConfig) ProtoReflect

                  func (x *PingIDConfig) ProtoReflect() protoreflect.Message

                  func (*PingIDConfig) Reset

                  func (x *PingIDConfig) Reset()

                  func (*PingIDConfig) String

                  func (x *PingIDConfig) String() string

                  type Secret

                  type Secret struct {
                  	MethodName string `sentinel:"" protobuf:"bytes,1,opt,name=method_name,json=methodName,proto3" json:"method_name,omitempty"`
                  	// Types that are assignable to Value:
                  	//	*Secret_TOTPSecret
                  	Value isSecret_Value `protobuf_oneof:"value"`
                  	// contains filtered or unexported fields
                  }

                    Secret represents all the types of secrets which the entity can hold. Each MFA type should add a secret type to the oneof block in this message.

                    func (*Secret) Descriptor

                    func (*Secret) Descriptor() ([]byte, []int)

                      Deprecated: Use Secret.ProtoReflect.Descriptor instead.

                      func (*Secret) GetMethodName

                      func (x *Secret) GetMethodName() string

                      func (*Secret) GetTOTPSecret

                      func (x *Secret) GetTOTPSecret() *TOTPSecret

                      func (*Secret) GetValue

                      func (m *Secret) GetValue() isSecret_Value

                      func (*Secret) ProtoMessage

                      func (*Secret) ProtoMessage()

                      func (*Secret) ProtoReflect

                      func (x *Secret) ProtoReflect() protoreflect.Message

                      func (*Secret) Reset

                      func (x *Secret) Reset()

                      func (*Secret) String

                      func (x *Secret) String() string

                      type Secret_TOTPSecret

                      type Secret_TOTPSecret struct {
                      	TOTPSecret *TOTPSecret `sentinel:"" protobuf:"bytes,2,opt,name=totp_secret,json=totpSecret,proto3,oneof"`
                      }

                      type TOTPConfig

                      type TOTPConfig struct {
                      	Issuer    string `sentinel:"" protobuf:"bytes,1,opt,name=issuer,proto3" json:"issuer,omitempty"`
                      	Period    uint32 `sentinel:"" protobuf:"varint,2,opt,name=period,proto3" json:"period,omitempty"`
                      	Algorithm int32  `sentinel:"" protobuf:"varint,3,opt,name=algorithm,proto3" json:"algorithm,omitempty"`
                      	Digits    int32  `sentinel:"" protobuf:"varint,4,opt,name=digits,proto3" json:"digits,omitempty"`
                      	Skew      uint32 `sentinel:"" protobuf:"varint,5,opt,name=skew,proto3" json:"skew,omitempty"`
                      	KeySize   uint32 `sentinel:"" protobuf:"varint,6,opt,name=key_size,json=keySize,proto3" json:"key_size,omitempty"`
                      	QRSize    int32  `sentinel:"" protobuf:"varint,7,opt,name=qr_size,json=qrSize,proto3" json:"qr_size,omitempty"`
                      	// contains filtered or unexported fields
                      }

                        TOTPConfig represents the configuration information required to generate a TOTP key. The generated key will be stored in the entity along with these options. Validation of credentials supplied over the API will be validated by the information stored in the entity and not from the values in the configuration.

                        func (*TOTPConfig) Descriptor

                        func (*TOTPConfig) Descriptor() ([]byte, []int)

                          Deprecated: Use TOTPConfig.ProtoReflect.Descriptor instead.

                          func (*TOTPConfig) GetAlgorithm

                          func (x *TOTPConfig) GetAlgorithm() int32

                          func (*TOTPConfig) GetDigits

                          func (x *TOTPConfig) GetDigits() int32

                          func (*TOTPConfig) GetIssuer

                          func (x *TOTPConfig) GetIssuer() string

                          func (*TOTPConfig) GetKeySize

                          func (x *TOTPConfig) GetKeySize() uint32

                          func (*TOTPConfig) GetPeriod

                          func (x *TOTPConfig) GetPeriod() uint32

                          func (*TOTPConfig) GetQRSize

                          func (x *TOTPConfig) GetQRSize() int32

                          func (*TOTPConfig) GetSkew

                          func (x *TOTPConfig) GetSkew() uint32

                          func (*TOTPConfig) ProtoMessage

                          func (*TOTPConfig) ProtoMessage()

                          func (*TOTPConfig) ProtoReflect

                          func (x *TOTPConfig) ProtoReflect() protoreflect.Message

                          func (*TOTPConfig) Reset

                          func (x *TOTPConfig) Reset()

                          func (*TOTPConfig) String

                          func (x *TOTPConfig) String() string

                          type TOTPSecret

                          type TOTPSecret struct {
                          	Issuer    string `sentinel:"" protobuf:"bytes,1,opt,name=issuer,proto3" json:"issuer,omitempty"`
                          	Period    uint32 `sentinel:"" protobuf:"varint,2,opt,name=period,proto3" json:"period,omitempty"`
                          	Algorithm int32  `sentinel:"" protobuf:"varint,3,opt,name=algorithm,proto3" json:"algorithm,omitempty"`
                          	Digits    int32  `sentinel:"" protobuf:"varint,4,opt,name=digits,proto3" json:"digits,omitempty"`
                          	Skew      uint32 `sentinel:"" protobuf:"varint,5,opt,name=skew,proto3" json:"skew,omitempty"`
                          	KeySize   uint32 `sentinel:"" protobuf:"varint,6,opt,name=key_size,json=keySize,proto3" json:"key_size,omitempty"`
                          	// reserving 7 here just to keep parity with the config message above
                          	AccountName string `sentinel:"" protobuf:"bytes,8,opt,name=account_name,json=accountName,proto3" json:"account_name,omitempty"`
                          	Key         string `sentinel:"" protobuf:"bytes,9,opt,name=key,proto3" json:"key,omitempty"`
                          	// contains filtered or unexported fields
                          }

                            TOTPSecret represents the secret that gets stored in the entity about a particular MFA method. This information is used to validate the MFA credential supplied over the API during request time.

                            func (*TOTPSecret) Descriptor

                            func (*TOTPSecret) Descriptor() ([]byte, []int)

                              Deprecated: Use TOTPSecret.ProtoReflect.Descriptor instead.

                              func (*TOTPSecret) GetAccountName

                              func (x *TOTPSecret) GetAccountName() string

                              func (*TOTPSecret) GetAlgorithm

                              func (x *TOTPSecret) GetAlgorithm() int32

                              func (*TOTPSecret) GetDigits

                              func (x *TOTPSecret) GetDigits() int32

                              func (*TOTPSecret) GetIssuer

                              func (x *TOTPSecret) GetIssuer() string

                              func (*TOTPSecret) GetKey

                              func (x *TOTPSecret) GetKey() string

                              func (*TOTPSecret) GetKeySize

                              func (x *TOTPSecret) GetKeySize() uint32

                              func (*TOTPSecret) GetPeriod

                              func (x *TOTPSecret) GetPeriod() uint32

                              func (*TOTPSecret) GetSkew

                              func (x *TOTPSecret) GetSkew() uint32

                              func (*TOTPSecret) ProtoMessage

                              func (*TOTPSecret) ProtoMessage()

                              func (*TOTPSecret) ProtoReflect

                              func (x *TOTPSecret) ProtoReflect() protoreflect.Message

                              func (*TOTPSecret) Reset

                              func (x *TOTPSecret) Reset()

                              func (*TOTPSecret) String

                              func (x *TOTPSecret) String() string