ເອກະສານ API
Advanced Authentication Patterns — OAuth 2.0, JWT, Key Rotation
ຄຸ້ມຄອງກົນໄກການຢືນຢັນທີ່ສະລັບສັບຊ້ອນເພື່ອປະສານງານ Smart Money API ໃນສະພາບແວດລ້ອມວິສາຫະກິດ. ຮຽນຮູ້ການເຮັດວຽກຂອງ OAuth 2.0, ແບບແຜນ Token JWT, ການປ່ຽນແປງກະແຈທີ່ປອດໄພ, ແລະການປະຕິບັດການຢືນຢັນຫຼາຍປັດໄຈ.
ເຜີຍແຜ່ເມື່ອວັນທີ 21 ມີນາ 2026
•
18 ນາທີ ໃນການອ່ານ
•
ຂັ້ນສູງ
ພາບລວມການຢືນຢັນ
Smart Money API ຮອງຮັບຫຼາຍວິທີການຢືນຢັນທີ່ອອກແບບມາເພື່ອຮອງຮັບສະຖາປັດຕະຍະກຳແອັບພລິເຄຊັນ, ຄວາມຕ້ອງການດ້ານຄວາມປອດໄພ, ແລະນະໂຍບາຍຂອງອົງກອນ. ການເຂົ້າໃຈແບບແຜນເຫຼົ່ານີ້ຈະຊ່ວຍໃຫ້ການປະສານງານຂອງທ່ານມີທັງຄວາມປອດໄພແລະປະສິດທິພາບ.
ການຢືນຢັນໃນ Smart Money API ເຮັດວຽກໃນສາມຊັ້ນຫຼັກ:
- API Keys — ການຢືນຢັນແບບ Bearer Token ທີ່ງ່າຍດາຍສຳລັບການພັດທະນາແລະການປະສານງານທີ່ຊັດເຈນ
- JWT Tokens — Token ທີ່ບໍ່ມີສະຖານະ, ຖືກລົງນາມດ້ວຍລະຫັດສຳລັບລະບົບການແຈກຢາຍແລະ microservices
- OAuth 2.0 — ໂຄງປະກອບການອະນຸຍາດແບບມອບສິດສຳລັບການປະສານງານພາກສ່ວນທີສາມແລະແອັບພລິເຄຊັນ SaaS
ຫຼັກການຄວາມປອດໄພ: ຫ້າມເປີດເຜີຍຂໍ້ມູນການຢືນຢັນໃນລະຫັດຝ່າຍລູກຄ້າ, ບັນທຶກ, ການຄວບຄຸມລຸ້ນ, ຫຼືຂໍ້ຄວາມຜິດພາດ. ຈັດຕາຕະລາງການປ່ຽນແປງຂໍ້ມູນຢືນຢັນແບບປົກກະຕິ ແລະທັນທີເມື່ອມີການລະເມີດ.
ແຕ່ລະວິທີມີຂໍ້ດີທີ່ແຕກຕ່າງກັນ. API keys ເໝາະສົມທີ່ສຸດສຳລັບການສື່ສານລະຫວ່າງ backend ກັບ backend ເມື່ອການເກັບຮັກສາຂໍ້ມູນຢືນຢັນຖືກຄວບຄຸມ. JWT tokens ເກັ່ງໃນສະຖາປັດຕະຍະກຳແບບແຈກຢາຍທີ່ບໍ່ມີສະຖານະຮ່ວມກັນ. OAuth 2.0 ສະໜອງການເຂົ້າເຖິງແບບມອບສິດຈາກຜູ້ໃຊ້ສຳລັບແອັບພລິເຄຊັນພາກສ່ວນທີສາມ.
API Key Authentication
API keys ແມ່ນກົນໄກການຢືນຢັນທີ່ງ່າຍທີ່ສຸດ—ພວກມັນແມ່ນສະຕຣິງສຸ່ມທີ່ຖືກສ້າງຂຶ້ນສຳລັບບັນຊີຂອງທ່ານທີ່ລະບຸແອັບພລິເຄຊັນຂອງທ່ານໃຫ້ກັບ Smart Money API. ທຸກໆຄຳຮ້ອງຂໍຕ້ອງລວມເອົາ API key ຂອງທ່ານເປັນ header ຫຼື query parameter.
Header-Based API Key
ວິທີທີ່ແນະນຳແມ່ນການສົ່ງ API key ຂອງທ່ານໃນ header Authorization ໂດຍໃຊ້ແບບ Bearer scheme:
curl -X GET "https://api.smartmoneyapi.com/v1/whales/btc" \
-H "Authorization: Bearer sk_live_1234567890abcdef" \
-H "Accept: application/json"
Query Parameter API Key
ສຳລັບການເຊື່ອມຕໍ່ WebSocket ຫຼືເມື່ອບໍ່ສາມາດແກ້ໄຂ headers, ສົ່ງ API key ເປັນ query parameter:
ws://localhost:8877/ws?api_key=sk_live_1234567890abcdef
// Establishes authenticated WebSocket stream
API Key Characteristics
| Property |
Description |
| Format |
128-character hex string prefixed with sk_test_ or sk_live_ |
| Scope |
Inherits all permissions of the account that created it |
| Expiration |
Never expires automatically; must be rotated manually |
| Rotation |
Generate new key, migrate traffic, then deactivate old key |
| Rate Limits |
Shared across all requests using the same key |
API Key Security Practices
- Environment Variables — Store keys in .env files (not committed to version control) and load at runtime
- Vault Systems — ໃຊ້ HashiCorp Vault, AWS Secrets Manager, ຫຼື Azure Key Vault ໃນການຜະລິດ
- ກະແຈແຍກຕ່າງຫາກ — ຮັກສາກະແຈທົດສອບແລະກະແຈຈິງແຍກຕ່າງຫາກ; ຫມູນວຽນກະແຈທົດສອບເລື້ອຍໆ
- ຂອບເຂດຕໍາ່ສຸດ — ສ້າງກະແຈແຍກຕ່າງຫາກສໍາລັບການລວມຕ່າງໆເມື່ອເປັນໄປໄດ້
- ການບັນທຶກກວດສອບ — ບັນທຶກທຸກເຫດການການສ້າງແລະການໃຊ້ງານ API key
ເອົາ API key ຂອງທ່ານໃນ 30 ວິນາທີ
ພ້ອມທີ່ຈະສ້າງແລ້ວບໍ? ເອົາ API key ຟຣີ (50 ຄວາມພະຍາຍາມ/ມື້, ບໍ່ຕ້ອງໃຊ້ບັດ) ແລະເລີ່ມດຶງຂໍ້ມູນ whale, funding ແລະ on-chain ຕົວຈິງ.
ເອົາ API key ຂອງທ່ານ →
ແບບແຜນ Bearer Token
Bearer tokens ຂະຫຍາຍແນວຄວາມຄິດຂອງ API key ງ່າຍໆໂດຍການເພີ່ມບໍລິບົດ, ການໝົດອາຍຸ, ແລະກົນໄກການເຮັດໃຫມ່. ມັນເຫມາະສົມສໍາລັບແອັບພລິເຄຊັນທີ່ຕ້ອງການການຈັດການຂໍ້ມູນປະຈໍາຕົວແບບໂປຣແກຣມ.
ການໄດ້ຮັບ Bearer Tokens
ແລກປ່ຽນ API key ແລະຄວາມລັບຂອງທ່ານເພື່ອເອົາ bearer token ທີ່ໃຊ້ໄດ້ 24 ຊົ່ວໂມງ:
curl -X POST "https://api.smartmoneyapi.com/v1/auth/token" \
-H "Content-Type: application/json" \
-d '{
"api_key": "sk_live_1234567890",
"api_secret": "secret_abc123xyz"
}'
ຮູບແບບຕອບກັບ Token
ຈຸດສິ້ນສຸດສົ່ງຄືນ bearer token ພ້ອມຂໍ້ມູນ metadata:
{
"access_token": "eyJhbGciOiJIUzI1NiIs...",
"token_type": "Bearer",
"expires_in": 86400,
"refresh_token": "refresh_1234567..."
}
ການໃຊ້ Bearer Tokens
ລວມ token ໃນຫົວຂໍ້ Authorization ສໍາລັບທຸກຄໍາຮ້ອງຂໍຕໍ່ໄປ:
curl -X GET "https://api.smartmoneyapi.com/v1/derivatives/funding-heatmap" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."
ກະແສການເຮັດໃຫມ່ Token
ເມື່ອ token ເກືອບໝົດອາຍຸ, ໃຊ້ refresh token ເພື່ອເອົາໂຕໃຫມ່ໂດຍບໍ່ຕ້ອງໃຊ້ API secret ຂອງທ່ານ:
curl -X POST "https://api.smartmoneyapi.com/v1/auth/refresh" \
-H "Content-Type: application/json" \
-d '{
"refresh_token": "refresh_1234567..."
}'
ການປະຕິບັດ OAuth 2.0
OAuth 2.0 ເຮັດໃຫ້ຜູ້ໃຊ້ສາມາດອະນຸຍາດໃຫ້ແອັບພລິເຄຊັນເຂົ້າເຖິງບັນຊີ Smart Money API ຂອງພວກເຂົາໂດຍບໍ່ຕ້ອງແບ່ງປັນຂໍ້ມູນປະຈໍາຕົວ. ນີ້ເປັນສິ່ງຈໍາເປັນສໍາລັບເວທີ SaaS, ການລວມຕົວຂອງພາກສ່ວນທີສາມ, ແລະແອັບພລິເຄຊັນ multi-tenant.
ກະແສການອະນຸຍາດ OAuth 2.0 Authorization Code
ກະແສມາດຕະຖານສໍາລັບແອັບພລິເຄຊັນເວັບ:
- ຜູ້ໃຊ້ເລີ່ມຕົ້ນເຂົ້າສູ່ລະບົບ — ຜູ້ໃຊ້ກົດ "ເຊື່ອມຕໍ່ກັບ Smart Money API"
- ໂອນໄປຫາເຊີບເວີການອະນຸຍາດ — ແອັບຂອງທ່ານໂອນຜູ້ໃຊ້ໄປຫາຈຸດສິ້ນສຸດການອະນຸຍາດຂອງ Smart Money
- ຜູ້ໃຊ້ອະນຸຍາດ — ຜູ້ໃຊ້ກວດສອບຂອບເຂດທີ່ຮ້ອງຂໍແລະອະນຸຍາດການເຂົ້າເຖິງ
- ລະຫັດການອະນຸຍາດຖືກສົ່ງຄືນ — ຜູ້ໃຊ້ຖືກໂອນກັບຄືນພ້ອມລະຫັດການອະນຸຍາດ
- ແລກປ່ຽນລະຫັດເພື່ອເອົາ token — backend ແລກປ່ຽນລະຫັດເພື່ອເອົາ access token (ລະຫັດບໍ່ເຄີຍຖືກເປີດເຜີຍຕໍ່ frontend)
- ເກັບຮັກສາ token — ເກັບຮັກສາ refresh token ໄວ້ຢ່າງປອດໄພ; ໃຊ້ access token ເພື່ອການເອີ້ນໃຊ້ API
ຂັ້ນຕອນທີ 1: ໂອນຜູ້ໃຊ້ໄປຍັງຈຸດສິ້ນສຸດການອະນຸຍາດ
// URL ເພື່ອໂອນຜູ້ໃຊ້
const authUrl = new URL('https://api.smartmoneyapi.com/oauth/authorize');
authUrl.searchParams.append('client_id', 'your_client_id');
authUrl.searchParams.append('redirect_uri', 'https://yourapp.com/callback');
authUrl.searchParams.append('response_type', 'code');
authUrl.searchParams.append('scope', 'whales derivatives onchain');
authUrl.searchParams.append('state', generateRandomState());
window.location.href = authUrl.toString();
ຂັ້ນຕອນທີ 2: ຈັດການການຕອບກັບແລະການແລກປ່ຽນລະຫັດ
// ຫລັງຄານຈັດການເສັ້ນທາງ /callback
const code = req.query.code;
const storedState = req.session.state;
const receivedState = req.query.state;
// ກວດສອບພາຣາມິເຕີ state
if (storedState !== receivedState) {
throw new Error('State mismatch - CSRF attack detected');
}
// ແລກປ່ຽນລະຫັດເພື່ອເອົາ token
const tokenResponse = await fetch('https://api.smartmoneyapi.com/oauth/token', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
grant_type: 'authorization_code',
code: code,
client_id: process.env.OAUTH_CLIENT_ID,
client_secret: process.env.OAUTH_CLIENT_SECRET,
redirect_uri: 'https://yourapp.com/callback'
})
});
const tokens = await tokenResponse.json();
// ເກັບຮັກສາ tokens ໄວ້ຢ່າງປອດໄພ
ຂອບເຂດ OAuth
ຮ້ອງຂໍພຽງແຕ່ຂອບເຂດທີ່ແອັບພລິເຄຊັນຂອງທ່ານຕ້ອງການ. Smart Money API ກໍານົດຂອບເຂດເຫຼົ່ານີ້:
| ຂອບເຂດ |
ຄໍາອະທິບາຍ |
| whales |
ເຂົ້າເຖິງການຕິດຕາມກະເປົາເງິນ whale ແລະມາດຕະການການສະສົມ |
| derivatives |
ເຂົ້າເຖິງຂໍ້ມູນ futures, perpetuals, ແລະອັດຕາການສະຫນອງເງິນ |
| onchain |
ເຂົ້າເຖິງການໄຫຼຂອງທຸລະກໍາ on-chain ແລະການວິເຄາະ |
| alerts |
ສ້າງແລະຈັດການການແຈ້ງເຕືອນ webhook |
| offline |
ເຂົ້າເຖິງ refresh tokens ເພື່ອເອົາ access tokens ໃຫມ່ໂດຍບໍ່ຕ້ອງຕິດຕໍ່ API |
ການຈັດການ JWT Token
JWT (JSON Web Tokens) ສະຫນອງການຢືນຢັນສະຖານະບໍ່ມີສະຖານະ - ເຊີບເວີບໍ່ຈໍາເປັນຕ້ອງເກັບຂໍ້ມູນ session. Smart Money API ໃຊ້ RS256 (RSA Signature ກັບ SHA-256) ເພື່ອລົງຊື່ token, ອະນຸຍາດໃຫ້ກວດສອບໂດຍບໍ່ຈໍາເປັນຕ້ອງຕິດຕໍ່ API.
ໂຄງສ້າງ JWT
JWT tokens ປະກອບດ້ວຍສາມສ່ວນທີ່ແຍກກັນດ້ວຍຈຸດ:
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6IjEifQ.
eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkFjY3QxMjM0In0.
SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
// HEADER.PAYLOAD.SIGNATURE
ສ່ວນຫົວ JWT
ສ່ວນຫົວລະບຸ algorithm ແລະປະເພດ token:
{
"alg": "RS256",
"typ": "JWT",
"kid": "1"
}
ຂໍ້ກໍານົດຂອງ JWT Payload
payload ປະກອບດ້ວຍຂໍ້ກໍານົດ (ຄໍາຖະແຫຼງກ່ຽວກັບຜູ້ໃຊ້/ແອັບ):
{
"sub": "acct_1234567890",
"name": "Trading Bot",
"iat": 1703001600,
"exp": 1703088000,
"scopes": ["whales", "derivatives"],
"aud": "https://api.smartmoneyapi.com"
}
ການກວດສອບລະຫັດ JWT
ດາວໂຫລດ public key ຂອງ Smart Money ແລະກວດສອບ tokens ກ່ອນຮັບຮອງ:
const jwt = require('jsonwebtoken');
const fs = require('fs');
// ເອົາ public key ຈາກ Smart Money API
const publicKey = fs.readFileSync('smartmoney-public.pem');
// ກວດສອບ token
try {
const decoded = jwt.verify(token, publicKey, {
algorithms: ['RS256'],
audience: 'https://api.smartmoneyapi.com',
issuer: 'https://api.smartmoneyapi.com'
});
// Token ຖືກຕ້ອງ, ໃຊ້ຂໍ້ກໍານົດທີ່ຖອດລະຫັດແລ້ວ
} catch (err) {
// Token ບໍ່ຖືກຕ້ອງຫຼືໝົດອາຍຸ
}
ຍຸດທະສາດການປ່ຽນກະແຈ
ການປ່ຽນກະແຈເປັນປະຈໍາແມ່ນສໍາຄັນສໍາລັບການຮັກສາຄວາມປອດໄພ. ເຖິງແມ່ນວ່າມີການປະຕິບັດດ້ານຄວາມປອດໄພທີ່ດີເລີດ, ໃຫ້ສົມມຸດວ່າກະແຈສາມາດຖືກລະເມີດແລະຈັດຕັ້ງລະບົບການປ່ຽນຢ່າງເປັນລະບົບ.
ຄວາມຖີ່ໃນການປ່ຽນກະແຈ
Smart Money ແນະນໍາຕາຕະລາງການປ່ຽນທີ່ແຕກຕ່າງກັນອີງຕາມປະເພດກະແຈແລະການນໍາໃຊ້:
| ປະເພດກະແຈ |
ການປ່ຽນທີ່ແນະນໍາ |
ການປ່ຽນຕໍາ່ສຸດ |
| ກະແຈ API ທົດສອບ |
ລະດັບເດືອນ |
ລະດັບໄຕມາດ |
| ກະແຈ API ການຜະລິດ |
ລະດັບໄຕມາດ |
ລະດັບປີ |
| OAuth Refresh Tokens |
ອັດຕະໂນມັດ (ຫຼັງຈາກ 90 ວັນ) |
ດໍາເນີນການດ້ວຍມື (ຫຼັງຈາກ 180 ວັນ) |
| ກະແຈບັນຊີບໍລິການ |
ຄັ້ງຕໍ່ເຄິ່ງປີ |
ລະດັບປີ |
ຂັ້ນຕອນການປ່ຽນກະແຈໂດຍບໍ່ມີການລົບກວນການໃຊ້ງານ
ປ່ຽນກະແຈໂດຍບໍ່ມີການລົບກວນການໃຊ້ງານ:
- ສ້າງກະແຈໃຫມ່ — ສ້າງ API key ໃຫມ່ຜ່ານ dashboard ຫຼື API
- ປະຕິບັດການໃຊ້ກະແຈໃຫມ່ — ອັບເດດຂໍ້ມູນລັບໃນສະຖານະ staging, ທົດສອບຢ່າງລະອຽດ
- ການນໍາໃຊ້ແບບຄ່ອຍໆ — ປະຕິບັດການໃສ່ 10% ຂອງເຊີບເວີ, ຕິດຕາມຂໍ້ຜິດພາດ
- ການປະຕິບັດທັງໝົດ — ຕິດຕັ້ງໃສ່ເຊີເວີທີ່ເຫຼືອ
- ກວດສອບການເຂົ້າຊົມ — ຢືນຢັນວ່າການຮ້ອງຂໍທັງໝົດໃຊ້ກະແຈໃໝ່
- ປິດການໃຊ້ງານກະແຈເກົ່າ — ໝາຍກະແຈເກົ່າເປັນບໍ່ໃຊ້ງານແຕ່ຢ່າລຶບທັນທີ
- ລຶບກະແຈເກົ່າ — ຫຼັງຈາກ 48 ຊົ່ວໂມງທີ່ບໍ່ມີຂໍ້ຜິດພາດ, ລຶບຖາວອນ
ການປ່ຽນກະແຈແບບສຸກເສີນ
ຖ້າທ່ານສົງໃສວ່າກະແຈຖືກເຈາະ:
// ການດຳເນີນການທັນທີ: ປິດການໃຊ້ງານກະແຈທີ່ຖືກເຈາະ
curl -X POST "https://api.smartmoneyapi.com/v1/keys/sk_live_xxx/revoke" \
-H "Authorization: Bearer token"
// ສ້າງກະແຈທົດແທນທັນທີ
curl -X POST "https://api.smartmoneyapi.com/v1/keys" \
-H "Content-Type: application/json" \
-d '{
"name": "Emergency Replacement Key"
}'
ການປ່ຽນກະແຈແບບອັດຕະໂນມັດໃນ Kubernetes
ໃຊ້ Kubernetes Secrets ແລະ operators ເພື່ອການປ່ຽນກະແຈແບບອັດຕະໂນມັດ:
apiVersion: batch/v1
kind: CronJob
metadata:
name: api-key-rotator
spec:
schedule: "0 0 * * 0" # ທຸກໆອາທິດໃນວັນອາທິດ
jobTemplate:
spec:
template:
spec:
containers:
- name: rotator
image: smartmoney-key-rotator:latest
ການຢືນຢັນຕົວຕົນແບບຫຼາຍຂັ້ນຕອນ (MFA)
ສຳລັບບັນຊີທີ່ເຂົ້າເຖິງຂໍ້ມູນການຜະລິດ, MFA ຈະໃຫ້ຊັ້ນຄວາມປອດໄພເພີ່ມເຕີມໂດຍການຮ້ອງຂໍປັດໄຈທີສອງນອກເໜືອຈາກຂໍ້ມູນລະຫັດຜ່ານ.
ວິທີການ MFA ທີ່ຮອງຮັບ
- TOTP (ລະຫັດຜ່ານຄັ້ງດຽວແບບເວລາ) — ແອັບຯເຊັ່ນ Google Authenticator, Authy
- WebAuthn/FIDO2 — ກະແຈຄວາມປອດໄພຮາດແວ, ການຢືນຢັນຕົວຕົນທາງຊີວະມິຕິ
- ລະຫັດຜ່ານຄັ້ງດຽວຜ່ານ SMS — ຄວາມປອດໄພຕ່ຳແຕ່ຮອງຮັບຢ່າງກວ້າງຂວາງ
- ການຢືນຢັນຜ່ານອີເມວ — ລະຫັດຢືນຢັນສົ່ງໄປທີ່ອີເມວທີ່ລົງທະບຽນ
ການເປີດໃຊ້ TOTP ສຳລັບການເຂົ້າເຖິງບັນຊີ
// ຂັ້ນຕອນທີ 1: ຮ້ອງຂໍຕັ້ງຄ່າ MFA
curl -X POST "https://api.smartmoneyapi.com/v1/account/mfa/enable" \
-H "Authorization: Bearer token"
// ຄຳຕອບຈະປະກອບມີ URL QR code
{
"qr_code_url": "https://...",
"secret": "JBSWY3DPEBLW64TMMQ...",
"backup_codes": ["12345678", ...]
}
MFA ໃນລະຫວ່າງການດຳເນີນການ API
ບາງການດຳເນີນການອາດຈະຕ້ອງການການຢືນຢັນ MFA ເຖິງແມ່ນວ່າຈະຜ່ານການຢືນຢັນຕົວຕົນແລ້ວ:
// ກຳລັງພະຍາຍາມດຳເນີນການທີ່ລະອຽດອ່ອນ (ການປ່ຽນກະແຈ)
curl -X POST "https://api.smartmoneyapi.com/v1/keys/rotate" \
-H "Authorization: Bearer token" \
-H "X-MFA-Token: mfa_challenge_abc123"
// ຄຳຕອບ: ຕ້ອງການ MFA
{
"error": "mfa_required",
"mfa_token": "mfa_xyz789"
}
// ລອງໃໝ່ດ້ວຍລະຫັດ TOTP
curl -X POST "https://api.smartmoneyapi.com/v1/keys/rotate" \
-H "Authorization: Bearer token" \
-H "X-MFA-Code: 123456"
ວິທີປະຕິບັດດ້ານຄວາມປອດໄພທີ່ດີທີ່ສຸດ
ການຢືນຢັນຕົວຕົນຈະເຂັ້ມແຂງໄດ້ກໍ່ຕໍ່ເມື່ອມີການປະຕິບັດທີ່ດີ. ປະຕິບັດຕາມວິທີການເຫຼົ່ານີ້ເພື່ອຮັກສາຄວາມປອດໄພ:
ການຈັດການຂໍ້ມູນລັບ
- ຫ້າມບັນທຶກຂໍ້ມູນລັບໃສ່ລະບົບຄວບຄຸມຮຸ້ນ — ໃຊ້ໄຟລ໌ .env ພ້ອມ .gitignore
- ໃຊ້ຕົວປ່ຽນສະພາບແວດລ້ອມ — ໂຫຼດຈາກລະບົບຈັດການຂໍ້ມູນລັບທີ່ປອດໄພ
- ສະແກນສາງຂໍ້ມູນ — ໃຊ້ເຄື່ອງມືເຊັ່ນ TruffleHog, detect-secrets ເພື່ອຊອກຫາກະແຈທີ່ຖືກເປີດເຜີຍ
- ກວດສອບບັນທຶກການເຂົ້າເຖິງ — ຕິດຕາມວ່າໃຜເຂົ້າເຖິງຂໍ້ມູນລັບແລະເວລາໃດ
ຄວາມປອດໄພໃນການສົ່ງຂໍ້ມູນ
- ໃຊ້ HTTPS ສະເໝີ — ຫ້າມສົ່ງຂໍ້ມູນລະຫັດຜ່ານທາງເຊື່ອມຕໍ່ທີ່ບໍ່ໄດ້ເຂົ້າລະຫັດ
- ກວດສອບໃບຢັ້ງຢືນ SSL — ຫ້າມປິດການກວດສອບໃບຢັ້ງຢືນໃນການຜະລິດ
- ໃຊ້ການປັກຫມຸດໃບຢັ້ງຢືນ — ສຳລັບແອັບຯມືຖື, ປ້ອງກັນການໂຈມຕີ MITM
- ບັງຄັບໃຊ້ TLS 1.2+ — ປິດການໃຊ້ງານໂປຣໂຕຄໍເກົ່າ
ການຈັດການຂໍ້ມູນລະຫັດຜ່ານ
- ເຂົ້າລະຫັດຂໍ້ມູນລັບ — ເກັບຮັກສາ bcrypt ຫຼື Argon2 hashes, ຫ້າມເກັບຂໍ້ຄວາມທຳມະດາ
- ຫຼຸດອາຍຸການໃຊ້ງານ — ເກັບຂໍ້ມູນລະຫັດຜ່ານໄວ້ໃນຄວາມຈຳເທົ່ານັ້ນທີ່ຈຳເປັນ
- ລົບຂໍ້ມູນທີ່ລະອຽດອ່ອນ — ຂຽນທັບຂໍ້ມູນລະຫັດຜ່ານຫຼັງຈາກໃຊ້ງານ
- ໃຊ້ຄອບຄົວປອດໄພ — ຫ້າມສ້າງລະບົບການເຂົ້າລະຫັດດ້ວຍຕົວເອງ
ການບັນທຶກແລະການຕິດຕາມ
- ຫ້າມບັນທຶກຂໍ້ມູນລະຫັດຜ່ານ — ເຊື່ອງກະແຈໃນບັນທຶກ, ໃຊ້ການປົກບັນທຶກ
- ບັນທຶກເຫດການການຢືນຢັນຕົວຕົນ — ຕິດຕາມການພະຍາຍາມເຂົ້າສູ່ລະບົບທີ່ສຳເລັດແລະລົ້ມເຫຼວ
- ຕິດຕາມການກະທຳຜິດປົກກະຕິ — ແຈ້ງເຕືອນເມື່ອມີຮູບແບບການເຂົ້າເຖິງທີ່ຜິດປົກກະຕິ
- ກວດສອບການໃຊ້ງານກະແຈ — ຕິດຕາມວ່າກະແຈໃດເຂົ້າເຖິງຂໍ້ມູນໃດ
ຮູບແບບການຢືນຢັນຕົວຕົນສຳລັບອົງກອນ
ອົງກອນໃຫຍ່ມັກຕ້ອງການການຄວບຄຸມຄວາມປອດໄພເພີ່ມເຕີມແລະຄວາມສາມາດໃນການປະຕິບັດຕາມກົດໝາຍ.
ການລວມລະບົບ SAML 2.0
ສຳລັບລູກຄ້າອົງກອນ, Smart Money API ຮອງຮັບການລວມລະບົບ SAML 2.0 ກັບຜູ້ໃຫ້ບໍລິການຢືນຢັນຕົວຕົນຂອງອົງກອນຂອງທ່ານ (Okta, Azure AD, ແລະອື່ນໆ):
- ການເຂົ້າສູ່ລະບົບດ້ວຍລະຫັດດຽວ (SSO) — ຜູ້ໃຊ້ຢືນຢັນຕົວຕົນຜ່ານ IdP ຂອງບໍລິສັດຂອງທ່ານ
- ການຈັດຕັ້ງຄ່າແບບອັດຕະໂນມັດ — ສ້າງ/ປິດການໃຊ້ງານບັນຊີຕາມກຸ່ມສະມາຊິກ
- ການບັງຄັບໃຊ້ — ຮຽກຮ້ອງໃຫ້ໃຊ້ SAML ສຳລັບການເຂົ້າເຖິງຂອງຜູ້ໃຊ້ທັງໝົດ
ການຈຳກັດ IP ທີ່ອະນຸຍາດ
ຈຳກັດການເຂົ້າເຖິງ API ໃຫ້ກັບທີ່ຢູ່ IP ຫຼືຊ່ວງ CIDR ສະເພາະ
// ເພີ່ມ IP ເຂົ້າ whitelist
curl -X POST "https://api.smartmoneyapi.com/v1/account/ip-whitelist" \
-H "Authorization: Bearer token" \
-d '{
"cidr": "203.0.113.0/24",
"description": "Production servers"
}'
ການບັນທຶກ Audit Log ແລະການປະຕິບັດຕາມ
ແຜນ Enterprise ປະກອບດ້ວຍ audit logs ທີ່ຄົບຖ້ວນສຳລັບການປະຕິບັດຕາມ:
| ເຫດການ |
ຂໍ້ມູນທີ່ບັນທຶກ |
| ການຢືນຢັນຕົວຕົນ |
ຜູ້ໃຊ້, ເວລາ, ຜົນສຳເລັດ/ລົ້ມເຫຼວ, IP, ສະຖານະ MFA |
| ການດຳເນີນການກັບຄີ |
ລະຫັດຄີ, ການດຳເນີນການ, ຜູ້ເລີ່ມຕົ້ນ, ເວລາ |
| ການປ່ຽນແປງບັນຊີ |
ສິ່ງທີ່ປ່ຽນແປງ, ຜູ້ປ່ຽນແປງ, ເວລາ, ຄ່າກ່ອນ/ຫຼັງ |
| ການເຂົ້າເຖິງຂໍ້ມູນ |
ຜູ້ໃຊ້, endpoint, scopes, ເວລາ, ຈຳນວນບັນທຶກ |
ການແກ້ໄຂບັນຫາການຢືນຢັນຕົວຕົນ
ຂໍ້ຜິດພາດ API Key ບໍ່ຖືກຕ້ອງ
ບັນຫາ: ໄດ້ຮັບ "401 Unauthorized - Invalid API Key"
ວິທີແກ້ໄຂ:
- ກວດເບິ່ງຮູບແບບຄີ (ຄວນເລີ່ມຕົ້ນດ້ວຍ sk_test_ ຫຼື sk_live_)
- ກວດເບິ່ງຊ່ອງຫວ່າງທ້າຍ/ເລີ່ມຕົ້ນໃນຄີ
- ຢືນຢັນວ່າຄີບໍ່ໄດ້ຖືກປິດໃຊ້ຫຼືປ່ຽນ
- ຢືນຢັນວ່າທ່ານກຳລັງໃຊ້ສະພາບແວດລ້ອມທີ່ຖືກຕ້ອງ (ຄີທົດລອງສຳລັບທົດລອງ, ຄີຈິງສຳລັບການຜະລິດ)
- ກວດເບິ່ງສິດອະນຸຍາດຂອງ API key ວ່າຕົງກັບຄວາມຕ້ອງການຂອງ endpoint
ຂໍ້ຜິດພາດ Token ໝົດອາຍຸ
ບັນຫາ: Bearer token ໝົດອາຍຸ, ຄຳຮ້ອງຂໍລົ້ມເຫຼວ
ວິທີແກ້ໄຂ:
- ໃຊ້ refresh token ເພີ່ມເຕີມເພື່ອໄດ້ຮັບ access token ໃໝ່
- ຈັດການການເຮັດໃຫ້ token ໃໝ່ອັດຕະໂນມັດ 5 ນາທີກ່ອນໝົດອາຍຸ
- ເກັບຮັກສາ refresh token ຢ່າງປອດໄພ (ບໍ່ໃຊ້ localStorage ສຳລັບ SPAs)
- ຈັດການການຕອບສະໜອງ 401 ໂດຍພະຍາຍາມໃຊ້ຂັ້ນຕອນ refresh token
ຂໍ້ຜິດພາດ CORS/Preflight
ບັນຫາ: ບຣາວເຊີປິດການຄຳຮ້ອງຂໍດ້ວຍຂໍ້ຜິດພາດ CORS
ວິທີແກ້ໄຂ:
- ການເອີ້ນໃຊ້ API ຈາກບຣາວເຊີຕ້ອງມາຈາກຕົ້ນກຳເນີດທີ່ຢູ່ໃນ whitelist
- ເພີ່ມໂດເມນຂອງທ່ານຜ່ານ dashboard: Settings → CORS Origins
- ບຣາວເຊີສົ່ງຄຳຮ້ອງຂໍ OPTIONS preflight ອັດຕະໂນມັດ
- ສຳລັບການພັດທະນາ, ໃຊ້ localhost:3000 ຫຼືຄ້າຍຄືກັນ
ການທົດສອບ MFA ບໍ່ສຳເລັດ
ບັນຫາ: ການດຳເນີນການທີ່ຕ້ອງການ MFA ລົ້ມເຫຼວເຖິງແມ່ນວ່າມີລະຫັດຖືກຕ້ອງ
ວິທີແກ້ໄຂ:
- ຢືນຢັນວ່າໂມງເຊີບເວີຖືກປັບເວລາ (TOTP ເພິ່ງເວລາ)
- ລະຫັດມີຄວາມຖືກຕ້ອງພຽງ 30 ວິນາທີ, ສ້າງລະຫັດໃໝ່
- ໃຊ້ລະຫັດສຳຮອງຖ້າແອັບປະກອບບໍ່ມີ
- ການກູ້ຄືນບັນຊີມີຜ່ານອີເມວທີ່ລົງທະບຽນ
ຈັດການການຢືນຢັນຕົວຕົນທີ່ປອດໄພໃນມື້ນີ້
Smart Money API ສະຫນັບສະຫນູນການຢືນຢັນຕົວຕົນລະດັບວິສາຫະກິດດ້ວຍ OAuth 2.0, JWT, MFA, ແລະການປະສົມກັບ SAML. ປົກປັກຮັກສາການປະສົມກັບ API ຂອງທ່ານດ້ວຍວິທີປະຕິບັດທີ່ດີທີ່ສຸດໃນອຸດສາຫະກຳ.
ເບິ່ງແຜນ Enterprise
ຕ້ອງການ SAML, IP whitelisting, ຫຼືການສະຫນັບສະຫນູນສະເພາະ? ຕິດຕໍ່ທີມຂາຍຂອງພວກເຮົາ.