Security News
Combatting Alert Fatigue by Prioritizing Malicious Intent
In 2023, data breaches surged 78% from zero-day and supply chain attacks, but developers are still buried under alerts that are unable to prevent these threats.
@anzuev/studcloud.sso
Advanced tools
*
loadContext
boolean
boolean
*
| boolean
Kind: inner class of SSO
*
loadContext
boolean
boolean
*
| boolean
Настройка модуля(обязательно перед использованием) Настраивает логгер и соединение к бд Пример конфига:
{
"mongoose":{
"UsersUri": "mongodb://127.0.0.1/test_IStudentAPI",
"PSSUri": "mongodb://127.0.0.1/test_PSS",
"SSOUri": "mongodb://127.0.0.1/test_sso"
},
"sso":{
"session":{
"secret": "superSecretKey",
"key": "StudCloud:session:",
"cookie":{
"path": "/",
"maxAge":2592000000,
"httpOnly": true
}
}
},
"logs":{
"UAMS":{
"path": "/Users/anton/GitHub/SSO/logs/UAMS.log",
"label": "UAMS"
},
"SSO":{
"path": "/Users/anton/GitHub/SSO/logs/SSO.log",
"label": "SSO"
}
}
}
Kind: static method of SSO
Param | Description |
---|---|
config | конфигурация типа nconf |
*
Получение миддлвера сессий
Kind: static method of SSO
Throws:
Error
, модуль не был настроенExample
app.use(SSO.getSessionsMiddleware();
loadContext
Получение миддлвера для загрузки контекста
Kind: static method of SSO
Throws:
Error
, модуль не был настроенExample
app.use(SSO.getContextMiddleware());
boolean
Проверка можно ли пользователю менять пароль
Kind: static method of SSO
Returns: boolean
- , true - можно, false - нельзя
Param | Description |
---|---|
session | объект типа koa-session |
boolean
Миддлвер для валидации ключа для смены, если ключ верный, то метод isPasswordChangeAllowed будет возвращать true В this.state.passwordKey должен быть помещен ключ
Kind: static method of SSO
Returns: boolean
- , true - ключ верный, false - ключ не верный
Миддлвер для сброса возможности менять пароль для данной сессии. Вызывается после смены пароля.
Kind: static method of SSO
Param |
---|
next |
Миддлвер для проверки авторизован ли пользователь или нет
Kind: static method of SSO
Throws:
AuthError
, 405 - уровень авторизации недостаточенthis: SSO
Param | Description |
---|---|
next | переход к следующему миддлверу |
Example
//router file
router.get('/doSomething', require('path/to/handler.js', SSO.checkAuth);
// path/to/handler.js
...
let a = b;
yield next;
// если все хорошо, продолжится выполнение
// если пользователь не авторизован, будет ошибка
// и управление попадет обработчику ошибок
...
Миддлвер для проверки уровня авторизации(подтвердена либо почта, либо документ либо телефон)
Kind: static method of SSO
Throws:
AuthError
, 405 - уровень авторизации недостаточенParam | Description |
---|---|
next | переход к следующему миддлверу |
Example
//router file
router.get('/doSomething', require('path/to/handler.js', SSO.checkMailActivation);
// path/to/handler.js
...
let a = b;
yield next;
// если уровень авторизации > 1, то продолжится выполнение
// иначе ошибка
// и управление попадет обработчику ошибок
...
Миддлвер для проверки уровня авторизации(подтверден либо документ, либо телефон)
Kind: static method of SSO
Throws:
AuthError
, 405 - уровень авторизации недостаточенParam | Description |
---|---|
next | переход к следующему миддлверу |
Example
//router file
router.get('/doSomething', require('path/to/handler.js', SSO.checkMobileActivation);
// path/to/handler.js
...
let a = b;
yield next;
// если уровень авторизации > 2, то продолжится выполнение
// иначе ошибка
// и управление попадет обработчику ошибок
...
Миддлвер для проверки уровня авторизации(подтверден документ)
Kind: static method of SSO
Throws:
AuthError
, 405 - уровень авторизации недостаточенParam | Description |
---|---|
next | переход к следующему миддлверу |
Example
//router file
router.get('/doSomething', require('path/to/handler.js', SSO.checkMobileActivation);
// path/to/handler.js
...
let a = b;
yield next;
// если уровень авторизации > 3, то продолжится выполнение
// иначе ошибка
// и управление попадет обработчику ошибок
...
Миддлвер для авторизации пользователя. Перед вызовом необходимо убедиться, что внутри this.authData находятся необходимые данные. Необходимые проперти - mail и password
Kind: static method of SSO
Throws:
AuthError
, 401 - неверный парльParam | Description |
---|---|
next | переход к следующему миддлверу |
Example
//router file
router.get('/signIn', require('path/to/handler.js', SSO.signIn);
// path/to/handler.js
...
let a = b;
yield next;
// если все хорошо, продолжится выполнение
// если пароль не верный, будет ошибка
// и управление попадет обработчику ошибок
...
Миддлвер для авторизации пользователя
Kind: static method of SSO
Throws:
AuthError
, 401 - неверный парльParam | Description |
---|---|
next | переход к следующему миддлверу |
Example
//router file
router.get('/logout', require('path/to/handler.js', SSO.logout);
// path/to/handler.js
...
let a = b;
yield next;
// если все хорошо, продолжится выполнение
// если пароль не верный, будет ошибка
// и управление попадет обработчику ошибок
...
*
| boolean
Проверка можно ли пользователю скачивать/просматривать файл
Kind: static method of SSO
Throws:
DbError
, 404 - файл не найденDbError
, 404 - если файл доступен только людям из группы и автор файла не был найденParam | Description |
---|---|
user | пользователь(объект типа user) |
fileId | идентификатор файла для просмотра |
FAQs
SSO for StudCloud project.
We found that @anzuev/studcloud.sso demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
In 2023, data breaches surged 78% from zero-day and supply chain attacks, but developers are still buried under alerts that are unable to prevent these threats.
Security News
Solo open source maintainers face burnout and security challenges, with 60% unpaid and 60% considering quitting.
Security News
License exceptions modify the terms of open source licenses, impacting how software can be used, modified, and distributed. Developers should be aware of the legal implications of these exceptions.