Documentation
¶
Overview ¶
Copyright 2022 Evan Hazlett
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Index ¶
Constants ¶
View Source
const (
// AuthenticateMethod is the GRPC method that is used for client authentication
AuthenticateMethod = "/flow.services.accounts.v1.Accounts/Authenticate"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Authenticator ¶
type Authenticator interface {
// Name returns the name of the authenticator
Name() string
// GetAccount gets a Flow account from the authenticator
GetAccount(ctx context.Context, username string) (*api.Account, error)
// Authenticate authenticates the specified user and returns a byte array from the provider
Authenticate(ctx context.Context, username string, password []byte) ([]byte, error)
// GenerateAPIToken generates a new user API token
GenerateAPIToken(ctx context.Context, description string) (*api.APIToken, error)
// GenerateServiceToken generates a new service token
GenerateServiceToken(ctx context.Context, description string, ttl time.Duration) (*api.ServiceToken, error)
// ListServiceTokens returns all generated service tokens
ListServiceTokens(ctx context.Context) ([]*api.ServiceToken, error)
// UnaryServerInterceptor is the default interceptor
UnaryServerInterceptor(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (interface{}, error)
// StreamServerInterceptor is the streaming server interceptor
StreamServerInterceptor(srv interface{}, stream grpc.ServerStream, info *grpc.StreamServerInfo, handler grpc.StreamHandler) error
// ValidateAPIToken returns a valid account from the specified api token or an error if invalid
ValidateAPIToken(ctx context.Context, token string) (*api.Account, error)
}
Click to show internal directories.
Click to hide internal directories.