12345678910111213141516171819202122232425262728293031 |
- package credentials
- import (
- "os"
- "strings"
- "github.com/alibabacloud-go/tea/tea"
- )
- type instanceCredentialsProvider struct{}
- var providerInstance = new(instanceCredentialsProvider)
- func newInstanceCredentialsProvider() Provider {
- return &instanceCredentialsProvider{}
- }
- func (p *instanceCredentialsProvider) resolve() (*Config, error) {
- roleName, ok := os.LookupEnv(ENVEcsMetadata)
- if !ok {
- return nil, nil
- }
- enableIMDSv2, _ := os.LookupEnv(ENVEcsMetadataIMDSv2Enable)
- config := &Config{
- Type: tea.String("ecs_ram_role"),
- RoleName: tea.String(roleName),
- EnableIMDSv2: tea.Bool(strings.ToLower(enableIMDSv2) == "true"),
- }
- return config, nil
- }
|