2021-09-09 10:45:41 -07:00
|
|
|
// Copyright (c) HashiCorp, Inc.
|
2023-02-02 17:15:17 -08:00
|
|
|
// SPDX-License-Identifier: BUSL-1.1
|
|
|
|
|
|
2020-08-19 10:51:15 -07:00
|
|
|
package auth
|
|
|
|
|
|
|
|
|
|
import (
|
2021-09-09 10:45:41 -07:00
|
|
|
"github.com/hashicorp/boundary/internal/boundary"
|
2020-08-19 10:51:15 -07:00
|
|
|
)
|
|
|
|
|
|
2022-04-08 11:40:59 -04:00
|
|
|
// Domain defines the domain for the auth package.
|
|
|
|
|
const Domain = "auth"
|
|
|
|
|
|
2021-04-08 20:54:32 -04:00
|
|
|
// AuthMethod contains the common methods across all the different types of auth methods.
|
|
|
|
|
type AuthMethod interface {
|
2021-09-09 10:45:41 -07:00
|
|
|
boundary.Resource
|
2021-04-08 20:54:32 -04:00
|
|
|
GetScopeId() string
|
|
|
|
|
GetIsPrimaryAuthMethod() bool
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
type Account interface {
|
2021-09-09 10:45:41 -07:00
|
|
|
boundary.Resource
|
2021-04-08 20:54:32 -04:00
|
|
|
GetAuthMethodId() string
|
2022-10-25 21:33:31 -04:00
|
|
|
GetLoginName() string
|
|
|
|
|
GetEmail() string
|
|
|
|
|
GetSubject() string
|
2021-04-08 20:54:32 -04:00
|
|
|
}
|
|
|
|
|
|
2021-06-01 14:12:34 -05:00
|
|
|
type ManagedGroup interface {
|
2021-09-09 10:45:41 -07:00
|
|
|
boundary.Resource
|
2021-06-01 14:12:34 -05:00
|
|
|
GetAuthMethodId() string
|
|
|
|
|
}
|