For any Enterprise-level software, administration of your system is critical. Alfresco provides a simple and user-friendly interface to administrate and configure various important services. Users and groups can be very efficiently managed by admin users.
This chapter provides you with an introduction on ways to administer Alfresco.
By the end of this chapter, you will have learned about:
Alfresco provide three types of administration console:
This is a standalone administration console in Alfresco, which allows you to configure and manage the Alfresco repository. This console is available only in the Enterprise version and is restricted to admin users. This interface is external to Alfresco Explorer and Share.
Use the following URL to access the admin console. It will prompt for user credentials. Provide admin user credentials to access it:
http://<IP>:<Port>/alfresco/service/enterprise/admin
The landing page is the summary of all the configurations. There are various configurations available in this console. Let's go through each of them in detail.
This is the landing page for the admin console. It provides details about all the configurations of the repository such as JDK version, Alfresco path, file server, e-mail configuration, auditing, content-store location, indexes, and users and groups in the system.
The following snapshot shows the configuration details in the summary section. System Information shows details about the server. The Indexing Subsystem section shows which type of subsystem is enabled for searches. The Content Stores section shows the path and size of contentstore
.
The console section provides an interface to execute the commands to load the message bundle, model files, and perform an operation on workflows. This section is divided into three categories:
This console allows you to manage the models and message bundles. Alfresco allows you to define custom content type and its schema in .xml
configuration files, which are called model files. Place the file in the extension directory and you can load the changes into Alfresco. You can activate or deactivate the content model via command execution:
help
to get a list of all the commands.brochure
.customModel.xml
. Here is a snippet of the code. A new content type named brochure
is created:... <types> <type name="custom:brochure"> <title>Brochures</title> <parent>cm:content</parent> <properties> <property name="custom:publishedDate"> <type>d:datetime</type> </property> <property name="custom:authorisedBy"> <type>d:text</type> </property> </properties> </type> </types> ..
<Alfresco_Home>/tomcat/shared/classes/alfresco/extension
).deploy model alfresco/extension/customModel.xml
deactivate model customModel.xml
In a similar way you can deploy and undeploy the message bundle.
The tenant console allows you to administrate and manage the different tenants in Alfresco. Alfresco supports multitenancy where a single instance of Alfresco can be divided into different tenants. Each tenant is a logical partition representing an independent instance of Alfresco. For end users it appears they are accessing separate instances of Alfresco. Each tenant will have its own set of users, folders, and content. Using this tenant console you can create, delete, enable, and disable tenants. It also allows you to import and export content from tenants.
For example, if each department in your organization needs their content and users completely separated, creating a different tenant for each department is one of the ways to achieve this with a single instance of Alfresco.
To create a new tenant, execute the following command. This will create a tenant named digitalmarketing.com
and the admin user for this tenant will be joe1234
. Each tenant can have a different admin user:
create digitalmarketing.com joe1234
Execute the help command to see a list of all the available commands.
In the version prior to Alfresco 5.0 this feature is available by using the following URL:
http://<IP>:<Port>/alfresco/faces/jsp/admin/tenantadmin-console.jsp
This console allows you to manage and administer workflows using various commands. You can deploy and undeploy workflows from the repository. Using this console you can query the task details of any process in the workflow, start a workflow, and other tasks.
Important commands from an administrator standpoint:
show workflows all
show definitions all
activiti$activitiReview:1:8
use definition activiti$activitiReview:1:8
activiti$<Numeric ID>
.show workflows. id: activiti$101 , desc: review the details and provide comments , start date: Sun Jan 11 18:41:07 PST 2015 , def: activiti$activitiReview
activiti$101,
we want to get the task details, so we need to execute the following set of commands:use workflow activiti$101 show tasks
The output obtained is shown here:
task id: activiti$145 , name: wf:activitiReviewTask , properties: 19
activiti$101
, so we need to execute the following command:delete workflow activiti$101
delete all workflows
In the version prior to Alfresco 5.0, this feature is available using the following URL: http://<IP>:<port>/alfresco/faces/jsp/admin/workflow-console.jsp
.
Alfresco provides two kinds of e-mail services: inbound and outbound e-mails.
Inbound e-mail services allows users to store their e-mails in Alfresco as content along with attachments. Alfresco becomes a repository for e-mail storage. This Inbound Email admin page allows you to enable or disable services and configure them as per requirements. The following screenshot shows details about the configuration:
Outbound e-mails control all e-mails sent to users from the Alfresco repository. This page allows you to configure and manage the SMTP server details. It also has a Test Email section, which you can use to confirm whether the configurations are correct and e-mails are being sent. The following screenshot shows details about the configuration available:
As shown in the following screenshot, you can also send a test message to confirm the configurations are working properly:
The configurations are the same as we learnt in Chapter 3, Alfresco Configuration. With the admin console you can configure the service at runtime without restarting Alfresco.
In this section, we will discuss the following topics:
The Enterprise Edition of Alfresco needs a license for installation. This admin page allows you to manage the license file. The license is not bound to the server, but it restricts the number of users, amount of content, and type of support from Alfresco.
This page provides details such as valid date of license, usage information, clustering support, content-store encryption, and cloud sync. By default, Alfresco provides a 30-day trial license as shown in the following screenshot:
The license file received from Alfresco has the extension .lic
. You can upload the license file to the Alfresco repository or copy it in the Alfresco installation path and apply the license file as shown in the following screenshot. Once the license file is installed successfully, the file extension will be changed to <license-name>.lic.installed.
This section provides details about the repository such as unique ID, which is important when communicating with the server using the CMIS protocol. It also provides the version and build details of Alfresco. These details are required when you need support from Alfresco or you are upgrading the repository.
These settings are for the repository and Share application configurations. There are three sections: Alfresco Repository Settings, Server Settings, and Share Application Settings:
alfresco-global.properties
file.This section of the admin page allows you to configure various core services of the Alfresco repository such as search, activity feed, replication, and so on.
Let's see details about each of the service configurations:
.jpeg
to .png
, .pdf
to .swf,
and so on. These transformations are controlled by various transformation services, which internally use various tools such as Openoffice, ImageMagick, and SWF tools. This page allows you to control and manage these transformation tools. It is recommended not to change the default settings unless it is required.These are some additional tools that help administrators get details about the repository and help them in troubleshooting:
.zip
file as shown in the following screenshot. This file is very useful to the person troubleshooting the system.Alfresco users and groups can be managed internally or we can integrate it with external directory servers such as LDAP, Active Directory, Kerberos, and so on. You can synchronize all the users and groups from this external directory in Alfresco. Note, no password information is stored in Alfresco if these external directories are used for authentication.
You can configure the chain of these external directories for authentication and synchronization. They would follow the same order as defined. This page allows you to configure and synchronize these external directories with Alfresco.
We would see more details about this configuration in Chapter 6, Permissions and Security.
The content of Alfresco can be accessed as a virtual filesystem using CIFS/FTP. The Alfresco server can also be used as an IMAP server, you can just drag and drop e-mail content using this protocol. This page allows the administrator to configure and control these virtual filesystems.
All the configuration properties for CIFS, FTP, and IMAP, which we learned in Chapter 3, Alfresco Configuration, can have certain properties configured dynamically using this page. You can enable or disable the filesystems without a server restart.
Share was designed as a collaboration platform in Alfresco. But since Alfresco version 5, on deprecation of Alfresco Explorer, Share is now the main interface for accessing the Alfresco repository. Some of the repository and Share administration operations are available using this admin console page.
To access the admin page in Share, follow these steps:
http://<IP>:<port>/share
using admin user credentials or via a user who is part of the Alfresco_Administrator
group.Let's see in detail each of the administrative operations available.
This section provides control to modify the theme of the Share user interface. There are various default themes available in the drop-down menu, you can select any of them and apply. Also, the logo on the page can be changed.
Select the theme and upload a logo, as shown in the following screenshot, and hit Apply. Immediately the theme and logo will be changed.
Any content in Alfresco can be associated with a category. This page allows you to define new categories and manage existing ones. When you delete a category, it removes all the subcategories and also removes the link to any content that these categories were associated with.
Refer to the following screenshot, which shows details about how to manage these categories:
Node Browser is a very important tool for administrators for monitoring and troubleshooting purposes. This browser allows you to navigate through the complete repository and view details about every single individual node in the repository, either its folders, content, system folders, users, or groups. You can search content using Solr by using search queries. It also allows the interface to do a full text search.
For an administrator, this would be the first page to look for content if you want to troubleshoot a data issue in the repository.
Refer to the following screenshot for details about the Node Browser interface:
Select Store drop-down list provides a list of stores available in Alfresco. In the Alfresco repository, the content is divided among different states based on type and state. Refer to the following screenshot for a full list of stores available.
Important ones are workspace://SpacesStore, as all the live content, folders, and system folders are under this store. All the archived content is under archive://SpacesStore.
user://alfrescoUserStore as the name suggests contains details about the users in the repository.
Let's see a different way to search content in Alfresco using this Node Browser:
workspace://SpacesStore
:@cm:name:"Name of the content
.TYPE:"cm:folder"
.Content in Alfresco can be tagged by the user. All the tags in the repository can be managed using this admin page. This tool also helps you to edit and delete the tag name.
For example, imagine a user created a tag named marketing document
and associated it with thousands of documents. If later on we needed to update the tag to marketing asset,
instead of updating thousands of documents, we just need to update the tag name using this page. All documents would have the updated tag.
The tag name in the search result has hyper links that would redirect to the document library and list all the documents that are tagged with the selected tag. So, if you find there is an unused tag, you can remove it from tag manager. This would help in maintaining a clean system.
Refer to the following screenshot, which shows details about tag manager:
Users can create various public or private sites for collaboration. In earlier versions, there was no easy way to manage all these sites. Now, with the new version, the Site Manager tool helps administrators to keep full control and manage the sites effectively. The following screenshot show various types of sites, and the admin user is the Site Manager for all the sites:
This page is the user administration of the repository. You can create, edit, or delete users from Alfresco. Alfresco also provides a feature to import a list of users using the .csv
file.
The following steps can be performed to create a new user in Alfresco:
Best practice would always be to bind the users to a group, if you know which group the user is going to be associated with.
The following steps can be performed to edit/delete a new user in Alfresco:
The following steps can be performed to create multiple users in Alfresco:
.csv
extension. Add a header as mentioned in the following and in the same order. Place the values for each of them. All fields are not mandatory:User Name,First Name,Last Name,E-mail Address,,Password,Company,Job Title,Location,Telephone,Mobile,Skype,IM,Google User Name,Address,Address Line 2,Address Line 3,Post Code,Telephone,Fax,Email
.csv
file created in step 1. Click Upload File to upload the .csv
file. Once users are created you can see a list of users, and an e-mail will be sent to each individual user about their account details.Groups are a logical way to group a set of users. Specific permissions on folders or asset can be given to a group. So all the user members of that group will automatically inherit the same permission. This provides a better way to manage the security in the repository. If any user needs to be removed, just remove it from the group and all permissions would be revoked. No need to remove the user from tons of folders.
Always have a good naming convention for groups, so you can identify them easily. For example, if you want to group all HR people who have admin rights on a set of folders, name the group HR_Admin
.
Once groups are created you cannot edit the name of the group. Only display names can be modified.
In Alfresco, you can also create sub-groups beneath root groups. Parent group permissions are automatically inherited by sub-groups. More details on permissions will be discussed in Chapter 6, Permissions and Security.
Group management is a very easy process. There is a simple user interface to perform this operation. Refer to the following screenshot for details:
Alfresco Explorer is one of the web-client interfaces that provides document management and administration capabilities. It is being deprecated from Alfresco version 5.0.
Follow these steps to access the administrator console of Alfresco Explorer:
http://<ip>:<port>/alfresco
) using your admin credentials. You need to log in with an administrator username. The default administrator username is admin
. Any user that is part of the Alfresco_Administrator
group, will also have the same admin rights. We will see in a later section of this chapter how to add users to groups.Alfresco Explorer provides the following options of administration:
Workflows in Alfresco use the Activiti engine. Activiti workflow also provides its own workflow console to monitor and manage the workflows in Alfresco. This is a very user-friendly interface to show details about workflows. This console shows the list of workflows deployed and running process instance. It also shows all the database tables used by Activiti.
Log in with Alfresco admin credentials using the URL; http://<IP>:<port>/alfresco/activiti-admin
to access the workflow console.
There are various pages to this workflow console. Let's go through each of them in detail:
.zip
or bpmn20.xml
file.For more details about business processes you can refer to https://en.wikipedia.org/wiki/Business_Process_Model_and_Notation.