I have created custom type in alfresco and added some properties to it.
Now whenever anyone access file having this custom type, I want to audit all properties of custom type, but alfresco only auditing modified/added/deleted properties.
How to log all properties of custom type in audit?
Thanks, Yogesh
You should probably read the documentation on the Audit Service and then if you get stuck, ask a more specific question including what you've tried and what's not working.
The alfresco audit service has extractors and generators.
Generators can audit information that is not present in the input path.
I think that you should be able to use a generator to audit all your custom properties.
Related
I need to remove web properties by api in GA. Here i read about beta for developers and requested access.
https://developers.google.com/analytics/devguides/config/mgmt/v3/mgmtReference/management/webproperties
Answer was:
Analytics Writes Whitelist for project number xxxxx has been approved.
But a dont understand how to remove web properties. It will be method like management_webproperties->delete where i can read about it?
Unfortunately the API for Web Properties does not support the delete method [reference]
Depending on what you are trying to achieve, there are some potential workarounds:
Rename the property to something like "z (Archived) Property Name" so that it appears at the bottom of the list of properties for a user.
Delete all views under a property. The property will still exist, but will be "empty".
I was working in a client application with alfresco and in need to capture the changes in docs from user's alfresco account. From further reading I came to know that I need to set some properties in alfresco-global.properties file to enable change log audit. So is there anyway I can do this using an API without requesting user to do this ? Please help
I'm not sure something like that is possible, other then using JMX. I'd be happy is someone would prove me wrong, though.
http://docs.alfresco.com/5.1/concepts/jmx-intro-config.html
For Community there is no direct way to do this other than using addon's or writing your own custom code.
There are some ways you can use when using the JavaScript Api of Alfresco.
There is an Open Source module here using JMX and a paid one here using a custom Share page.
I would like to see the users activities made in the general repository, without using a site (upload docs,...) in the user dashboard, I have only managed to see the acvitities performed inside user sites. is it possible to do something like this?
Thanks in advance
It's possible to create your own activities via the activities services.
Use the postActivity to post your own custom activity. The problem remains that you need a required parameter siteId.
Probably you can just fill in Repository and if that doesn't work, just create a public site called Repository so it does exist for your need.
You'll need to create a Behaviour to trigger these post as well.
Want to make alfresco site read only in alfresco community 5.0 so that no one can make any changes or edit that during migration.
I already tried changing the user/group permissions but that method doesn't work properly. Is there any other way to make the sites read only?
You need to make all sites in read only mode and so entire Repository should be in read-only mode for migration!
Try this property in your alfresco-global.prop file
server.allowWrite=false
Please check this for reference
The best way to make a site read only would probably be to modify all members of that site to have the consumer role (this would prevent them for creating new content or editing any existing content).
Unfortunately there is no bulk capability built into the UI to do this, however it should be a relatively straightforward exercise to create an admin only custom WebScript to achieve this. It would necessary for the Admin to become the site manager of each site before attempting to change the role of each site member, but there is an API for doing this.
Alternatively (if you have only a few sites) then you could do this manually through the UI using the Site Management Admin Console page. Again, the Admin would need to become the Site Manager for each Site and then visit the site and change the role of every member.
As suggested by #DaveDraper in a former answer, you could setup site memberships to the consumer role. However, this won't take into account any special permission given on a particular node (folder/document) in that site either with or without inheritance of permission.
So, if you intend to block any writes on the entire alfresco repo/site you could simply setup an extra security interceptor on your NodeService to block any write access using the NodeService.
PS : You could get some inspiration from the "NodeService_security" bean and implementation !
I can think of a turn-around or two, but those would be really sloppy so I won't be including them in this response
Suppose I have two content typs, "Job Listing" and "Job Application". A job application has a field (using the CCK module) to reference the job listing (a required field). Suppose the job application has a field "Status" with values like "new", "accepted", "rejected".
I would like to set permissions so that the job application status can only be set by the creator of the job listing it corresponds to. If there is an addon that can do this great. I would also like general direction as to how a custom addon might implement this.
(I am following the scenario in Ch. 3 of O'Reilly's "Using Drupal")
I don't know if there is a module for this but this can be done pretty easily with some custom code though.
Use hook_form_alter to add your own validate handler to the node_edit form for the application content type.
Check to see if the value has changed
Set an error is user isn't the creator or has the administer content permission.
You're done.
Directions by googletorp are on the right track but you will have to take care of some more permissions also.
Remove the edit own permission for the application content type.
Also you probably do not want author of one job listing editing the applications in response to some other job listing. This is hard to do with any built in permissions. So check in the form_alter hook that current user is the same as the author of the job listing to which the application being edited is connected to.