Type: Hot Fix Request
Affects Version/s: 6.2, AGS 3.2
Fix Version/s: AGS 188.8.131.52
Environment:ACS 6.2/Windows/PostgreSQL/Tomcat/AGS 3.2.0
Hot Fix Version:AGS 184.108.40.206
RCA Description:Issue introduced after fixing the MNT-20833 in ACS 6.1.1, 6.2, 6.0.N, 5.2.7
The customer has a requirement to use the api-explorer call, https://api-explorer.alfresco.com/api-explorer/#!/downloads/createDownload, to create a download node which is comprised of zipped records and files. If the request contains a nodeId that is a record then a “403 permission is denied” error occurs. However, if the nodeId used is that of a folder, with the folder containing records, then the download will work successfully.
Steps to Reproduce:
- Deploy an ACS 6.2 with AGS 3.2.0 environment.
- Login to Alfresco as an Admin user.
- Create a new collaboration site “Test”.
- In the document library create a folder “New”.
- Upload several files to the “New” folder.
- Use the “Declare as Record” action to make some of the files records.
- Obtain the nodeId’s for the “New” folder, one of the files, and one of the records.
- Using the api POST /downloads add a file nodeId to the DownloadBodyCreate section.
- Click on “Try it out!” and you’ll see a successful Response Code of 202.
- Now repeat steps 8 and 9 using the nodeId of a record and you’ll receive a Response Code of 403, Permission was denied.
- Repeat steps 8 and 9 using the nodeId of the “New” folder, which contains records and files, and you’ll receive a successful Response code of 202.
- If you repeat the call listing out separate nodeId’s in the DownloadBodyCreate section, that include records and files, you will also get an unsuccessful Response Code of 403, Permission was denied.
- The issue with the records can also be replicated in a Share UI site document library when using the “Selected Items” dropdown action “Download as Zip”.
Observed Behavior: The api POST /downloads request will not work if the nodeId is a record.
Expected Behavior: The api POST /downloads request should work if the nodeId is a record.