Home > @loopback/authentication
authentication package
A LoopBack 4 component for authentication support.
Remarks
The core logic for the authentication layer in LoopBack 4.
It contains:
- A decorator to express an authentication requirement on controller methods - A provider to access method-level authentication metadata - An action in the REST sequence to enforce authentication - An extension point to discover all authentication strategies and handle the delegation
Classes
| Class | Description |
|---|---|
|
Provides the authentication action for a sequence | |
|
An authentication strategy provider responsible for resolving an authentication strategy by name. It declares an extension point to which all authentication strategy implementations must register themselves as extensions. | |
|
Provides authentication metadata of a controller method |
Functions
| Function | Description |
|---|---|
|
Mark a controller method as requiring authenticated user. | |
|
Fetch authentication metadata stored by | |
|
getAuthenticationMetadataForStrategy(metadata, strategyName) |
Get the authentication metadata object for the specified strategy. |
|
Registers an authentication strategy as an extension of the AuthenticationBindings.AUTHENTICATION_STRATEGY_EXTENSION_POINT_NAME extension point. |
Interfaces
| Interface | Description |
|---|---|
|
interface definition of a function which accepts a request and returns an authenticated user | |
|
Authentication metadata stored via Reflection API | |
|
Options for authentication component | |
|
An interface that describes the common authentication strategy. An authentication strategy is a class with an ‘authenticate’ method that verifies a user’s credentials and returns the corresponding user profile. | |
|
An interface for generating and verifying a token | |
|
The User Identity service links a user to profiles from an external source (eg: ldap, oauth2 provider, saml) which can identify the user. The profile typically has the following information: name, email-id, uuid, roles, authorizations, scope of accessible resources, expiration time for given access | |
|
interface definition of a factory function which accepts a user definition and returns the user profile | |
|
A service for performing the login action in an authentication strategy. Usually a client user uses basic credentials to login, or is redirected to a third-party application that grants limited access. Note: The creation of user is handled in the user controller by calling user repository APIs. For Basic auth, the user has to register first using some endpoint like Type
A typical credential would be: { username: username, password: password }
A typical credential would be: { clientId: string; clientSecret: string; callbackURL: string; } It could be read from a local configuration file in the app
A typical credential would be: { path: string; issuer: string; entryPoint: string; } It could be read from a local configuration file in the app. |
Namespaces
| Namespace | Description |
|---|---|
|
Binding keys used by this component. |
Variables
| Variable | Description |
|---|---|
|
A binding template for auth strategy contributor extensions | |
|
The key used to store class-level metadata for | |
|
Alias for AUTHENTICATION_METADATA_METHOD_KEY to keep it backward compatible | |
|
The key used to store method-level metadata for | |