28 lines
815 B
JavaScript
28 lines
815 B
JavaScript
'use strict'
|
|
const { registerOrUpdateScope } = require('@/modules/shared/repositories/scopes')
|
|
const { moduleLogger } = require('@/logging/logging')
|
|
const db = require('@/db/knex')
|
|
|
|
exports.init = async (app) => {
|
|
moduleLogger.info('🔑 Init auth module')
|
|
|
|
// Initialize authn strategies
|
|
exports.authStrategies = await require('./strategies')(app)
|
|
|
|
// Hoist auth routes
|
|
require('./rest')(app)
|
|
|
|
// Register core-based scopes
|
|
const scopes = require('./scopes.js')
|
|
const registerFunc = registerOrUpdateScope({ db })
|
|
for (const scope of scopes) {
|
|
await registerFunc({ scope })
|
|
}
|
|
}
|
|
|
|
exports.finalize = async () => {
|
|
// Note: we're registering the default apps last as we want to ensure that all
|
|
// scopes have been registered by any other modules.
|
|
await require('./manageDefaultApps')()
|
|
}
|