octopus-guard
v1.0.9
Published
octopusjs react guard
Downloads
16
Maintainers
Readme
octopus-guard
Install
npm install --save octopus-guard
Features
- Define interface wrap for entity
- Define common dbcontext
- Define db connect hub
- Define base repository with repository pattern
Install
- Before install require packages:
npm install react@^16.12.0
npm install react-dom@^16.12.0
npm install react-redux@^7.1.3
npm install react-router-dom@^5.1.2
npm install redux@^4.0.5"
- Install octopus-guard
npm install octopus-guard
How it work
Safe router
- Require Redux reducers:
Authentication reducer: sso_login_authen_action
, payload: {path: string}
Authorization reducer: sso_login_author_action
, payload: {path: string, roles: string}
- Using:
import { SafeRoute } from "octopus-guard";
<SafeRoute roles={"admin"} path={`/admin/credit-management`} component={() => import("./Admin/CreditManagement")} />
Keycloak SSO integrate
- Basic flow:
Initial basic flow:
* Check if token valid -> return by pass
* If token is expired -> refresh token
* If token not exist -> request login
* If has flag login request -> call resume check sso
Using:
import { initBasicFlow, enforceReload } from "octopus-guard";
initBasicFlow().then(() => {enforceReload();}).catch();
- Resume flow:
Initial resume flow:
* Check if token valid -> return by pass
* If token is expired -> refresh token
* If token not exist -> return by pass
* If has flag login request -> call resume check sso
Using:
import { initResumeFlow, enforceReload } from "octopus-guard";
initResumeFlow().then(() => {enforceReload();}).catch();
- Request login
import { login } from "octopus-guard";
login().then().catch();
- Request logout
import { logout } from "octopus-guard";
logout().then().catch();
- Request refresh token
import { refreshToken } from "octopus-guard";
refreshToken().then().catch();