Keselamatan Perkhidmatan Mikro Bagaimana Melindungi Infrastruktur Perkhidmatan Mikro Anda?



Artikel ini mengenai Keselamatan Perkhidmatan Mikro akan membincangkan beberapa amalan terbaik untuk mendapatkan perkhidmatan mikro secara terperinci.

Di pasaran hari ini di mana industri menggunakan pelbagai seni bina perisian dan aplikasi, hampir mustahil untuk merasakan bahawa data anda benar-benar selamat. Jadi, semasa membina aplikasi menggunakan , masalah keselamatan menjadi lebih penting, kerana, perkhidmatan individu berkomunikasi antara satu sama lain dan pelanggan. Oleh itu, dalam artikel ini mengenai keselamatan perkhidmatan mikro, saya akan membincangkan pelbagai cara yang boleh anda laksanakan untuk mengamankan perkhidmatan mikro anda dalam urutan berikut.

Apa itu perkhidmatan mikro?

Perkhidmatan mikro, aka seni bina perkhidmatan mikro , adalah gaya seni bina yang menyusun aplikasi sebagai kumpulan perkhidmatan autonomi kecil, dimodelkan di sekitar domain perniagaan. Oleh itu, anda dapat memahami perkhidmatan mikro sebagai perkhidmatan individu kecil yang berkomunikasi antara satu sama lain mengenai logik perniagaan tunggal. Sekiranya anda ingin mengetahui lebih lanjut mengenai perkhidmatan mikro secara mendalam, anda boleh





Apa itu Perkhidmatan Mikro - Keselamatan Mikro - Edureka

Sekarang, selalunya apabila syarikat beralih dari seni bina monolitik ke perkhidmatan mikro, mereka melihat banyak faedah seperti skalabilitas, fleksibiliti dan kitaran pembangunan yang pendek. Tetapi, pada masa yang sama, seni bina ini, juga memperkenalkan beberapa masalah yang kompleks.



Jadi, seterusnya dalam artikel ini mengenai keselamatan perkhidmatan mikro, marilah kita memahami masalah yang dihadapi dalam seni bina perkhidmatan mikro.

Masalah yang dihadapi dalam perkhidmatan mikro

Masalah yang dihadapi dalam perkhidmatan mikro adalah seperti berikut:

Masalah 1:

Pertimbangkan senario, di mana pengguna perlu log masuk untuk mengakses sumber. Sekarang, dalam seni bina perkhidmatan mikro, butiran log masuk pengguna harus disimpan sedemikian rupa sehingga pengguna tidak diminta untuk melakukan pengesahan setiap kali dia berusaha mengakses sumber. Sekarang, ini menimbulkan masalah, kerana perincian pengguna mungkin tidak selamat dan juga dapat diakses oleh 3rdpesta.



Masalah 2:

Apabila pelanggan menghantar permintaan, maka butir-butir klien perlu disahkan dan juga izin yang diberikan kepada klien perlu diperiksa. Oleh itu, semasa anda menggunakan perkhidmatan mikro, mungkin bagi setiap perkhidmatan anda mesti mengesahkan dan memberi kebenaran kepada pelanggan. Sekarang, untuk melakukan ini, pembangun mungkin menggunakan kod yang sama untuk setiap perkhidmatan. Tetapi, tidakkah anda rasa bergantung pada kod tertentu dapat mengurangkan fleksibiliti perkhidmatan mikro? Ia pasti berlaku. Jadi, ini adalah salah satu masalah utama yang sering dihadapi dalam seni bina ini.

Masalah 3:

Masalah seterusnya yang sangat ketara adalah keselamatan setiap perkhidmatan mikro individu. Dalam seni bina ini, semua perkhidmatan mikro berkomunikasi antara satu sama lain secara serentak sebagai tambahan kepada 3rdpermohonan parti. Oleh itu, apabila pelanggan log masuk dari 3rdaplikasi pihak, anda harus memastikan bahawa pelanggan tidak mendapat akses ke data perkhidmatan mikro, dengan cara yang mungkin dia memanfaatkannya.

cara memberi amaran dalam javascript

Baiklah, masalah yang disebutkan di atas bukan satu-satunya masalah yang terdapat dalam seni bina perkhidmatan mikro. Saya katakan, anda boleh menghadapi banyak masalah lain yang berkaitan dengan keselamatan berdasarkan aplikasi dan seni bina yang anda miliki. Oleh itu, mari kita teruskan artikel ini mengenai keselamatan perkhidmatan mikro dan mengetahui cara terbaik untuk mengurangkan cabaran.

kaedah rentetan di java

Amalan terbaik untuk keselamatan perkhidmatan mikro

Amalan terbaik untuk meningkatkan keselamatan dalam perkhidmatan mikro adalah seperti berikut:

