2013-05-16 45 views
-2

考慮創建一個獨立的Java程序來創建具有訪問權限的用戶/組。 所以我的問題是,是否有任何API可用於在CQ中設置用戶權限?CQ中的用戶權限API

回答

0

有一個JCR access control management API可以用來讀取和分配訪問控制策略。 CQ內部還有一個用於創建用戶/組的可用的jackrabbit UserManager

JackRabbit wiki的User Management頁面上有一些代碼示例。

本質上,您需要將JcrSession強制轉換爲JackRabbitSession並在其上調用getUserManager()。

JackrabbitSession js = (JackrabbitSession) session; 
final UserManager userManager = session.getUserManager(); 
final User user = userManager.createUser(userName, userName); 
session.save(); 

有一對夫婦的獲得會議的方式,一種方式是讓從請求和adaptTo一個從那裏會話資源解析器。

Session session = slingHttpServletRequest.getResourceResolver().adaptTo(Session.class); 

最後,還有一個Sling HTTP api for managing users & groups

+2

我在將jcr會話強制轉換爲JackrabbitSession時遇到類轉換異常。有沒有其他的方法來獲取UserManager對象? –