OPA: Enjin dasar tujuan umum untuk cloud-native

Semasa organisasi anda merangkul awan, anda mungkin mendapati bahawa dinamisme dan skala timbunan asli awan memerlukan lanskap keselamatan dan pematuhan yang jauh lebih rumit. Sebagai contoh, dengan platform orkestrasi kontena seperti Kubernetes mendapat daya tarikan, pasukan pemaju dan pemenang mempunyai tanggungjawab baru terhadap bidang dasar seperti kawalan kemasukan dan juga kawasan yang lebih tradisional seperti komputasi, penyimpanan dan rangkaian. Sementara itu, setiap aplikasi, perkhidmatan mikro atau jaringan perkhidmatan memerlukan sekumpulan kebijakan kebenarannya sendiri, yang mana pemaju terus berusaha.

Atas sebab-sebab inilah perburuan dijalankan untuk kaedah yang lebih mudah dan lebih cekap masa untuk membuat, menguatkuasakan dan mengurus dasar di cloud. Masukkan Ejen Polisi Terbuka (OPA). Dibuat empat tahun lalu sebagai enjin dasar sumber terbuka, domain-agnostik, OPA menjadi standard de facto untuk dasar asli awan. Sebenarnya, OPA telah digunakan dalam pengeluaran oleh syarikat seperti Netflix, Pinterest, dan Goldman Sachs, untuk kes penggunaan seperti kawalan kemasukan Kubernetes dan kebenaran API perkhidmatan mikro. OPA juga menggunakan banyak alat asli awan yang sudah anda kenal dan sukai, termasuk suite Atlassian dan Chef Automate.

[Juga di: Tempat kejuruteraan kebolehpercayaan laman web bertemu dengan para pengguna]

OPA memberikan bahasa gabungan kepada organisasi asli cloud - sehingga keputusan kebenaran dapat dinyatakan dengan cara yang sama, di seluruh aplikasi, API, infrastruktur, dan lain-lain, tanpa perlu membuat kod keras mengenai setiap bahasa dan alat masing-masing . Di samping itu, kerana OPA dibuat khusus untuk kebenaran, ia menawarkan koleksi pengoptimuman prestasi yang semakin meningkat sehingga pengarang polisi dapat menghabiskan sebahagian besar waktunya untuk menulis kebijakan yang betul dan dapat dipertahankan dan menyerahkan prestasi kepada OPA.

Dasar kebenaran OPA mempunyai banyak, banyak kes penggunaan di seluruh timbunan - dari meletakkan pagar pengawal di sekitar orkestrasi kontena, hingga mengawal akses SSH atau memberikan kebenaran jaringan perkhidmatan berdasarkan konteks. Walau bagaimanapun, terdapat tiga kes penggunaan popular yang menyediakan pad pelancaran yang baik untuk banyak pengguna OPA: kebenaran aplikasi, kawalan kemasukan Kubernetes, dan perkhidmatan mikro. 

OPA untuk kebenaran permohonan

Dasar keizinan ada di mana-mana, kerana hampir setiap aplikasi memerlukannya. Walau bagaimanapun, pemaju biasanya "menggulung kod mereka sendiri", yang tidak hanya memakan waktu, tetapi menghasilkan selimut tambal sulam alat dan kebijakan yang sukar dijaga. Walaupun keizinan sangat penting untuk setiap aplikasi, masa yang dihabiskan untuk membuat dasar bermakna lebih sedikit masa yang berfokus pada ciri yang dihadapi pengguna.

OPA menggunakan bahasa dasar deklarasi yang dibuat khas yang menjadikan pembangunan dasar kebenaran mudah. Sebagai contoh, anda boleh membuat dan menguatkuasakan dasar dengan mudah, "Anda tidak dapat membaca PII jika anda seorang kontraktor," atau, "Jane dapat mengakses akaun ini." Tetapi itu hanya permulaan. Oleh kerana OPA peka konteks, anda juga dapat membangun kebijakan yang mempertimbangkan apa saja di planet ini - seperti, "Perdagangan saham yang diminta pada jam terakhir hari perdagangan, yang akan menghasilkan transaksi lebih dari satu juta dolar, hanya dapat dilaksanakan pada perkhidmatan khusus di ruang nama yang ditentukan. "

Sudah tentu, banyak organisasi mempunyai kebenaran yang telah dibuat. Walau bagaimanapun, jika anda ingin menguraikan aplikasi anda dan menskalakan perkhidmatan mikro di awan sambil mengekalkan kecekapan untuk pembangun, akan ada keperluan untuk sistem kebenaran yang diedarkan. Bagi banyak orang, OPA adalah potongan teka-teki yang hilang.

OPA untuk kawalan kemasukan Kubernetes

