Documentation ¶
Index ¶
Constants ¶
View Source
const ( // DefaultConfigPath the default saml2aws configuration path DefaultConfigPath = "~/.saml2aws" // DefaultAmazonWebservicesURN URN used when authenticating to aws using SAML // NOTE: This only needs to be changed to log into GovCloud DefaultAmazonWebservicesURN = "urn:amazon:webservices" // DefaultSessionDuration this is the default session duration which can be overridden in the AWS console // see https://aws.amazon.com/blogs/security/enable-federated-api-access-to-your-aws-resources-for-up-to-12-hours-using-iam-roles/ DefaultSessionDuration = 3600 // DefaultProfile this is the default profile name used to save the credentials in the aws cli DefaultProfile = "saml" )
Variables ¶
View Source
var ErrIdpAccountNotFound = errors.New("IDP account not found, run configure to set it up")
ErrIdpAccountNotFound returned if the idp account is not found in the configuration file
Functions ¶
func IsErrIdpAccountNotFound ¶
IsErrIdpAccountNotFound check if the error is a ErrIdpAccountNotFound
Types ¶
type ConfigManager ¶
type ConfigManager struct {
// contains filtered or unexported fields
}
ConfigManager manage the various IDP account settings
func NewConfigManager ¶
func NewConfigManager(configFile string) (*ConfigManager, error)
NewConfigManager build a new config manager and optionally override the config path
func (*ConfigManager) LoadIDPAccount ¶
func (cm *ConfigManager) LoadIDPAccount(idpAccountName string) (*IDPAccount, error)
LoadIDPAccount load the idp account and default to an empty one if it doesn't exist
func (*ConfigManager) LoadVerifyIDPAccount ¶
func (cm *ConfigManager) LoadVerifyIDPAccount(idpAccountName string) (*IDPAccount, error)
LoadVerifyIDPAccount load the idp account and verify it isn't empty
func (*ConfigManager) SaveIDPAccount ¶
func (cm *ConfigManager) SaveIDPAccount(idpAccountName string, account *IDPAccount) error
SaveIDPAccount save idp account
type IDPAccount ¶
type IDPAccount struct { URL string `ini:"url"` Username string `ini:"username"` Provider string `ini:"provider"` MFA string `ini:"mfa"` SkipVerify bool `ini:"skip_verify"` Timeout int `ini:"timeout"` AmazonWebservicesURN string `ini:"aws_urn"` SessionDuration int `ini:"aws_session_duration"` Profile string `ini:"aws_profile"` }
IDPAccount saml IDP account
func NewIDPAccount ¶
func NewIDPAccount() *IDPAccount
NewIDPAccount Create an idp account and fill in any default fields with sane values
func (IDPAccount) String ¶
func (ia IDPAccount) String() string
func (*IDPAccount) Validate ¶
func (ia *IDPAccount) Validate() error
Validate validate the required / expected fields are set
Click to show internal directories.
Click to hide internal directories.