How to get a specific folder in alfresco from liferay - liferay

I'm using Liferay 6.2 and Alfresco community 5.0.
I've succeeded to integrate Alfresco at Liferay with a CMIS connection.
The inheritance rule is activated on my repository(company home), and I can't disable the inheritance on the sub folders (boss's order).
My Alfresco repository root (company home) is readable by every one, so the sub folders too.
each users have his folder in the repository (folder's name = username)
My boss's wish:
when a user is authenticated in Liferay, he should only see his own
folder, not all the repository.
And I'm lost.
Where can I modify, or create, a CMIS query in order to get the user's folder, and not all the repository...
It is possible to do that or do I have write my own portlet ?
Maybe I can do that in Alfresco ?

Alfresco automatically creates a user folder with private access for each user, you can find the folders in //app:company_home/app:user_homes
You should write a cmis path query that navigates to this user folder, it should look like this (example is listing files in directory for user "testuser"):
SELECT * FROM cmis:folder WHERE
CONTAINS('PATH:"//app:company_home/app:user_homes/cm:testuser/*"')
More in : https://forums.alfresco.com/forum/developer-discussions/alfresco-api/how-get-user-home-space-id-06272011-0628

Related

Liferay 7.0 Search Hook

I'm working with Liferay 7.0 GA3 and I want to customize the Search Portlet.
With the default portlet I can select between sites, asset entries,
folders, users and time when I'm looking at the page as Guest, but
when I'm logged I can see sites, asset entries, tags, categories,
folders, users and time. I would need to show only asset entries
(documents and web content articles, but no documents folder and web
content folders), categories and time.
Another problem is that I imported the data from another server and
now when I search something being a Guest, the porlet only shows me
documents but no web content. However, if I'm logged the porlet
works fine.
I do not know what is the problem with the point 2 yet, but a provisional solution is to go to:
Users -> Roles and select Define Permissions to Guest.
Navigate to Site Administration -> Content -> Web Content
Check the box View associated with Web Content Article.

No collections folder when creating a folder in Alfresco

I have created a folder called audio_test under root folder in Alfresco using the Alfresco Share client, but there is only the index.html file but no collections folder.
According to the documentation I need the collections folder to manage my audio files so that my web app can access them. Why isn't there a collections folder for me? Or how do I create one myself?
You can follow the steps described in the following pages:
Creating the Web Quick Start site
to create the WQS. Each root folder in WQS has a folder where you can define your collections. Collections can be static or dynamic (based on a cmis query).
You need to create this WQS site, upload your files and then define your collections.

disallow access of internal files in liferay

In liferay I have
--tomcat
--webapps
--myimages
--my-portlet
So using code in my-portlet I have given links to given file in myimages folder for a specific user. Link would be
http://localhost:8080/myimages/User1.jpg
Problem Statement: I have to restrict a user (rather than defined role in liferay) so that s/he should not be able to access any of the files in myimages folder as s/he user hits on direct above link.
What I have tested:
I have checked .htaccess file will NOT be useful since liferay has
tomcat rather than apache server.
Created a filter class by which I can intercept any request made
should process through.
openLDAP can not use since we are having separate authentication
mechanism.
So if anyone has idea how to deal with this security issue, please suggest me.
URLs that are resolved through individual webapps (like myimages), thus not through Liferay, will not have any idea of the user that accesses Liferay: They'll be well shielded from the other (and in this case totally unrelated) webapplication Liferay.
What you can do is to provide these files through portlet plugins and serve the images through resource-URLs in the portlet. This properly goes through the portal context (in fact, the URLs will point to Liferay, despite the implementation in a different webapplication) and you'll be able to check the permissions of the current user. Then just read the file and pipe it into the ResourceResponse's output stream.
If the files indeed are static web resources, you might want to put them in myimages/WEB-INF/images - as tomcat will refuse to directly serve everything under WEB-INF, but your portlet will be able to access these files.

Integrating Alfresco and Liferay to show only one folder

I'm trying to integrate Alfresco and Liferay. I have configured CMIS integration following this guide. It works without problem.
But now, I want to configure that repository to show only one folder. I can set a start folder on "Document and Media Portlet", but if I try to add a folder of the Alfresco repository, it says that there are not folders.
Here is a screenshot of "Document and Media portlet" integrated with an Alfresco repository
And this is when I try to select one folder of the repository
Any help will be appreciated.
Finally I figured out where was the problem.
Alfresco's Solr indexes were corrupted. My CMIS queries were not working, so search documents within a folder by using CMIS, did not retuned results.
I have removed Solr Indexes, restarted Alfresco, and now Liferay is working without problem

FPSE, folder permissions and SharePoint Designer

All,
A few of our internal users are editing one of our classic ASP sites (Not a SharePoint site) via Sharepoint Designer which I believe uses FrontPage Server Extensions.
I would like to give a particular user author rights to a single folder - ie, /products and any items and folders it contains. Any suggestions?
It seems that VSS takes its permissions from those set through explorer/the file system. The permissions I had set on both the web folder and the VSS database folder had not propagated correctly, which caused the problem.

Resources