Expand activity tracking and add PasswordResetAlert job
This commit is contained in:
@@ -638,6 +638,7 @@ class AuthController extends Controller {
|
||||
const token = req.user.mfa_token
|
||||
const codes = await token.generate_recovery()
|
||||
await req.user.save()
|
||||
await this.activity.mfa_recovery_created({ req })
|
||||
return res.api({
|
||||
codes,
|
||||
})
|
||||
@@ -704,6 +705,8 @@ class AuthController extends Controller {
|
||||
req.user.mfa_enable_date = new Date
|
||||
req.user.save()
|
||||
|
||||
await this.activity.mfa_enable({ req })
|
||||
|
||||
// invalidate existing tokens and other logins
|
||||
const flitter = await this.auth.get_provider('flitter')
|
||||
await flitter.logout(req)
|
||||
@@ -724,6 +727,8 @@ class AuthController extends Controller {
|
||||
req.user.app_passwords = []
|
||||
await req.user.save()
|
||||
|
||||
await this.activity.mfa_disable({ req })
|
||||
|
||||
// invalidate existing login tokens and logins
|
||||
const flitter = await this.auth.get_provider('flitter')
|
||||
await flitter.logout(req)
|
||||
|
||||
@@ -3,7 +3,7 @@ const zxcvbn = require('zxcvbn')
|
||||
|
||||
class PasswordController extends Controller {
|
||||
static get services() {
|
||||
return [...super.services, 'auth', 'jobs', 'models']
|
||||
return [...super.services, 'auth', 'jobs', 'models', 'activity']
|
||||
}
|
||||
|
||||
async get_resets(req, res, next) {
|
||||
@@ -35,6 +35,7 @@ class PasswordController extends Controller {
|
||||
|
||||
const { password, record } = await req.user.app_password(req.body.name)
|
||||
await req.user.save()
|
||||
await this.activity.app_password_created({ req, name: req.body.name })
|
||||
|
||||
return res.api({
|
||||
password,
|
||||
@@ -86,6 +87,7 @@ class PasswordController extends Controller {
|
||||
// Create the password reset
|
||||
const reset = await req.user.reset_password(req.body.password)
|
||||
await req.user.save()
|
||||
await this.activity.password_reset({ req, ip: req.ip })
|
||||
if ( req.trap.has_trap() && req.trap.get_trap() === 'password_reset' ) await req.trap.end()
|
||||
|
||||
// invalidate existing tokens and other logins
|
||||
|
||||
@@ -3,7 +3,7 @@ const uuid = require('uuid/v4')
|
||||
|
||||
class ReflectController extends Controller {
|
||||
static get services() {
|
||||
return [...super.services, 'routers', 'models']
|
||||
return [...super.services, 'routers', 'models', 'activity']
|
||||
}
|
||||
|
||||
async get_tokens(req, res, next) {
|
||||
@@ -81,6 +81,7 @@ class ReflectController extends Controller {
|
||||
})
|
||||
|
||||
await token.save()
|
||||
await this.activity.api_token_created({ req, oauth_client_id: client.uuid })
|
||||
return res.api({
|
||||
id: token.id,
|
||||
token: token.accessToken,
|
||||
|
||||
Reference in New Issue
Block a user