目錄
解决冲突
首頁 後端開發 php教程 phpGACL汉语言手册(七)

phpGACL汉语言手册(七)

Jun 13, 2016 am 11:01 AM
acl

phpGACL中文手册(七)

解决冲突

如果我们把Chewie加入到工程师组中会出现什么情况呢? 缺省:全部拒绝
千年隼号乘客

船员 [允许:全部]
│├─Han
│├─Chewie [
拒绝:发动机室]
│└─Lando

├─
乘客 [允许:休息室 ]
├─
绝地战士 [允许:驾驶室]
││├─
Obi-wan
││└─
Luke [
允许:武器室]
├─R2D2 [
允许:发动机室]
└─C3PO

工程师 [允许:发动机室,武器室]
├─Han
├─R2D2
├─Hontook
└─Chewie

这就使Chewie到发动机室的权限产生了歧义,因为从根沿树遍历到Chewie出现两条路径。如果飞船的计算机沿其中一条路径(船员路径),将得到"拒绝进入发动机室"的结论。而沿另一条路径(工程师路径)则会得到"允许进入发动机室"的结论,那么他到底有没权进入发动机室呢?

当你添加或编辑分属多组的ARO对象使之对某个ACO对象的权限发生歧义时,phpGACL系统将警告你。但它会最近优先以便解决冲突。

如果我们现在问phpGACL"Chewie有权进入发动机室吗?"那么返回的结果是最近ACL被修改的内容(这是phpGACL的策略)。在上面这个例子中,返回的结果是"允许",因为被工程师组指定的"允许:发动机室,武器室"权限的时间要比被船员组指定的"拒绝:发动机室"权限时间要近。

当有歧义的权限设定在ACL列表中存在时,该ACL列表被称为不一致。不一致的ACL列表是非常危险的,如果你允许你的ACL列表保持在这种状况下的话,你可能会在不经意之下把权限赋给不恰当的人。当phpGACL警告你ACL列表不一致时,最好还是去解决冲突以尽可能恢复其一致性。

为解决上例的冲突,我们可以作以下任何一步:

  • 删除在船员组中Chewie的"拒绝:发动机室"指令
  • 添加在工程师组中Chewie的"拒绝:发动机室"指令
  • 在工程师组中删除Chewie,因为Han无论如何不认为他作工程师是一件值得考虑的事

Han选了第三种方案,将Chewie从工程师组中删除

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Nginx反向代理中基於HTTP動詞和路徑的ACL配置 Nginx反向代理中基於HTTP動詞和路徑的ACL配置 Jun 10, 2023 am 09:22 AM

Nginx是一款高效能的Web伺服器和反向代理伺服器,其強大的設定能力使得Nginx能夠用於各種不同的場景。其中,基於HTTP動詞和路徑的ACL配置是Nginx反向代理中常用的方法,本文將介紹它的原理和實作方法。一、ACL的概念ACL(AccessControlList)即存取控制列表,是一種基於規則的存取控制技術。透過定義一些規則,可以對不同的訪問

如何在Zend框架中使用ACL(Access Control List)進行權限控制 如何在Zend框架中使用ACL(Access Control List)進行權限控制 Jul 29, 2023 am 09:24 AM

如何在Zend框架中使用ACL(AccessControlList)進行權限控制導言:在一個Web應用程式中,權限控制是至關重要的功能。它可以確保使用者只能存取其有權存取的頁面和功能,並防止未經授權的存取。 Zend框架提供了一種方便的方法來實現權限控制,即使用ACL(AccessControlList)元件。本文將介紹如何在Zend框架中使用ACL

如何在CakePHP中使用ACL角色? 如何在CakePHP中使用ACL角色? Jun 04, 2023 pm 06:21 PM

CakePHP是一款受歡迎的PHP開發框架,它提供了一個全面的權限控制機制,也就是AccessControlList(ACL)。使用ACL可以幫助你控制應用程式中每個使用者的存取權限。在本文中,我們將介紹如何在CakePHP中使用ACL角色。配置ACL元件首先,我們需要設定CakePHP中的ACL元件。在app_controller.php中加入以下程式碼:

應用Linux ACL:個人化檔案權限管理 應用Linux ACL:個人化檔案權限管理 Feb 25, 2024 pm 01:42 PM

《LinuxACL應用程式實例:客製化檔案存取權限》在Linux系統中,ACL(AccessControlList)是一種更靈活、更精細的檔案存取控制方式,可讓管理員為每個檔案設定不同的權限。透過ACL,我們可以實現對文件的更細緻的管理,實現客製化的文件存取權限。本文將介紹如何在Linux系統中使用ACL,以及給予一些具體的應用實例和程式碼範例。 1.什麼

深入了解Linux ACL:掌握存取控制清單的使用 深入了解Linux ACL:掌握存取控制清單的使用 Feb 24, 2024 pm 08:57 PM

LinuxACL詳解:掌握存取控制清單的功能,需要具體程式碼範例在Linux系統中,ACL(AccessControlList)是用於管理檔案和目錄存取權限的重要機制。傳統的Linux權限系統只有簡單的rwx權限,無法細緻地控制不同使用者對檔案和目錄的存取權限。而ACL則提供了更靈活精細的權限控制方式,使得管理者可以針對不同使用者和群組設定不同的權限。

Nginx反向代理中基於請求方法和請求頭的ACL配置 Nginx反向代理中基於請求方法和請求頭的ACL配置 Jun 11, 2023 pm 08:20 PM

Nginx是一款輕量級且高效的Web伺服器,在建立現代Web應用程式中使用越來越多。其反向代理功能使得Nginx可用作負載平衡、快取、開源API網關等用途。本文將重點放在基於請求方法和請求頭的ACL(存取控制清單)配置。 ACL是用來控制存取的機制,在Nginx中使用比較廣泛。透過ACL,Nginx可以對請求進行過濾和驗證,然後將它們分發到目標伺服器上。

網友譴責ACL主席公開抨擊arXiv,建議考慮其他頂級會議 網友譴責ACL主席公開抨擊arXiv,建議考慮其他頂級會議 Dec 19, 2023 am 08:23 AM

華盛頓大學教授、ACL2023大會副主席EmilyM.Bender前幾天的一番言論引起了巨大的風波arXiv壞了研究風氣,那我們每天都在刷的是什麼?哈佛大學教授BoazBarak表示,arXiv在推動科學進步和擴大科學參與方面所做的工作比所有匿名幹預措施都要多得多,任何阻礙arXiv的政策不僅是愚蠢的,而且還會對科學進步和包容性產生反作用深度學習巨頭YannLeCun對他的觀點給予了支持關於EmilyBender觀點的討論,實際上並不是完全沒有道理。畢竟arXiv是一個幾乎不審稿的平台:如果向學

如何使用CakePHP中的ACL(存取控制清單)? 如何使用CakePHP中的ACL(存取控制清單)? Jun 04, 2023 am 09:10 AM

CakePHP是一個快速且靈活的PHPWeb開發框架,它具有許多實用的功能,其中之一是存取控制清單(ACL)。 ACL允許您定義哪些使用者可以存取您的應用程式中的哪些部分。但是,如果您是新手開發人員或不熟悉存取控制列表,可能會感到有些困惑。在本文中,我將向您介紹如何使用CakePHP中的ACL。什麼是存取控制清單?存取控制清單是一種安全機制,它限制了哪些使用者可

See all articles