【認證與授權】Open Policy Agent 授權策略

更新於 發佈於 閱讀時間約 3 分鐘

這次來介紹軟體世界中很常遇到的授權策略,而有沒有比較好的一種策略方式,讓開發者可以遵循一套標準呢? 答案是有的,就來介紹一下新寵兒,Open Polocy Agent吧!

首先我們先搞懂什麼是認證? 什麼又是授權? 還懵懵懂懂的朋友們可以請先參考這一篇「Authentication、Authorization,傻傻分不清楚?」。

認證與授權

● 認證(Authentication): 身分檢查, 識別人或物的檢查, 例如: 通行證的檢查、登入後的人是誰。

● 授權(Authorization): 被識別過後的人對什麼樣的資源具有什麼操作權限。

Open Policy Agent專注在授權這一塊。

Open Policy Agent簡介

簡稱OPA, 是一套開源專案, 提倡策略即代碼, 把決策這一個步驟從複雜的業務邏輯中抽離出來,以代理人的角色自居, 將這些授權檢查規則轉換為OPA的檢查機制, 當需要進行授權檢查時, 就可以委託給OPA來幫我們進行檢查。

主要目標是提供標準的授權策略語言(rego), 讓我們開發不同產品時,都可以遵照這樣的規範進行授權的策略制定。

目前 OPA 也已經受許多知名企業(如 T-Mobile、Netflix、Pinterest等)所採用。

以下是幾個OPA常被應用的業務場景:

● 授權: 判斷用戶能夠對哪些資源進行什麼樣的操作。

● 防火牆規則, 比如iptables。

● 可以規範哪個Service可以開放的Port、Protocol、對應的Network...等, 請參考官方範例

● 定義Proxy的策略。

OPA邏輯結構

raw-image

● Query: 需進行評估的查詢來源, 如: 登入的使用者。

● Data: OPA評估時需要的資料, 例如: 用戶列表、角色列表、權限列表。

● Policy: 策略的業務邏輯,它根據Query與Data來產生策略的評估結果, 使用Rego語法來描述。

● Decision: 評估後的結果, 除了單純的true/false之外, 也能額外回傳資訊。

這次主要帶點概念過來,之後會持續分享實作的部分,有興趣的朋友不妨收藏與支持一下唷!