Pertahanan dalam Mekanisme Kedalaman

Oleh kerana perkhidmatan mikro diketahui menggunakan mekanisme apa pun pada tahap butiran, anda boleh menggunakan mekanisme Pertahanan dalam Kedalaman untuk menjadikan perkhidmatan lebih selamat. Dalam istilah awam, mekanisme Pertahanan dalam Kedalaman pada dasarnya adalah teknik di mana anda dapat menerapkan lapisan tindakan keselamatan untuk melindungi perkhidmatan sensitif. Oleh itu, sebagai pembangun, anda hanya perlu mengenal pasti perkhidmatan dengan maklumat yang paling sensitif dan kemudian menerapkan sebilangan lapisan keselamatan untuk melindunginya. Dengan cara ini, anda dapat memastikan bahawa mana-mana penyerang yang berpotensi tidak dapat memecahkan keamanan dengan sekali jalan, dan harus maju dan berusaha memecahkan mekanisme pertahanan semua lapisan.

Juga, kerana dalam seni bina perkhidmatan mikro, anda dapat menerapkan lapisan keamanan yang berlainan pada layanan yang berbeda, penyerang, yang berhasil memanfaatkan layanan tertentu, mungkin tidak dapat memecahkan mekanisme pertahanan dari perkhidmatan lain.

Token dan API Gateway

Sering kali, ketika anda membuka aplikasi, anda melihat kotak dialog yang bertuliskan, 'Terima Perjanjian Lesen dan izin untuk kuki'. Apa maksud mesej ini? Sebaik sahaja anda menerimanya, kelayakan pengguna anda akan disimpan dan sesi akan dibuat. Sekarang, apabila anda pergi ke halaman yang sama, halaman akan dimuat dari memori cache dan bukannya pelayan itu sendiri. Sebelum konsep ini muncul dalam gambar, sesi disimpan di bahagian pelayan secara terpusat. Tetapi, ini adalah salah satu penghalang terbesar dalam skala secara mendatar, aplikasinya.

Token

Jadi, penyelesaian untuk masalah ini adalah dengan menggunakan token, untuk merekodkan kelayakan pengguna. Token ini digunakan untuk mengenal pasti pengguna dengan mudah dan disimpan dalam bentuk kuki. Sekarang, setiap kali pelanggan meminta laman web, permintaan tersebut diteruskan ke pelayan, dan kemudian, pelayan menentukan apakah pengguna memiliki akses ke sumber yang diminta atau tidak.

Sekarang, masalah utama adalah token di mana maklumat pengguna disimpan. Jadi, data token perlu dienkripsi untuk mengelakkan eksploitasi dari 3rdsumber parti. Format Web Jason atau yang paling dikenali sebagai JWT adalah standard terbuka yang menentukan format token, menyediakan perpustakaan untuk pelbagai bahasa dan juga mengenkripsi token tersebut.

Gerbang API

API Gateways menambah sebagai elemen tambahan untuk mendapatkan perkhidmatan melalui pengesahan token. The Gateway bertindak sebagai pintu masuk ke semua permintaan pelanggan dan menyembunyikan perkhidmatan mikro dari pelanggan dengan cekap. Oleh itu, pelanggan tidak mempunyai akses langsung ke perkhidmatan mikro dan dengan cara itu, tidak ada pelanggan yang dapat memanfaatkan mana-mana perkhidmatan tersebut.

Pengurusan Pengesanan dan Sesi Teragih

Jejakan Teragih

Semasa menggunakan perkhidmatan mikro, anda harus memantau semua perkhidmatan ini secara berterusan. Tetapi, apabila anda harus memantau sejumlah besar perkhidmatan secara serentak, maka itu menjadi masalah. Untuk mengelakkan cabaran seperti itu, anda boleh menggunakan kaedah yang dikenali sebagai Distributed Tracing. Jejak yang diedarkan adalah kaedah untuk menentukan kegagalan dan mengenal pasti sebab di sebalik itu. Bukan hanya ini, tetapi anda juga dapat mengenal pasti tempat di mana kegagalan berlaku. Jadi, sangat mudah dijejaki, perkhidmatan mikro mana yang menghadapi masalah keselamatan.

Pengurusan Sesi