Ramai pengguna juga menggunakan OPA untuk membuat pagar pembatas untuk Kubernetes. Kubernetes sendiri telah menjadi arus utama dan penting dalam misi, dan organisasi mencari cara untuk menentukan dan melaksanakan pagar pengawal keselamatan untuk membantu mengurangkan risiko keselamatan dan kepatuhan. Dengan menggunakan OPA, pentadbir dapat menetapkan kebijakan yang jelas sehingga pemaju dapat mempercepat pengeluaran saluran paip dan dengan cepat membawa perkhidmatan baru ke pasar, tanpa perlu bimbang tentang risiko operasi, keselamatan, atau kepatuhan.

OPA dapat digunakan untuk membuat kebijakan yang menolak masuk yang menggunakan nama host yang sama, atau yang mengharuskan semua gambar kontena berasal dari registri yang dipercayai, atau untuk memastikan bahawa semua penyimpanan ditandai selalu dengan bit enkripsi, atau setiap aplikasi terdedah ke internet gunakan nama domain yang diluluskan - untuk memetik beberapa contoh sahaja.

Oleh kerana OPA berintegrasi secara langsung dengan pelayan API Kubernetes, ia dapat menolak sumber yang tidak dibenarkan oleh dasar, merentasi komputasi, rangkaian, penyimpanan dan sebagainya. Terutama bermanfaat bagi pembangun, anda boleh mendedahkan dasar ini lebih awal dalam kitaran pembangunan, seperti dalam saluran paip CI / CD, sehingga pembangun dapat mendapatkan maklum balas lebih awal dan menyelesaikan masalah sebelum waktu operasi. Lebih-lebih lagi, anda bahkan dapat mengesahkan polisi anda di luar jalur, memastikan bahawa mereka mencapai kesan yang diinginkan dan tidak secara tidak sengaja menimbulkan masalah.

OPA untuk perkhidmatan mikro

Akhirnya, OPA telah menjadi sangat popular kerana membantu organisasi mengawal perkhidmatan mikro dan struktur perkhidmatan mereka. Dengan OPA, anda boleh membuat dan menguatkuasakan dasar kebenaran secara langsung untuk perkhidmatan mikro (biasanya sebagai kereta sorong), membangun dasar perkhidmatan ke perkhidmatan dalam jaringan perkhidmatan, atau, dari sudut keselamatan, membuat dasar yang membatasi pergerakan lateral dalam jaringan perkhidmatan seni bina.

Membangun dasar terpadu untuk seni bina asli awan

Secara umum, tujuan keseluruhan ketika menggunakan OPA adalah untuk membuat pendekatan terpadu untuk membuat kebijakan di seluruh tumpukan asli awan anda - jadi anda tidak perlu terus mengurus kebijakan di puluhan lokasi, menggunakan bahasa dan pendekatan yang berbeda, melalui iklan- gabungan pengetahuan suku, wiki, dan PDF atau sekumpulan alat yang tidak sesuai.

[Juga pada: 7 amalan terbaik untuk pasukan tangkas jarak jauh]

Selain mempermudah pengembangan dan mempercepat pengiriman, ini juga berita besar untuk keselamatan, kerana OPA mengurangkan jumlah alat yang perlu anda periksa apakah, misalnya, anda mengesyaki akses yang tidak sah telah dicuba. Begitu juga, dari perspektif operasi dan kepatuhan, OPA menjadikannya lebih mudah untuk menarik dan menganalisis maklumat dalam persekitaran yang heterogen - membantu anda mengenal pasti masalah dengan cepat dan menyelesaikannya dengan lebih cepat.

Pembangun sedang mencari kaedah yang lebih mudah dan cekap untuk membuat dan mengurus kawalan berasaskan dasar untuk persekitaran mereka yang asli. Bagi banyak orang, penyelesaiannya adalah OPA. Sekiranya anda merasa menyentuh dasar kebenaran di beberapa tempat, dalam pelbagai bahasa, atau di beberapa pasukan, OPA dapat membantu menghilangkan kelebihan dan penghantaran cepat untuk anda, seperti yang berlaku untuk mereka.

Tim Hinrichs adalah pengasas bersama projek Open Policy Agent dan CTO Styra. Sebelum itu, dia mengasaskan projek OpenStack Congress dan merupakan jurutera perisian di VMware. Tim menghabiskan 18 tahun terakhir untuk mengembangkan bahasa deklaratif untuk domain yang berbeza seperti pengkomputeran awan, rangkaian yang ditentukan perisian, pengurusan konfigurasi, keselamatan web, dan kawalan akses. Dia mendapat Ph.D. dalam Sains Komputer dari Universiti Stanford pada tahun 2008.

-

Forum Teknologi Baru menyediakan tempat untuk meneroka dan membincangkan teknologi perusahaan yang baru muncul dalam kedalaman dan luas yang belum pernah terjadi sebelumnya. Pemilihannya bersifat subjektif, berdasarkan pilihan teknologi yang kami percayai penting dan menarik minat pembaca. tidak menerima jaminan pemasaran untuk penerbitan dan berhak untuk mengedit semua kandungan yang disumbangkan. Hantarkan semua pertanyaan ke [email protected]