ការណែនាំអំពីសុវត្ថិភាព API
សេចក្តីផ្តើម
តើ API Economy ជាអ្វី?
សុវត្ថិភាព API បណ្ដាញ
- REST (ការផ្ទេររដ្ឋតំណាង)។
REST API សុវត្ថិភាព
SOAP API, សុវត្ថិភាព
SOAP APIs ផ្តល់នូវយន្តការសុវត្ថិភាពដែលភ្ជាប់មកជាមួយហៅថា Web Services Security (WS Security)។ ពួកគេពិនិត្យមើលការផ្ទៀងផ្ទាត់ និងការអនុញ្ញាត។ ពួកគេប្រើការអ៊ិនគ្រីប XML ហត្ថលេខា XML និងសញ្ញាសម្ងាត់ SAML ។
SOAP គឺជាវិធីសាស្រ្តត្រឹមត្រូវសម្រាប់ការកំណត់ស្តង់ដារ និងការអ៊ិនគ្រីបសេវាកម្មគេហទំព័រ។ SOAP គឺជាជម្រើសប្រសើរជាង REST ។
SOAP កំណត់ចំពោះ XML ប៉ុន្តែ REST អាចគ្រប់គ្រងទ្រង់ទ្រាយទិន្នន័យណាមួយ។ JSON ងាយយល់ជាង XML ។ ការប្រើប្រាស់ REST សម្រាប់ការដឹកជញ្ជូនទិន្នន័យសន្សំប្រាក់លើថ្លៃដើមហេដ្ឋារចនាសម្ព័ន្ធកុំព្យូទ័រ។
ការគ្រប់គ្រង API
ការគ្រប់គ្រង API ជួយអាជីវកម្មបង្កើតធនធានឌីជីថលរបស់ពួកគេ។
ខាងក្រោមនេះគឺជាវិធីមួយចំនួនដើម្បីគ្រប់គ្រងសុវត្ថិភាព API៖
1. ការផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវ
HTTP Basic Authentication គឺជាវិធីសាស្ត្រសម្រាប់ម៉ាស៊ីនភ្ញៀវក្នុងការផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវជាមួយ API Gateway។
2. ការផ្ទៀងផ្ទាត់ OAuth2.0
- លំហូរពាក្យសម្ងាត់ឈ្មោះអ្នកប្រើ៖ ជាកន្លែងដែលកម្មវិធីមានសិទ្ធិចូលប្រើប្រាស់ព័ត៌មានសម្ងាត់អ្នកប្រើដោយផ្ទាល់។
- លំហូរម៉ាស៊ីនមេគេហទំព័រ៖ ដែលម៉ាស៊ីនមេអាចការពារការសម្ងាត់របស់អ្នកប្រើប្រាស់។
- លំហូរភ្នាក់ងារអ្នកប្រើប្រាស់៖ ប្រើដោយកម្មវិធីដែលមិនអាចរក្សាទុកការសម្ងាត់របស់អ្នកប្រើប្រាស់បាន។
3. JSON Web Token Authentication
JWT Token គឺជា JSON Object និង base64 ដែលត្រូវបានអ៊ិនកូដ និងចុះហត្ថលេខាជាមួយ key ចែករំលែក។ JWT ធានាថាមានតែអ្នកប្រើប្រាស់ដែលបានកំណត់ប៉ុណ្ណោះដែលអាចបង្កើតនិមិត្តសញ្ញាតែមួយគត់។ JWTs មិនត្រូវបានអ៊ិនគ្រីបទេ។ អ្នកណាដែលមានសិទ្ធិចូលប្រើសញ្ញាសម្ងាត់នឹងទទួលបានទិន្នន័យ។
អត្ថប្រយោជន៍នៃ JWT
- សញ្ញាសម្ងាត់មានព័ត៌មានទាំងអស់ដែលចាំបាច់ដើម្បីផ្ទៀងផ្ទាត់អ្នកប្រើប្រាស់។
- វាងាយស្រួលក្នុងការជៀសវាងការពឹងផ្អែកលើម៉ាស៊ីនមេ និងមូលដ្ឋានទិន្នន័យដែលមានការផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវកណ្តាល។
- ការផ្ទៀងផ្ទាត់រួមបញ្ចូលការពិនិត្យមើលហត្ថលេខា និងកត្តាជាច្រើនទៀត។
- JWT គឺជានិមិត្តសញ្ញាអាយុកាលមធ្យមដែលមានកាលបរិច្ឆេទផុតកំណត់ដែលបានបញ្ជាក់ចន្លោះពីពីរបីសប្តាហ៍ទៅយូរជាងនេះ។
- ការធ្វើមាត្រដ្ឋានលើផ្នែករឹងម៉ាស៊ីនមេបណ្តាញសហសម័យគឺងាយស្រួល…
4. ហត្ថលេខា HTTP
នៅក្នុង JWT បឋមកថាអនុញ្ញាតមានមូលដ្ឋាន 64 បានអ៊ិនកូដ និងចុះហត្ថលេខា។ ប្រសិនបើអ្នកណាម្នាក់ទទួលបាននិមិត្តសញ្ញា JWT និងស្នើសុំ ពួកគេអាចធ្វើបច្ចុប្បន្នភាពតួសំណើ HTTP ។ ហត្ថលេខា HTTP អនុញ្ញាតឱ្យអតិថិជនចុះហត្ថលេខាលើសារ HTTP ។ ដូច្នេះ អ្នកផ្សេងទៀតអាចប៉ះសំណើនៅលើបណ្តាញ។
Amazon, Facebook និង Google ប្រើហត្ថលេខា HTTP ។ នៅឆ្នាំ 2016 ការចុះហត្ថលេខា HTTP Messages បានចាប់ផ្តើមអនុវត្ត។ វាជាការងារថ្មីដែលកំពុងដំណើរការ។ យោងតាមការបញ្ជាក់នេះ អត្ថប្រយោជន៍នៃការចុះហត្ថលេខាលើសារ HTTP សម្រាប់គោលបំណងនៃភាពត្រឹមត្រូវនៃសារពីចុងដល់ចុង។ ម៉ាស៊ីនភ្ញៀវអាចផ្ទៀងផ្ទាត់ជាមួយយន្តការដូចគ្នាដោយមិនចាំបាច់មានរង្វិលជុំច្រើន។
ការយល់ដឹងអំពីភាពងាយរងគ្រោះសុវត្ថិភាព API
OWASP តែងតែជាអាជ្ញាធរឈានទៅរកបញ្ហាសុវត្ថិភាពទូទៅបំផុត និងអាក្រក់បំផុតដែលបានរកឃើញនៅក្នុងកម្មវិធីដែលយើងប្រើប្រចាំថ្ងៃ ហើយវាត្រូវបានបម្រុងទុកដោយទិន្នន័យសម្បូរបែប។
ប្រសិនបើមានមូលដ្ឋានណាមួយសម្រាប់អង្គការណាដែលគួរខិតខំ នោះវានឹងយកឈ្នះលើរឿងនេះ OWASP API Security Top 10 បានរាយខាងក្រោម។
OWASP API សុវត្ថិភាព TOP 1O
API1៖ ការអនុញ្ញាតកម្រិតវត្ថុដែលខូច
API2៖ ការផ្ទៀងផ្ទាត់ដែលខូច
API3៖ ការបង្ហាញទិន្នន័យច្រើនពេក
API4៖ កង្វះធនធាន និងការកំណត់អត្រា
API5៖ ការផ្ទៀងផ្ទាត់កម្រិតមុខងារខូច
API6៖ កិច្ចការធំ
API7៖ ការកំណត់រចនាសម្ព័ន្ធមិនត្រឹមត្រូវសន្តិសុខ
API8៖ ការចាក់ថ្នាំ
API9៖ ការគ្រប់គ្រងទ្រព្យសកម្មមិនត្រឹមត្រូវ
API10៖ ការកត់ត្រា និងការត្រួតពិនិត្យមិនគ្រប់គ្រាន់
ការអនុវត្តល្អបំផុតសុវត្ថិភាព API
នេះគឺជាវិធីសាមញ្ញបំផុតមួយចំនួនដើម្បីកែលម្អសុវត្ថិភាព API៖
- បង្កើតភាពងាយរងគ្រោះរបស់អ្នក។
មានតម្រូវការក្នុងការរក្សាប្រព័ន្ធប្រតិបត្តិការ បណ្តាញ និងសមាសធាតុ API ឱ្យទាន់សម័យ។ រកមើលគុណវិបត្តិដែលអាចឱ្យអ្នកវាយប្រហារចូលប្រើ APIs របស់អ្នក។ Sniffers រកឃើញបញ្ហាសុវត្ថិភាព និងតាមដានការលេចធ្លាយទិន្នន័យ។
- ដាក់កូតានិងបិទបើក។
ដាក់កូតាអំពីថាតើ APIs របស់អ្នកហៅញឹកញាប់ប៉ុណ្ណា ហើយពិនិត្យមើលការប្រើប្រាស់ក្នុងប្រវត្តិ។ ការប្រើ API មិនត្រឹមត្រូវ ជាធម្មតាត្រូវបានបង្ហាញដោយការហៅទូរស័ព្ទកើនឡើង។
- ប្រើច្រក API ដើម្បីភ្ជាប់ទៅ API របស់អ្នក។
API gateways គឺជាចំណុចអនុវត្តចម្បងសម្រាប់ចរាចរ API ។ វានឹងអនុញ្ញាតឱ្យអ្នកត្រួតពិនិត្យ និងវិភាគពីរបៀបដែល APIs របស់អ្នកផ្ទៀងផ្ទាត់។
- ប្រើសញ្ញាសម្ងាត់។
បង្កើតអត្តសញ្ញាណដែលអាចទុកចិត្តបាន។ ប្រើសញ្ញាសម្ងាត់ជាមួយអត្តសញ្ញាណទាំងនោះ ដើម្បីគ្រប់គ្រងការចូលប្រើសេវាកម្ម និងធនធាន។
- ប្រើការអ៊ិនគ្រីប និងហត្ថលេខាឌីជីថល។
អ៊ិនគ្រីបទិន្នន័យរបស់អ្នកដោយប្រើ TLS ។ ប្រើប្រាស់ហត្ថលេខាឌីជីថលដើម្បីផ្ទៀងផ្ទាត់ថាមានតែបុគ្គលដែលមានការអនុញ្ញាតប៉ុណ្ណោះដែលអាចចូលប្រើ និងកែសម្រួលទិន្នន័យបាន។
- ផ្តោតលើសន្តិសុខ។
APIs មិនគួរត្រូវបានចាត់ទុកថាជាចៃដន្យទេ។ ស្ថាប័ននានាប្រឈមនឹងការបាត់បង់យ៉ាងច្រើនដោយការបរាជ័យក្នុងការធានា APIs ។ ជាលទ្ធផល ធ្វើឱ្យសុវត្ថិភាពជាអាទិភាព ហើយបញ្ចូលវាទៅក្នុង APIs របស់អ្នក។
- ធ្វើឱ្យការបញ្ចូលមានសុពលភាព។
កុំបញ្ជូនទិន្នន័យទៅចំណុចបញ្ចប់តាមរយៈ API ដោយមិនចាំបាច់ផ្ទៀងផ្ទាត់វាជាមុន។
- ប្រើការកំណត់អត្រាការប្រាក់។
ការកំណត់បន្ទាប់មកសំណើអាចជួយក្នុងការការពារការវាយប្រហារបដិសេធសេវាកម្ម។
- ប្រើប្រព័ន្ធផ្ទៀងផ្ទាត់ និងការអនុញ្ញាតដ៏រឹងមាំ។
នៅពេលដែល APIs មិនអនុវត្តការផ្ទៀងផ្ទាត់ ការផ្ទៀងផ្ទាត់ដែលខូចនឹងកើតឡើង។
ប្រើប្រាស់បច្ចេកវិទ្យាចូល និងការអនុញ្ញាតដែលត្រូវបានបង្កើតឡើងយ៉ាងល្អ ដូចជា OAuth2.0 និង OpenID Connect។