有沒有辦法爲AEM中的資產提供安全和授權?有沒有辦法爲AEM中的資產提供安全和授權
我們將資產放置到頁面,並且所有資產都在登錄後由最終用戶查看。我們希望限制頁面上的資源只應顯示給特定用戶(即使他們可以登錄)。如果用戶擁有資產的URL並且登錄後可以查看該資產。
要求是限制資產只有特定的用戶,即使他們可以登錄到該頁面。
欣賞你的時間。
有沒有辦法爲AEM中的資產提供安全和授權?有沒有辦法爲AEM中的資產提供安全和授權
我們將資產放置到頁面,並且所有資產都在登錄後由最終用戶查看。我們希望限制頁面上的資源只應顯示給特定用戶(即使他們可以登錄)。如果用戶擁有資產的URL並且登錄後可以查看該資產。
要求是限制資產只有特定的用戶,即使他們可以登錄到該頁面。
欣賞你的時間。
此功能在AEM中支持OOTB。您需要建立正確的羣組,以正確訪問資產。默認情況下,發佈實例的「匿名」用戶對/ content/dam具有讀取權限。你需要做以下 -
現在,當用戶登錄時,他們將只能訪問僅限於其組的資產。
有關AEM用戶管理的更多詳細信息,請參閱this article。
正如您所說的,您希望作者能夠控制哪些組可以查看資產。因此,在組件的作者對話框中填充所有用戶組以使其可配置爲作者。然後在您的代碼中檢查該組是否具有資產路徑權限 -
UserManager userManager = resourceResolver.adaptTo(UserManager.class);
Authorizable auth = userManager.getAuthorizable(<<group configured by author>>);
JackrabbitAccessControlManager acm = (JackrabbitAccessControlManager) adminSession.getAccessControlManager();
Set<Principal> principals = new HashSet<Principal>();
principals.add(auth.getPrincipal());
Privilege[] privileges = acm.getPrivileges(<<current assets path>>, principals);
您可以檢查特權數組的權限。如果組有權限而不是僅呈現資產。
我認爲鏈接文章特定於AEM社區,有關用戶和訪問控制的一般信息位於https://docs.adobe.com/docs/en/aem/6-2/administer/security/security.html –
謝謝,更新了鏈接 –
有沒有辦法以編程方式而不是Useradmin。我們有所有用戶,組設置。但我們應該能夠讓我們的作者選擇屬性。我們不能讓他們進入useradmin。 – Karthik