Configuring Visitor Segmentation for Authenticated Users

Contents


 

CardioLog provides advanced visitor segmentation capabilities by integrating personal user data into reports.

Retrieval of the organizational hierarchy (users and groups) is performed by the Active Directory Updates service,  which retrieves the data directly from Active Directory by default. 
The Active Directory Updates service can also retrieve the data from a custom source, using a designated web service which supplies the custom organization structure (users and groups).

Retrieval of additional user information, such as department, gender, etc. is performed by the User Categories Updates service, which retrieves the data from Active Directory attributes or SharePoint User Profiles by default.
The User Categories Updates service can also retrieve the data from a custom source, using a designated web service which supplies user information.

Retrieving Users and Groups from a Custom Source

In order to load your organization structure (users and groups) to CardioLog, it is required to specify a web service from which the Active Directory Updates service will gather the organization’s data. This is done through the CardioLog Administration user interface:

  1. Create the custom organization structure web service for your organization.
  2. Verify that the custom organization structure web service returns a valid XML response, according to the XML schema, and that the CardioLog Scheduling Service user account has sufficient permissions to access (request) the web service.
  3. Browse CardioLog > Administration CardioLog Scheduling Service Active Directory Updates.
  4. Click Next.
  5. Enter the custom web service URL in the Web Service URL text box and then click the down arrow (acceptable file extensions: “aspx”, “asmx”, “xml”).
  6. Click Save and restart the CardioLog Scheduling Service.
  7. Perform IISRESET on the CardioLog application server.
  8. After the next run of Active Directory Updates, your users and groups will be added to the Users and Groups filter of each report.

Creating the custom users and groups structure web service

The Users and Groups web service should be exposed by a web page which provides a XML string response according to the following schema:

<?xmlversion="1.0"encoding="Windows-1252"?>

<xs:schema

elementFormDefault="qualified"

xmlns:mstns="http://tempuri.org/ADXmlSchema.xsd"

xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:elementname="tree">

<xs:complexType>

<xs:sequence>

<xs:elementname="users">

<xs:complexType>

<xs:sequence>

<xs:elementmaxOccurs="unbounded"name="user">

<xs:complexType>

<xs:sequence>

<xs:elementname="accountName"type="xs:string" />

<xs:elementname="displayName"type="xs:string" />

<xs:elementname="userMail"type="xs:string" />

<xs:elementname="memberOf"type="xs:string" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:elementname="groups">

<xs:complexType>

<xs:sequence>

<xs:elementmaxOccurs="unbounded"name="group">

<xs:complexType>

<xs:sequence>

<xs:elementname="groupName"type="xs:string" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

Field Definitions:

User accountName: the user account name (a unique user ID).
User displayName: the user display name.
User userMail: the user email address.
User memberOf: a semicolon separated list of group names associated with the user.

Sample Data:

<tree>

<users>

<user>

<accountName>MyCompany\james</accountName>

<displayName>James Wright</displayName>

<userMail>james.wright@mycompany.com</userMail>

<memberOf>Administrators;Marketing</memberOf>

</user>

<user>

<accountName>MyCompany\dana</accountName>

<displayName>Dana Cohen</displayName>

<userMail>dana.cohen@mycompany.com</userMail>

<memberOf>Sales</memberOf>

</user>

</users>

</tree>

Retrieving User Information from a Custom Source

In order to load additional user information from a web service, specify a web service from which the User Categories Updates service will extract the user data. This is done through the CardioLog Administration user interface:

  1. Create the custom user information web service for your organization.
  2. Verify that the custom user information web service returns a valid XML response, according to the XML schema, and that the CardioLog Scheduling Service user account has sufficient permissions to access (request) the web service.
  3. Browse CardioLog Administration CardioLog Scheduling Service User Categories Updates.
  4. Click Next.
  5. Enter the web service URL in the Categories Web Service URL field (acceptable file extensions: “aspx”, “asmx”, “xml”).
  6. Click Save and restart the CardioLog Scheduling Service.
  7. Perform IISRESET on the CardioLog application server.
  8. After the next run of the User Categories Updates service, your user categories will be added to the Visitor Segments filter of each report, under User Categories.

Creating the custom user information web service

The user information web service should be exposed by a web page which provides an XML string response, according to the following schema: 

<?xmlversion="1.0"encoding="utf-8" ?>

<xs:schemaid="CategoryXmlSchema"

elementFormDefault="qualified"

xmlns:mstns="http://tempuri.org/CategoryXmlSchema.xsd"

xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:elementname="tree">

<xs:complexType>

<xs:sequence>

<xs:elementname="item"type="UserCategoryXmlNode"minOccurs="0"maxOccurs="unbounded" />

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:complexTypename="UserCategoryXmlNode">

<xs:sequence>

<xs:elementname="userName"type="xs:string" />

<xs:elementname="categories"minOccurs="0"maxOccurs="1">

<xs:complexType>

<xs:sequence>

<xs:elementname="categoryValue"type="categoryNode"minOccurs="0"maxOccurs="unbounded" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:sequence>

</xs:complexType>

<xs:complexTypename="categoryNode">

<xs:sequence>

<xs:elementname="categoryName"type="xs:string"minOccurs="1"maxOccurs="1" />

