Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var Set = wire.NewSet( wire.Struct(new(Authentication), "*"), wire.Bind(new(Interface), new(*Authentication)), wire.Struct(new(authcode.Browser), "*"), wire.Struct(new(authcode.Keyboard), "*"), wire.Struct(new(ropc.ROPC), "*"), wire.Struct(new(devicecode.DeviceCode), "*"), )
Set provides the use-case of Authentication.
Functions ¶
This section is empty.
Types ¶
type Authentication ¶
type Authentication struct { ClientFactory client.FactoryInterface Logger logger.Interface Clock clock.Interface AuthCodeBrowser *authcode.Browser AuthCodeKeyboard *authcode.Keyboard ROPC *ropc.ROPC DeviceCode *devicecode.DeviceCode }
Authentication provides the internal use-case of authentication.
If the IDToken is not set, it performs the authentication flow. If the IDToken is valid, it does nothing. If the IDtoken has expired and the RefreshToken is set, it refreshes the token. If the RefreshToken has expired, it performs the authentication flow.
The authentication flow is determined as:
If the Username is not set, it performs the authorization code flow. Otherwise, it performs the resource owner password credentials flow. If the Password is not set, it asks a password by the prompt.
type GrantOptionSet ¶
type GrantOptionSet struct { AuthCodeBrowserOption *authcode.BrowserOption AuthCodeKeyboardOption *authcode.KeyboardOption ROPCOption *ropc.Option DeviceCodeOption *devicecode.Option }
type Input ¶
type Input struct { Provider oidc.Provider GrantOptionSet GrantOptionSet CachedTokenSet *oidc.TokenSet // optional TLSClientConfig tlsclientconfig.Config ForceRefresh bool }
Input represents an input DTO of the Authentication use-case.
type MockInterface ¶ added in v1.25.2
MockInterface is an autogenerated mock type for the Interface type
func NewMockInterface ¶ added in v1.25.2
func NewMockInterface(t mockConstructorTestingTNewMockInterface) *MockInterface
NewMockInterface creates a new instance of MockInterface. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
func (*MockInterface) EXPECT ¶ added in v1.25.2
func (_m *MockInterface) EXPECT() *MockInterface_Expecter
type MockInterface_Do_Call ¶ added in v1.25.2
MockInterface_Do_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'Do'
func (*MockInterface_Do_Call) Return ¶ added in v1.25.2
func (_c *MockInterface_Do_Call) Return(_a0 *Output, _a1 error) *MockInterface_Do_Call
func (*MockInterface_Do_Call) Run ¶ added in v1.25.2
func (_c *MockInterface_Do_Call) Run(run func(ctx context.Context, in Input)) *MockInterface_Do_Call
type MockInterface_Expecter ¶ added in v1.25.2
type MockInterface_Expecter struct {
// contains filtered or unexported fields
}
func (*MockInterface_Expecter) Do ¶ added in v1.25.2
func (_e *MockInterface_Expecter) Do(ctx interface{}, in interface{}) *MockInterface_Do_Call
Do is a helper method to define mock.On call
- ctx context.Context
- in Input