1package auth
2
3import "github.com/aws/smithy-go"
4
5type (
6 authOptionsKey struct{}
7)
8
9// Option represents a possible authentication method for an operation.
10type Option struct {
11 SchemeID string
12 IdentityProperties smithy.Properties
13 SignerProperties smithy.Properties
14}
15
16// GetAuthOptions gets auth Options from Properties.
17func GetAuthOptions(p *smithy.Properties) ([]*Option, bool) {
18 v, ok := p.Get(authOptionsKey{}).([]*Option)
19 return v, ok
20}
21
22// SetAuthOptions sets auth Options on Properties.
23func SetAuthOptions(p *smithy.Properties, options []*Option) {
24 p.Set(authOptionsKey{}, options)
25}