1. GetAllCustomers: GET /customers?status=
2. GetCustomer: GET /customers/:id
3 NewAccount: POST /customers/:id/accounts
4. NewTransaction: POST /customers/:id/account/:account_id
1. Customer:
- Get All Customers By Status
- Get Customer By Id
2. Account:
- New Account
- Get Account By account_id
- Get all accounts by account_id and customer_id
3. Transaction:
- New Transaction
2. Auth Microservice
Auth Policy
1. Role based access control.
2. JWT based authentication.
3. JWT based authorization.
4. JWT based token verification.
5. JWT based token refresh(TODO).
1. GetAllCustomers: GET /customers
2. GetCustomer: GET /customers/:id
3 NewAccount: POST /customers/:id/accounts
4. NewTransaction: POST /customers/:id/account/:account_id
RBAC
1. Role: admin -> All.
2. Role: user -> GetCustomer & NewTransaction.
Verification Process
1. Validity of the token(include expiry time and signature).
2. Verify if the role has access to the resource.
3. vefify if the resource being accessd by same user.
Kratos is a microservice-oriented governance framework implements by golang, which offers convenient capabilities to help you quickly build a bulletproof application from scratch.
Kratos is a microservice-oriented governance framework implements by golang, which offers convenient capabilities to help you quickly build a bulletproof application from scratch.
Goku API gateway is a microservice gateway developed based on golang. It can achieve the purposes of high-performance HTTP API forwarding, multi tenant management, API access control, etc. it has a powerful custom plug-in system, which can be expanded by itself, and can quickly help enterprises manage API services and improve the stability and security of API services.