0871-63333123
當前位置:首頁 > 動態 >技術文章

authz conf 的其他注意點

在網站建設中對于authz conf的其他注意點:

1.父目錄的r 權限,對子目錄w 權限的影響。

方便那些想在一個代碼庫存放多個相互獨立的項目的管理員,來分配權限了。比如說給一公司建立一個大的代碼庫用于存放所有員工日志,叫做diary,而arm事業部只是其中一個部門,則可以這樣做:

[diary:/]

@g_chief_manager= rw

[diary:/arm]

@g_arm_manager= rw

@g_arm =r

這樣,對于所有arm事業部的人員來說,就可以將svn://192.168.0.1/diary/arm 這個URL當作根目錄來進行日常操作,而完全不管它其實只是一個子目錄,并且當有少數好奇心比較強的人想試著 checkout 一下 svn://192.168.0.1/diary 的時候,馬上就會得到一個警告“Accessdenied”。

2.默認權限

如果說我對某個目錄不設置任何權限,會怎樣?馬上動手做個試驗,將:

[diary:/]

@g_chief_manager= rw

改成:

[diary:/]

#@g_chief_manager = rw

這樣就相當于什么都沒有設置。此時是禁止任何訪問。也就是說,如果你想要讓某人訪問某目錄,你一定要顯式指明這一點。

3.只讀權限帶來的一個小副作用

若設置了:

[arm:/diary]

* = r

Subversion 會認為,任何人都不允許改動diary 目錄,包括刪除、改名,和新增。

也就是說,如果你在項目初期創建目錄時候,一不小心寫錯目錄名稱,比如因拼寫錯誤寫成 dairy,以后除非你改動 authz.conf 里面的這行設置,否則無法利用 svn mv 命令將錯誤的目錄更正

4.   anon-access 屬性對目錄權限的影響

你想將你的代碼庫開放給所有人訪問,于是你就開放了匿名訪問權限,在 svnserve.conf 文件中添加一行: anon-access=read 。可是對于部分目錄,你又不希望別人看到,于是針對那些特別目錄,你在 authz.conf 里面進行配置,添加了授權訪問的人,并添加了 * = 標記。你認為一切OK了,可是你缺發現,那個特別目錄卻無法訪問了,總是提示 Not authorized to open root of edit operation 或者 未授權打開根進行編輯操作 。你再三檢查你配置的用戶名與密碼,確認一切正確,還是無法解決問題。

原來,Subversion 有個小 bug ,當 anon-access=read 并且某個目錄有被設置上 * = 標記,則會出現上述問題。這個 bug 在當前最新版本上(v1.4)還存在,也許在下一版本內可以被改正吧。

解決的辦法是,在 svnserve.conf 中,將 anon-access 設置成 none


authz conf 的其他注意點_昆明網站建設

 

authz conf 的其他注意點_昆明網站建設