https://github.com/shokmaster/ember-simple-auth-loopback-3
An authenticator and authorizer for Ember Simple Auth compatible with Loopback 3
https://github.com/shokmaster/ember-simple-auth-loopback-3
auth authentication ember ember-addon ember-simple-auth loopback session-management
Last synced: 5 months ago
JSON representation
An authenticator and authorizer for Ember Simple Auth compatible with Loopback 3
- Host: GitHub
- URL: https://github.com/shokmaster/ember-simple-auth-loopback-3
- Owner: shokmaster
- License: mit
- Created: 2018-05-29T08:34:46.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2020-06-02T15:57:46.000Z (about 6 years ago)
- Last Synced: 2025-10-07T03:42:40.372Z (9 months ago)
- Topics: auth, authentication, ember, ember-addon, ember-simple-auth, loopback, session-management
- Language: JavaScript
- Size: 6.24 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# ember-simple-auth-loopback-3
[](https://travis-ci.org/shokmaster/ember-simple-auth-loopback-3)
[](https://badge.fury.io/gh/shokmaster%2Fember-simple-auth-loopback-3)
[](https://badge.fury.io/js/ember-simple-auth-loopback-3)
[](https://david-dm.org/shokmaster/ember-simple-auth-loopback-3)
[](https://codecov.io/gh/shokmaster/ember-simple-auth-loopback-3)
[](https://greenkeeper.io/)
[](https://emberobserver.com/addons/ember-simple-auth-loopback-3)
## Information
[](https://nodei.co/npm/ember-simple-auth-loopback-3/)
This package allows integration with the default authorization tokens used with Strongloop's Loopback servers.
---
This project is an updated fork of the original rtablada's [ember-simple-auth-loopback](https://github.com/rtablada/ember-simple-auth-loopback) package.
## Installation
```
ember install ember-simple-auth ember-simple-auth-loopback-3
```
## Use
This addon provides an authenticator to login users and store their session.
First create an `authenticators/application.js` file with the following:
```js
import Loopback from 'ember-simple-auth-loopback-3/authenticators/loopback';
export default Loopback.extend({
loginEndpoint: 'http://0.0.0.0:3000/api/Users/login',
});
```
Then use this from a controller (or route):
```js
session: Ember.inject.service(),
login(email, password) {
this.get('session').authenticate('authenticator:application', email, password)
.catch((reason) => {
console.log(reason);
});
}
```
And, in the template:
```htmlbars
Email
{{input value=email}}
Password
{{input value=password type="password"}}
Submit
```
## Authorizing API Requests
Once logged in, API requests will need to be authorized using the token sent back from the login request.
To do this, first setup an `app/authorizers/application.js`:
```js
import Loopback from 'ember-simple-auth-loopback-3/authorizers/loopback';
export default Loopback.extend();
```
Then, in the `app/adapters/application.js`, use the `DataAdapterMixin` from `ember-simple-auth`:
```js
import JSONAPIAdapter from 'ember-data/adapters/json-api';
import DataAdapterMixin from 'ember-simple-auth/mixins/data-adapter-mixin';
export default JSONAPIAdapter.extend(DataAdapterMixin, {
authorizer: 'authorizer:application',
host: 'http://localhost:3000',
namespace: 'api',
});
```
### Linting
* `npm run lint:hbs`
* `npm run lint:js`
* `npm run lint:js -- --fix`
### Running tests
* `ember test` – Runs the test suite on the current Ember version
* `ember test --server` – Runs the test suite in "watch mode"
* `ember try:each` – Runs the test suite against multiple Ember versions
### Running the dummy application
* `ember serve`
* Visit the dummy application at [http://localhost:4200](http://localhost:4200).
For more information on using ember-cli, visit [https://ember-cli.com/](https://ember-cli.com/).
License
------------------------------------------------------------------------------
This project is licensed under the [MIT License](LICENSE.md).