Registry /
auth-security / ember-simple-auth-token
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–226 runs
build_error
glibcnode 18–226 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
JWTTokenAuthenticator
✓ import JWTTokenAuthenticator from 'ember-simple-auth-token/authenticators/jwt';
✗ import JWTTokenAuthenticator from 'ember-simple-auth-token';
Default export from the JWT authenticator module. v6 uses v2 addon, so path is correct as shown.
TokenAuthenticator
✓ import TokenAuthenticator from 'ember-simple-auth-token/authenticators/token';
✗ import { TokenAuthenticator } from 'ember-simple-auth-token';
Default export, not named export. Use direct path to authenticator module.
TokenAuthorizer
✓ import TokenAuthorizer from 'ember-simple-auth-token/authorizers/token';
✗ import { TokenAuthorizer } from 'ember-simple-auth-token/authorizers';
Default export from the authorizer module.
DataAdapterMixin
✓ import DataAdapterMixin from 'ember-simple-auth/mixins/data-adapter-mixin';
✗ import DataAdapterMixin from 'ember-simple-auth-token/mixins/data-adapter-mixin';
Since v5.2.2, DataAdapterMixin is provided by ember-simple-auth, not this addon.
Configures JWT authenticator, token authorizer, session setup in application route, and authenticated route with requireAuthentication.
// app/authenticators/jwt.js
import JWTTokenAuthenticator from 'ember-simple-auth-token/authenticators/jwt';
export default class JWTAuthenticator extends JWTTokenAuthenticator {
// optional: override serverTokenEndpoint, etc.
}
// app/authorizers/application.js
import TokenAuthorizer from 'ember-simple-auth-token/authorizers/token';
export default class ApplicationAuthorizer extends TokenAuthorizer {}
// app/routes/application.js
import Route from '@ember/routing/route';
import { inject as service } from '@ember/service';
export default class ApplicationRoute extends Route {
@service session;
async beforeModel() {
await this.session.setup();
}
}
// app/routes/authenticated.js
import Route from '@ember/routing/route';
import { inject as service } from '@ember/service';
export default class AuthenticatedRoute extends Route {
@service session;
beforeModel(transition) {
this.session.requireAuthentication(transition, 'login');
}
}
// config/environment.js
ENV['ember-simple-auth-token'] = {
serverTokenEndpoint: '/api/token',
serverTokenRefreshEndpoint: '/api/token/refresh',
identificationField: 'username',
passwordField: 'password',
tokenPropertyName: 'token',
refreshTokenPropertyName: 'refresh_token',
refreshLeeway: 300 // seconds
};
Errors
Common errors & fixes
Error: Could not find module `ember-simple-auth-token/authenticators/jwt`
Import path incorrect or addon not installed.
fixEnsure addon is installed: `ember install ember-simple-auth-token`. Use correct import path: `import JWTTokenAuthenticator from 'ember-simple-auth-token/authenticators/jwt';`
Uncaught TypeError: session.setup is not a function
Missing call to session.setup() in application route (required since v6).
fixIn app/routes/application.js, call `await this.session.setup();` in beforeModel.
Cannot read property 'requireAuthentication' of undefined
session service not injected or not properly set up.
fixInject session service with `@inject session;` and ensure session.setup() is called before accessing session methods.
Audit
Dependencies
ember-simple-authrequiredPeer dependency; must be installed manually (>= 6.0.0)