Authentication နဲ့ scope များ
API key တွေ ဘယ်လို အလုပ်လုပ်လဲ၊ scope တစ်ခုချင်း ဘာခွင့်ပြုလဲ၊ key ကို ဘယ်လို လုံခြုံအောင် ထားမလဲ။
Request တိုင်းရဲ့ Authorization header မှာ API key ကို ပို့ပါ -
Authorization: Bearer fom_live_3f9a1c2b7d4e_Xk2…Key တစ်ခုက ဆိုင်တစ်ဆိုင်နဲ့ပဲ သက်ဆိုင်လို့ ဆိုင် id ပို့စရာ မလိုပါ။ အလုပ်လုပ်တဲ့ key မပါရင် 401 UNAUTHORIZED ရပါတယ်။
Key က ပြုလုပ်သူအတွက် လုပ်ဆောင်ပါတယ်
Key တစ်ခု လုပ်တာမှန်သမျှကို အဲဒီ key ပြုလုပ်ခဲ့တဲ့ ပိုင်ရှင် ဒါမှမဟုတ် မန်နေဂျာ အနေနဲ့ key ရဲ့ scope အတွင်းမှာပဲ လုပ်ပါတယ်။ Request တစ်ခုမှာ နှစ်ခုလုံး လိုပါတယ် -
- key ပေါ်က scope နဲ့
- ပြုလုပ်သူမှာ ဆိုင်ထဲ ယနေ့ ရှိနေတဲ့ ခွင့်ပြုချက်။
အဲဒီလူ ဆိုင်ကနေ ထွက်သွားရင် ဒါမှမဟုတ် ခွင့်ပြုချက် ဆုံးရှုံးရင် သူ့ key တွေ အလုပ်မလုပ်တော့ဘဲ ဆက်တင်မှာ အလုပ်မလုပ်ပါ လို့ ပြပါတယ်။ ခွင့်ပြုချက် ရှိနေသေးတဲ့ လူတစ်ယောက်က key အသစ် ပြုလုပ်ပါ။
Scope များ
Key ပြုလုပ်တဲ့အခါ tool လိုတာကိုပဲ အမှန်ခြစ်ပါ။ သင်ကိုယ်တိုင် လုပ်နိုင်တာတွေအတွက်ပဲ scope ပေးနိုင်ပါတယ်။
| Scope | ခွင့်ပြုချက် |
|---|---|
orders:read | အော်ဒါများ ကြည့်ရန် |
orders:write | အော်ဒါ ဖန်တီးပြီး အခြေအနေ ပြောင်းရန် |
customers:read | ဖောက်သည်များ ကြည့်ရန် |
customers:write | ဖောက်သည် ထည့်ပြီး ပြင်ရန် |
products:read | ပစ္စည်းနဲ့ လက်ကျန် ကြည့်ရန် |
products:write | ပစ္စည်း ထည့်ပြီး ပြင်ရန် |
stock:write | လက်ကျန် ပြောင်းရန် |
deliveries:read | ပို့ဆောင်မှုများ ကြည့်ရန် |
deliveries:write | ပို့ဆောင်မှုများ ပြောင်းရန် |
GET /shop က အလုပ်လုပ်တဲ့ key မည်သည့်တစ်ခုနဲ့မဆို ရပြီး key ရဲ့ scope တွေကို ပြပါတယ်။ Scope မပါရင် 403 FORBIDDEN ရပါတယ်။
Key ကို လုံခြုံအောင် ထားပါ
- တစ်ကြိမ်သာ ပြပါတယ်။ FOM က key ရဲ့ hash ကိုပဲ သိမ်းပါတယ်။ ပျောက်သွားရင် အသစ် ပြုလုပ်ပါ။
- Server ပေါ်မှာပဲ။ ဝက်ဘ်ဆိုက်၊ မိုဘိုင်း app ဒါမှမဟုတ် public repository ထဲ key ကို ဘယ်တော့မှ မထည့်ပါနဲ့။ ရထားတဲ့သူ မည်သူမဆို သင့်အနေနဲ့ လုပ်ဆောင်နိုင်ပါတယ်။
- သုံးမယ့်နေရာကို ကန့်သတ်ပါ။ Key ပြုလုပ်တဲ့အခါ သက်တမ်းကုန်ရက် နဲ့ ခွင့်ပြုထားသော IP လိပ်စာများ (လိပ်စာတစ်ခုချင်း ဒါမှမဟုတ်
203.0.113.0/24လို အပိုင်းအခြား) သတ်မှတ်နိုင်ပါတယ်။ တခြား လိပ်စာကလာတဲ့ request တွေက403ရပါတယ်။ - Key ပေါက်ကြားနိုင်တယ်ထင်တာနဲ့ ဆက်တင် → Developers မှာ ပယ်ဖျက်ပါ။ သုံးနေတဲ့ program တွေ ချက်ချင်း ရပ်သွားပါတယ်။ Key တွေက
fom_live_နဲ့ စလို့ log နဲ့ code စစ်ဆေးမှုတွေမှာ မြင်ရလွယ်ပါတယ်။
API အသုံးပြုခွင့်
ဆိုင်မှာ API အသုံးပြုခွင့် ထပ်တိုး ရှိနေစဉ်မှာပဲ key တွေ အလုပ်လုပ်ပါတယ်။ မရှိရင် request တွေက ဒီအကြောင်း ပြောတဲ့ စာနဲ့ 403 ရပါတယ်။ ထပ်တိုး ပြန်ရှိလာရင် အရင်က ပြုလုပ်ထားတဲ့ key တွေ ပြန်အလုပ်လုပ်ပါတယ်။