<xs:elementname="categoryValue"type="xs:string"minOccurs="1"maxOccurs="1" />

</xs:sequence>

</xs:complexType>

</xs:schema>

Field Definitions:

username: the user account name (should match the accountName field in the organization structure)
categoryName: the category name.
categoryValue: the category value.

Sample Data:

<tree>

<item>

<userName>MyCompany\james</userName>

<categories>

<categoryValue>

<categoryName>Region</categoryName>

<categoryValue>West</categoryValue>

</categoryValue>

<categoryValue>

<categoryName>Gender</categoryName>

<categoryValue>Male</categoryValue>

</categoryValue>

</categories>

</item>

<item>

<userName>MyCompany\dana</userName>

<categories>

<categoryValue>

<categoryName>Region</categoryName>

<categoryValue>North</categoryValue>

</categoryValue>

<categoryValue>

<categoryName>Gender</categoryName>

<categoryValue>Female</categoryValue>

</categoryValue>

</categories>

</item>

</tree>

Configuring Visitor Segmentation by Active Directory Attributes

In order to retrieve additional user information, such as department, gender, etc. from Active Directory attributes, perform the following steps:

1. Edit the following keys in the [CardioLog Installation Folder]\VisitorSegments\web.config file, located in the <appSettings> section -

<add key="adConnStr" value="[Active Directory FQDN]" />

<add key="delimiter" value="[delimiter]" />

<add key="attributeNames" value="[a delimiter separated list of attributes associated with the user]" />

[adConnStrvalue should show the fully qualified domain name (ex: "mycompany.com") 
To retrieve your domain name, open Administrative Tools > Active Directory Users and Computers

[delimiter] - a delimiter for attribute names.

[attributeNames] - a list (delimiter separated) of user attributes which should be imported into CardioLog Analytics.
To view the available user attributes: open ADSIEdit and connect to your domain. Right click Properties on a user object to see its list of attributes.

2. Add visitor segmentation by Active Directory attributes to the User Categories Updates service:

  • Browse CardioLog Administration CardioLog Scheduling Service User Categories Updates.
  • Set the service Scheduling Type to Daily at 00:00.
  • Click Next.
  • Enter the VisitorSegments web application URL in the Categories Web Service URL field (edit the CardioLog server name and port) -

    http://[CardioLog server name]:[port]/VisitorSegments/ADCategories.aspx
     
  • Click Save and restart the CardioLog Scheduling Service.
  • Perform IISRESET on the CardioLog application server.
  • After the next run of the User Categories Updates service, your  Active Directory attributes will be added to the Visitor Segments filter of each report, under User Categories.
  • You can modify the attribute names (as displayed in the Visitor Segments filter) in the CardioLog database: Edit the tab_category_categories table and modify the Category_DisplayName column.

Note - The User Categories filter can be applied from the moment the User Categories Updates is configured, not retroactively. In order to map history usage data to user categories please contact us.

Configuring Visitor Segmentation by SharePoint User Profiles

In order to retrieve additional user information, such as department, gender, etc. from SharePoint User Profiles, perform the following steps:

1. Edit the following keys in the [CardioLog Installation Folder]\VisitorSegments\web.config file, located in the <appSettings> section -

<add key="sspDBConn" value="Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=[Profile_DB];Data Source=[SQL_Instance]"/>

<add key="sspDelimiter" value="[delimiter]" />

<add key="sspPropertyNames" value="[a delimiter separated list of attributes associated with the user]"/>

[sspDBConn- a list (delimiter separated) of connection strings for the desired SharePoint User Profile Service database.

[sspDelimiter] - a delimiter for property names (sspPropertyNames) and database connection strings (sspDBConn). Delimiter for sspDBConn and sspPropertyNames.

[sspPropertyNames] - a list (delimiter separated) of user properties which should be imported into CardioLog Analytics.
To view the available user property names go to SharePoint Central AdministrationShared Service Administration > User Profiles and Properties > View Profile Properties.
To retrieve the property name, click the desired property > Edit > Name field.
You can also view the raw property names directly in the Shared Services database > table PropertyList > column PropertyName.

2. Add visitor segmentation by SharePoint User Profiles to the User Categories Updates service:

  • Browse CardioLog Administration CardioLog Scheduling Service User Categories Updates.
  • Set the service Scheduling Type to Daily at 00:00.
  • Click Next.
  • Enter the VisitorSegments web application URL in the Categories Web Service URL field (edit the CardioLog server name and port) -

    http://[CardioLog server name]:[port]/VisitorSegments/SSPProfiles.aspx
     
  • Click Save and restart the CardioLog Scheduling Service.
  • Perform IISRESET on the CardioLog application server.
  • After the next run of the User Categories Updates service, your SharePoint User Profile properties will be added to the Visitor Segments filter of each report, under User Categories.
  • You can modify the property names (as displayed in the Visitor Segments filter) in the CardioLog database: Edit the tab_category_categories table and modify the Category_DisplayName column.

Note - The User Categories filter can be applied from the moment the User Categories Updates is configured, not retroactively. In order to map history usage data to user categories please contact us.

Have more questions? Submit a request

0 Comments

Article is closed for comments.
Powered by Zendesk