Pengurusan Sesi adalah parameter penting yang harus anda pertimbangkan semasa melindungi perkhidmatan mikro. Sekarang, sesi dibuat setiap kali pengguna masuk ke aplikasi. Jadi, anda boleh mengendalikan data sesi dengan cara berikut:

  1. Anda boleh menyimpan data sesi dari satu pengguna di pelayan tertentu. Tetapi, sistem seperti ini, bergantung sepenuhnya pada pengimbangan beban antara perkhidmatan dan hanya memenuhi skala mendatar.
  2. Data sesi yang lengkap dapat disimpan dalam satu kejadian. Kemudian data dapat diselaraskan melalui rangkaian. Satu-satunya masalah ialah, dalam kaedah ini, sumber rangkaian habis.
  3. Anda dapat memastikan bahawa data pengguna dapat diperoleh dari penyimpanan sesi bersama, untuk memastikan, semua perkhidmatan dapat membaca data sesi yang sama. Tetapi, kerana data diambil dari storan bersama, anda perlu memastikan bahawa anda mempunyai beberapa mekanisme keselamatan, untuk mengakses data dengan cara yang selamat.

Sesi pertama dan SSL Bersama

Idea sesi pertama sangat mudah. Pengguna perlu log masuk ke aplikasi sekali, dan kemudian mereka dapat mengakses semua perkhidmatan dalam aplikasi. Tetapi, setiap pengguna pada mulanya harus berkomunikasi dengan perkhidmatan pengesahan. Baiklah, ini pasti menghasilkan banyak lalu lintas antara semua perkhidmatan dan mungkin membebankan para pembangun untuk mengetahui kegagalan dalam senario seperti itu.

Datang ke Mutual SSL, aplikasi sering menghadapi lalu lintas dari pengguna, 3rdpihak dan juga perkhidmatan mikro yang berkomunikasi antara satu sama lain. Tetapi, kerana perkhidmatan ini diakses oleh pihak 3rdpihak, selalu ada risiko serangan. Sekarang, penyelesaian untuk senario tersebut adalah SSL bersama atau pengesahan bersama antara perkhidmatan mikro. Dengan ini, data yang dipindahkan antara perkhidmatan akan dienkripsi. Satu-satunya masalah dengan kaedah ini ialah apabila bilangan perkhidmatan mikro meningkat, oleh kerana setiap perkhidmatan mempunyai sijil TLS sendiri, sangat sukar bagi pembangun untuk mengemas kini sijil.

3rdakses aplikasi parti

Kita semua mengakses aplikasi yang merupakan 3rdpermohonan parti. Yang 3rdaplikasi pihak menggunakan token API yang dihasilkan oleh pengguna dalam aplikasi untuk mengakses sumber yang diperlukan. Oleh itu, aplikasi pihak ketiga dapat mengakses data pengguna tertentu dan bukan bukti kelayakan pengguna lain. Ini adalah berkenaan dengan satu pengguna. Tetapi bagaimana jika aplikasi perlu mengakses data dari pelbagai pengguna? Menurut anda bagaimana permintaan seperti itu dapat diterima?

Penggunaan OAuth

Penyelesaiannya adalah dengan menggunakan OAuth. Apabila anda menggunakan OAuth, aplikasi meminta pengguna untuk membenarkan 3rdaplikasi pihak, untuk menggunakan maklumat yang diperlukan dan menghasilkan token untuknya. Umumnya, kod kebenaran digunakan untuk meminta token untuk memastikan bahawa URL panggilan balik pengguna tidak dicuri.

mengapa kita memerlukan siri dalam java

Oleh itu, sambil menyebut token akses, pelanggan berkomunikasi dengan pelayan kebenaran, dan pelayan ini memberi kebenaran kepada klien untuk mengelakkan orang lain memalsukan identiti pelanggan. Oleh itu, apabila anda menggunakan Perkhidmatan Mikro dengan OAuth, perkhidmatan bertindak sebagai pelanggan dalam seni bina OAuth, untuk mempermudah masalah keselamatan.

Oleh itu, saya tidak akan mengatakan bahawa ini adalah satu-satunya cara untuk mendapatkan perkhidmatan anda. Anda boleh mendapatkan perkhidmatan mikro dengan banyak cara berdasarkan seni bina aplikasi. Oleh itu, jika anda adalah seseorang, yang bercita-cita untuk membina aplikasi berdasarkan perkhidmatan mikro, maka ingatlah bahawa keselamatan perkhidmatan adalah salah satu faktor penting yang perlu anda berhati-hati. Oleh itu, kami mengakhiri artikel ini mengenai keselamatan perkhidmatan mikro. Saya harap anda menganggap artikel ini bermaklumat.

Sekiranya anda ingin mempelajari Perkhidmatan Mikro dan membina aplikasi anda sendiri, maka periksa kami yang dilengkapi dengan latihan langsung yang dipimpin oleh instruktur dan pengalaman projek kehidupan sebenar. Latihan ini akan membantu anda memahami Perkhidmatan Mikro secara mendalam dan membantu anda mencapai penguasaan terhadap subjek ini.

Ada soalan untuk kami? Sila sebutkan di bahagian komen ” Keselamatan Perkhidmatan Mikro 'Dan saya akan menghubungi anda.