留言
avatar-img
留言分享你的想法!
avatar-img
阿Han的沙龍
139會員
302內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
阿Han的沙龍的其他內容
2023/06/30
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
Thumbnail
2023/06/30
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
Thumbnail
2023/06/09
上一篇我們介紹了「【認證與授權】Open Policy Agent 授權策略」, 相信都已經初步了解了OPA(Open Policy Agent)主要在做什麼, OPA簡單來說就是一個授權的政策管理規範, 有點像我們的法律系統, 提供開發者在上面制定法條, 以約束授權對象可以進行什麼樣的操作, 讓各
Thumbnail
2023/06/09
上一篇我們介紹了「【認證與授權】Open Policy Agent 授權策略」, 相信都已經初步了解了OPA(Open Policy Agent)主要在做什麼, OPA簡單來說就是一個授權的政策管理規範, 有點像我們的法律系統, 提供開發者在上面制定法條, 以約束授權對象可以進行什麼樣的操作, 讓各
Thumbnail
2023/06/06
上一篇我們有介紹什麼是OPA以及一些基本概念「【資訊軟體知識】Open Policy Agent 授權策略」,接下來我們就來介紹如何架設並以API的方式進行授權檢查。 這種方式的好處是可以跨語言, 不侷限於Go, 透過標準RESTFUL API的方式來與OPA Server相互溝通。 使用Docke
Thumbnail
2023/06/06
上一篇我們有介紹什麼是OPA以及一些基本概念「【資訊軟體知識】Open Policy Agent 授權策略」,接下來我們就來介紹如何架設並以API的方式進行授權檢查。 這種方式的好處是可以跨語言, 不侷限於Go, 透過標準RESTFUL API的方式來與OPA Server相互溝通。 使用Docke
Thumbnail
看更多
你可能也想看
Thumbnail
透過蝦皮分潤計畫,輕鬆賺取零用金!本文分享5-6月實測心得,包含數據流程、實際收入、平臺優點及注意事項,並推薦高分潤商品,教你如何運用空閒時間創造被動收入。
Thumbnail
透過蝦皮分潤計畫,輕鬆賺取零用金!本文分享5-6月實測心得,包含數據流程、實際收入、平臺優點及注意事項,並推薦高分潤商品,教你如何運用空閒時間創造被動收入。
Thumbnail
單身的人有些會養寵物,而我養植物。畢竟寵物離世會傷心,植物沒養好再接再厲就好了~(笑)
Thumbnail
單身的人有些會養寵物,而我養植物。畢竟寵物離世會傷心,植物沒養好再接再厲就好了~(笑)
Thumbnail
不知你有沒有過這種經驗?衛生紙只剩最後一包、洗衣精倒不出來,或電池突然沒電。這次一次補貨,從電池、衛生紙到洗衣精,還順便分享使用心得。更棒的是,搭配蝦皮分潤計畫,愛用品不僅自己用得安心,分享給朋友還能賺回饋。立即使用推薦碼 X5Q344E,輕鬆上手,隨時隨地賺取分潤!
Thumbnail
不知你有沒有過這種經驗?衛生紙只剩最後一包、洗衣精倒不出來,或電池突然沒電。這次一次補貨,從電池、衛生紙到洗衣精,還順便分享使用心得。更棒的是,搭配蝦皮分潤計畫,愛用品不僅自己用得安心,分享給朋友還能賺回饋。立即使用推薦碼 X5Q344E,輕鬆上手,隨時隨地賺取分潤!
Thumbnail
身為一個典型的社畜,上班時間被會議、進度、KPI 塞得滿滿,下班後只想要找一個能夠安靜喘口氣的小角落。對我來說,畫畫就是那個屬於自己的小樹洞。無論是胡亂塗鴉,還是慢慢描繪喜歡的插畫人物,那個專注在筆觸和色彩的過程,就像在幫心靈按摩一樣,讓緊繃的神經慢慢鬆開。
Thumbnail
身為一個典型的社畜,上班時間被會議、進度、KPI 塞得滿滿,下班後只想要找一個能夠安靜喘口氣的小角落。對我來說,畫畫就是那個屬於自己的小樹洞。無論是胡亂塗鴉,還是慢慢描繪喜歡的插畫人物,那個專注在筆觸和色彩的過程,就像在幫心靈按摩一樣,讓緊繃的神經慢慢鬆開。
Thumbnail
探索無密碼驗證機制 OIDC 及其在 API 管理平台中的應用。本文分析 OIDC 如何提升用戶體驗與安全性,並深入探討 API管理平台如何幫助企業簡化 API 管理,提高效率,並強化資安。了解這些平台如何解決 API 混亂問題,提供全面的管理解決方案。
Thumbnail
探索無密碼驗證機制 OIDC 及其在 API 管理平台中的應用。本文分析 OIDC 如何提升用戶體驗與安全性,並深入探討 API管理平台如何幫助企業簡化 API 管理,提高效率,並強化資安。了解這些平台如何解決 API 混亂問題,提供全面的管理解決方案。
Thumbnail
延續先前的筆記,「網路請求」是瀏覽器和伺服器的溝通橋梁,目的是為了取得資料庫內的資源,除了 CORS 這種瀏覽器本身的阻擋機制,伺服器也會需要進行「身分驗證或授權」這道阻擋,並不是使用者有帶上 header 告知身分,就一定可以把資料 response 回來的。
Thumbnail
延續先前的筆記,「網路請求」是瀏覽器和伺服器的溝通橋梁,目的是為了取得資料庫內的資源,除了 CORS 這種瀏覽器本身的阻擋機制,伺服器也會需要進行「身分驗證或授權」這道阻擋,並不是使用者有帶上 header 告知身分,就一定可以把資料 response 回來的。
Thumbnail
這次來介紹軟體世界中很常遇到的授權策略,而有沒有比較好的一種策略方式,讓開發者可以遵循一套標準呢? 答案是有的,就來介紹一下新寵兒,Open Polocy Agent吧! 首先我們先搞懂什麼是認證? 什麼又是授權? 還懵懵懂懂的朋友們可以請先參考這一篇「Authentication、Authoriz
Thumbnail
這次來介紹軟體世界中很常遇到的授權策略,而有沒有比較好的一種策略方式,讓開發者可以遵循一套標準呢? 答案是有的,就來介紹一下新寵兒,Open Polocy Agent吧! 首先我們先搞懂什麼是認證? 什麼又是授權? 還懵懵懂懂的朋友們可以請先參考這一篇「Authentication、Authoriz
Thumbnail
前一篇的「Authentication、Authorization,傻傻分不清楚?」主要在介紹認證與授權的差異之處,而本章節著重於授權這部分,也使用了經典的RBAC模型進行說明。 RBAC模型(Role-Based Access Control:基於角色的訪問控制), 認為可以抽象的表示: Who是
Thumbnail
前一篇的「Authentication、Authorization,傻傻分不清楚?」主要在介紹認證與授權的差異之處,而本章節著重於授權這部分,也使用了經典的RBAC模型進行說明。 RBAC模型(Role-Based Access Control:基於角色的訪問控制), 認為可以抽象的表示: Who是
Thumbnail
認證(authentication)跟授權(authorization)這兩個名詞常常被混淆,但本質上是完全不同的兩個概念,在數位化的時代下,為了確保每位使用者的安全性,每個系統幾乎都具備認證(authentication)與授權(authorization)這兩大功能,而這些概念也常常出現在我們生
Thumbnail
認證(authentication)跟授權(authorization)這兩個名詞常常被混淆,但本質上是完全不同的兩個概念,在數位化的時代下,為了確保每位使用者的安全性,每個系統幾乎都具備認證(authentication)與授權(authorization)這兩大功能,而這些概念也常常出現在我們生
Thumbnail
新冠疫情爆發後,為了防疫,部分公司開始實施遠端工作,員工可以透過更多設備、網路和程式連接工作,也促使公司更新資訊軟體,採取更靈活的資安軟體。不只一般公司,與資產相關、重視資安的金融業,也在科技日新月異的發展下推動無密碼與多因子認證登入。
Thumbnail
新冠疫情爆發後,為了防疫,部分公司開始實施遠端工作,員工可以透過更多設備、網路和程式連接工作,也促使公司更新資訊軟體,採取更靈活的資安軟體。不只一般公司,與資產相關、重視資安的金融業,也在科技日新月異的發展下推動無密碼與多因子認證登入。
Thumbnail
此文章敘述了為了未來電腦安全,而設計的系統概念
Thumbnail
此文章敘述了為了未來電腦安全,而設計的系統概念
Thumbnail
文章最後將會提供一套CSP安全檢查工具,保護自身,避免踏入不安全地帶! 🔔還沒成為Potato會員的朋友點這裡加入哦,撰寫文章還能挖礦打造被動收入 🔔 為什麼制定安全政策這麼重要呢? 可以制定哪些規則呢? 這邊僅著重於概念的描述,因此列出幾個常見的來源白名單配置選項,至於完整選項請參考這裡。
Thumbnail
文章最後將會提供一套CSP安全檢查工具,保護自身,避免踏入不安全地帶! 🔔還沒成為Potato會員的朋友點這裡加入哦,撰寫文章還能挖礦打造被動收入 🔔 為什麼制定安全政策這麼重要呢? 可以制定哪些規則呢? 這邊僅著重於概念的描述,因此列出幾個常見的來源白名單配置選項,至於完整選項請參考這裡。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News