Microsoft Dynamics AX 2012 Security Guide
Microsoft Dynamics AX 2012 Security Guide
Microsoft Dynamics AX 2012 Security Guide
Microsoft Corporation
August 2013
Microsoft Dynamics is a line of integrated, adaptable business management solutions that enables you
and your people to make business decisions with greater confidence. Microsoft Dynamics works like and
with familiar Microsoft software, automating and streamlining financial, customer relationship and supply
chain processes in a way that helps you drive business success.
Worldwide +1-701-281-6500
www.microsoft.com/dynamics
This document is provided “as-is”. Information and views expressed in this document, including URL and
other Internet Web site references, may change without notice. You bear the risk of using it.
Some examples depicted herein are provided for illustration only and are fictitious. No real association or
connection is intended or should be inferred.
This document does not provide you with any legal rights to any intellectual property in any Microsoft
product. You may copy and use this document for your internal, reference purposes.
Microsoft, Microsoft Dynamics, the Microsoft Dynamics logo, Microsoft BizTalk Server, Microsoft Excel,
Microsoft .NET Framework, Microsoft Outlook, Microsoft SharePoint Foundation 2010, Microsoft
SharePoint Server 2010, Microsoft SQL Server, Microsoft SQL Server Analysis Services, Microsoft SQL
Server Reporting Services, Microsoft Visual Studio, and Microsoft Word are trademarks of the Microsoft
group of companies.
The Microsoft Dynamics AX 2012 Security Guide provides security guidance to system implementers
planning an AX deployment and to system administrators protecting AX and its environment from
external and internal threats. The guide applies to all versions of Microsoft Dynamics AX 2012 released as
of this writing.
The guide does not directly address security at the level of software development. However, the technical
reference at the end provides links to security-related developer resources from Microsoft.
After this threat model is mapped to potential targets in your organization, you will have a framework for
identifying threats, recognizing vulnerabilities, prioritizing by return on investment (ROI), and planning
countermeasures. In the following table, some sample goals of potential attackers are juxtaposed with the
assets and operations that would be threatened, and with the priority of the resulting threat.
Based on the potential cost to the organization, greater resources should be devoted to protecting the
databases than the public-facing web server. The protection of financial data requires that multiple attack
vectors be taken into account: network intruders attacking the databases from outside the organization,
and also insiders with access to Microsoft Dynamics AX client computers and other intranet resources.
Moving from the Internet (at the top of the diagram) downward through levels within the enterprise, the
security policy accrues deepening layers of protection and monitoring, as represented by the vertical bars
on the right. Note that the most valuable business assets are afforded the most protections. The first four
types of security measure apply to all assets across the organization:
Security categories
Network security
1. Firewalls – Firewalls filter network access based on rules. They are broadly divided into network and
application firewalls, depending on the level of the OSI stack they work on. Any aspect of network
communications, including sources, destinations, packet types, and timing, can be controlled.
Dynamic firewalls can adjust rules automatically in response to hostile network traffic such as
distributed denial of service (DDOS) attacks. Though generally deployed as dedicated network
appliances, firewalls can also be implemented in software as a host-based defense. For information
Host-based defenses
Local software firewall – Client-side software firewalls can provide some of the same protection
from network attacks as dedicated hardware firewalls. An example that comes with Microsoft
Windows–based consumer computers is Windows Firewall, which uses application-based rules to
block both incoming and outgoing communication that is unexpected or prohibited. Numerous third-
party vendors also provide firewall software, much of it free, intended for use on consumer
computers.
Intrusion detection system (IDS) and file integrity monitoring (FIM) – IDS and FIM software alerts
administrators to irregularities in network access and file integrity, respectively. A rule-based IDS can
immediately give notice when a system comes under attack. A FIM package can spot changes to
system or application files that might be a tip-off to the activities of an intruder.
Antivirus software – Up-to-date antivirus software should be installed on all organization computers,
whether on-premises or off-premises.
Logging – Although intruders might erase signs of their presence in a computer’s logs, it is good
policy to inspect the system logs periodically to ensure that no anomalies have been detected.
Software updates – Regular software updates, particularly security updates, should be applied as a
part of domain policy.
Full-disk encryption – Where practical, full-disk encryption can prevent data from falling into the
wrong hands if the physical security of a computer is compromised. This is especially useful for
laptops and other client computers used off-premises.
11 Microsoft Dynamics AX 2012 Security Guide
Physical security
Strong locks, reinforced doors, and other measures to prevent unauthorized physical access to computer
hardware are fundamental security measures. Layers of physical security should include:
Restricted access to buildings where servers are housed, possibly enforced by security personal,
logging of persons entering and leaving, video surveillance, smart cards, biometric authentication,
motion sensors and alarms, and so on. The value of the assets being protected should guide decisions
about the measures required.
Highly restricted access to rooms where servers are actually situated.
Video surveillance inside server rooms.
Locking enclosures on computer equipment to prevent theft or easy access to internal components.
Banning or disabling uncontrolled means of inserting or extracting data (optical drives, USB ports, and
so on).
Use of BIOS passwords.
Secure, off-premises storage of computer event logs that can be compared with local logs to look for
irregularities and discrepancies.
Case locks and biometric or smart-card logons for workstations.
Secure storage of portable devices.
Application-based security
Microsoft Dynamics AX 2012 provides a role-based security framework to assign and restrict user
permissions inside Microsoft Dynamics AX. For full documentation about the configuration and use of
role-based security, see Set up user security in Microsoft Dynamics AX.
Database security
For information about Microsoft Dynamics AX 2012 database security, see Data security in Microsoft
Dynamics AX.
Resources
Only keyboard strokes, mouse actions, and images of the information that is displayed on the
Terminal Services server are transmitted over the network. Because Microsoft Dynamics AX data is not
transmitted over the network to client computers, the threat that a malicious user may acquire data
that is stored on a user's local client computer is reduced.
No data is processed, cached, or stored on a user's local computer. All data processing, caching, and
storage occur on the Windows Server computer that is running the Microsoft Dynamics AX client.
Therefore, if a user's local client computer is stolen or lost, a malicious user cannot access Microsoft
Dynamics AX data on that computer.
1. Users log on to their client computers. The users then open either a remote desktop connection or, if
they connect by using the HTTP service, a remote desktop Web connection. Alternatively, users can
double-click the Microsoft Dynamics AX client icon on their computers and run the application as a
Terminal Services session. This capability is a feature of Windows Server 2008 that is named
RemoteApp.
2. The load balancing solution routes traffic to the Terminal Services cluster based on server availability
and load.
3. Terminal Services receives the session request. Terminal Services then communicates with the
Terminal Services Directory and Licensing Services to manage sessions, and to verify that a license is
available. If a license is available, Terminal Services starts a unique session for each user. Depending
on the configuration of Terminal Services, users may see a Windows desktop. These users can then
access the Microsoft Dynamics AX client from the All Programs menu. Alternatively, if users are using
Terminal Services RemoteApp, the Microsoft Dynamics AX client opens and appears to the users as an
application that runs on their client computer.
Deployment considerations
By default, Terminal Services enables only two client sessions at the same time. Before you can deploy
a Terminal Services cluster, business decision makers in your business or organization must assess the
cost of purchasing additional Terminal Services licenses. We highly recommend the investment,
because a Terminal Services cluster reduces administrative overhead. Additionally, a Terminal Services
cluster reduces the attack surface for security threats against Microsoft Dynamics AX and any other
line-of-business applications that run on the cluster.
Every user who connects to the Microsoft Dynamics AX client on the Terminal Services cluster must be
a member of the Remote Desktop Users group in Microsoft Windows Users and Groups.
To enhance the security of your computing environment, deploy Group Policy and Encrypting File
System on all computers. If your business or organization uses Windows Server 2008, Windows 7, or
Windows Vista, deploy Windows BitLocker Drive Encryption. Group Policy and Encrypting File System
are described in more detail in the next section.
For more information about Terminal Services, see the Terminal Services in Windows Server 2008
(http://go.microsoft.com/fwlink/?LinkId=118304).
Because more data is transmitted over the network, there is more risk that a malicious user may
intercept Microsoft Dynamics AX data that is sent between the client and AOS.
If users do not diligently help secure their computers, or if a computer is lost or stolen, there is more
risk that a malicious user may access data that is stored on individual computers.
If users have access to the Internet, there is more risk of virus attacks or problems with malicious
software.
If your business or organization does not enforce a policy that requires that users download and
install security updates as soon as they are available, your computing environment is at more risk.
You can reduce some of these security risks by deploying the Windows security features that are
described in the following sections.
Deployment considerations
If you deploy the Microsoft Dynamics AX client on individual computers, we recommend that you use the
deployment practices that are described in this section. By following these recommendations, you can
improve security and reduce some of the risks that were described earlier in this topic.
Do not install the Microsoft Dynamics AX 2012 Configuration utility on the client computers in a
production environment. Instead, create a client configuration file, and store the file in a network
shared folder. To install Microsoft Dynamics AX clients that do not include the Microsoft Dynamics AX
2012 Configuration utility, you must perform a silent installation. For more information, see Mass
deployment of the Microsoft Dynamics AX Windows client.
Configure the network shared folder that contains the client configuration file so that all Microsoft
Dynamics AX users who are not system administrators have read-only permission. By storing the
configuration file in a network shared folder that is configured for read-only permission, you can help
prevent accidental changes to the configuration file.
BitLocker encrypts all data that is stored on the Windows operating system volume and any data
volumes that are configured. This data includes the Windows operating system, hibernation and
paging files, applications, and data that is used by applications.
BitLocker is configured to use a Trusted Platform Module (TPM) to help guarantee the integrity of
components that are used in the early stages of the startup process. Any volumes that are protected
by BitLocker are "locked." Therefore, these volumes remain protected, even if the computer is
tampered with when the operating system is not running.
If a volume is protected by BitLocker, all data that is written to the volume is encrypted. This includes the
operating system itself, and all applications and data. In this way, BitLocker helps protect data from
unauthorized access. Although the physical security of servers remains important, BitLocker can help also
protect data if a computer is stolen or shipped from one location to another, or if the computer is
otherwise out of a user's physical control.
By encrypting the disk, BitLocker helps prevent offline attacks. For example, a malicious user may try to
bypass Windows security provisions, such as permissions that are enforced by access control lists (ACLs) in
NTFS, by removing a disk drive from one computer and installing it in another computer.
For more information, see Windows BitLocker Drive Encryption
(http://go.microsoft.com/fwlink/?LinkId=118687).
1. Click Start > Control Panel > Administrative Tools > Microsoft Dynamics AX 2012
Configuration.
2. Click the Connection tab.
3. Verify that Encrypt client to server communications is selected. If this option is not selected, select
it, and then click OK.
Recommendation Description
Always assign the least permissions when you set up and Before you set up and configure the least permissions in
configure the user security features in Microsoft Microsoft Dynamics AX, consider the following
Dynamics AX. recommendations:
Educate users about how to use strong passwords, and Strong passwords and password policies in your domain
define password policies. help maintain a secure computing environment. We
highly recommend that you implement password best
practices in your business or organization. For more
Enable Windows Firewall or another firewall device on A firewall drops incoming traffic that has not been sent in
each computer. response to a request of the computer. Traffic that is sent
in response to a request is named solicited traffic. The
firewall also drops unsolicited traffic that has not been
specified as allowed. Traffic that is unsolicited but allowed
is named excepted traffic. A firewall adds a level of
protection against malicious users and applications that
rely on unsolicited incoming traffic to attack computers.
We recommend that you enable Windows Firewall or
another firewall device on every computer in your
business or organization. Windows Firewall is a Control
Panel feature that is used to set restrictions on the traffic
that can enter your network from the Internet.
For more information, see Windows Firewall
(http://go.microsoft.com/fwlink/?LinkId=118283).
Enable a virus scanner on each computer. The threat of virus attacks is ongoing and always
changes. We recommend that you deploy a virus scanner
on every computer in your business or organization, and
that you configure the scanners to scan computers and
update virus signatures regularly.
Deploy smart cards in your business or organization. We recommend that you deploy smart cards in your
business or organization. A smart card contains a small
computer chip that is used to store security keys or other
types of personal information. Smart cards use
cryptographic technology to store the information. Some
businesses or organizations deploy smart card readers on
every laptop and desktop computer, and require that
employees insert their smart card into the reader to
connect to the corporate network. By deploying smart
cards in this manner, the business or organization adds
another physical layer of security to its computing
environment, because every user who connects to the
corporate network must have a valid password and a
smart card.
For more information, see the Smart Card Reference
(http://go.microsoft.com/fwlink/?LinkId=118292).
Build and Maintain a Secure Network 1. Install and maintain a firewall configuration to protect
cardholder data.
2. Do not use vendor-supplied defaults for system passwords and
other security parameters.
Maintain a Vulnerability Management Program 5. Use and regularly update antivirus software.
6. Develop and maintain secure systems and applications.
Regularly Monitor and Test Networks 10. Track and monitor all access to network resources and
cardholder data.
11. Regularly test security systems and processes.
Maintain an Information Security Policy 12. Maintain a policy that addresses information security.
Note:
The record-level security feature will be removed in a future release. If you previously set up
record-level security filters, they will continue to function. If you are setting up new filters, we
recommend that you create data security policies using the extensible data security framework.
For more information about data security policies, see Overview of Security Policies for Table
Records (http://msdn.microsoft.com/en-us/library/hh272123.aspx).
The following examples demonstrate how you can use record-level security.
Allow members of a Sales role to see only the accounts they manage.
Prohibit financial data from appearing on forms or reports for a specific role.
Prohibit account details or account IDs from appearing on forms and reports for a specific role.
Restrict form and report data according to location or country/region.
When a record-level security policy and a data security policy filter the same data, they may not work
together as expected. For example, if the constrained table in the data security policy differs from the
primary table in the record-level security filter, the existing record-level security policy is not added to the
data security policy query. To achieve the desired behavior, you must add the ranges from the record-
level security policy to the data security policy query.
Important:
You cannot use record-level security filters on the tables in an inheritance hierarchy. For
example, the DirPerson and DirOrganizationBase tables inherit from the DirPartyTable table.
Record-level security filters cannot be used on any one of these tables.
Click Next >.
5. Click Finish.
Create a query
1. In the Record level security dialog box, select the role and table association that you just created
and then click Query. The Inquiry dialog box is displayed.
2. Select the first item listed on the Range tab. If no item is listed, press CTRL + N.
3. In the Field list, select the field that you want to filter on.
4. In the Criteria field, enter or select the filter criteria for the designated field.
5. As necessary, press CTRL + N to add fields and criteria.
6. Click OK.
Note:
TPF can be enabled on any table in the Microsoft Dynamics AX database. However, for the sake of
time and efficiency, administrators assign TPF to tables that are considered to be sensitive or to
be of critical business value. For information about tables where TPF is enabled by default, see the
Table Permissions Framework reference.
Example
TPF adds table-level security that verifies user rights regardless of the origin of the request. For example,
consider the following scenario:
1. Contoso Corporation implemented Microsoft Dynamics AX. Users access data by using the Microsoft
Dynamics AX client, Enterprise Portal, the Application Integration Framework, and a third-party
application that connects to Microsoft Dynamics AX by using the .NET Business Connector.
2. The administrator configured a security role called Senior Leadership, and members of this role have
access to sensitive data about financial information and trade secrets. One of the database tables that
stores this sensitive information is called FinancialResults. This table was added as part of a
customization done by a partner after Microsoft Dynamics AX was installed.
Set authorization requirements on database tables by using the Table Permissions Framework
To enable TPF, the administrator specifies a value for the AOSAuthorization property on a specific table
in the AOT. By default, this value is set to None.
The AOSAuthorization property can be used to authorize Create, Read, Update, and Delete operations.
For some tables, you might specify a subset of operations, such as Create, Update, and Delete. If you
specify a subset, the AOS authorizes the Create, Update, and Delete operations, but allows any Microsoft
Dynamics AX users to perform View operations. For other tables, you should authorize all operations
because the data is sensitive.
When the AOSAuthorization property is set for a table, table methods that cause the AOS to verify
permissions are invoked on each affected table row. For more information, see AOSAuthorization Property
on Tables (http://msdn.microsoft.com/en-us/library/bb278259.asp).
Use the following procedure to enable TPF on database table.
1. In the AOT, expand Data Dictionary > Tables.
2. Select a table. The properties for the table are displayed in the right pane.
3. Click the AOSAuthorization property and select a new value by using the drop-down list.
4. Click Save All.
Verify security settings for Internet Information Services See the product documentation on Microsoft TechNet
(IIS) and SharePoint. and MSDN.
Enhance Enterprise Portal security in extranet Install Enterprise Portal in a traditional perimeter network
deployments by using two domain controllers and two (http://technet.microsoft.com/en-
firewalls. This deployment model is called a traditional us/library/dd361998.aspx)
perimeter network.
Tip:
If you prefer not to deploy Enterprise Portal with
multiple domain controllers, you can
authenticate Enterprise Portal users by using
claims-mode authentication. For more
information, see the next item in this checklist.
Deploy an Enterprise Portal site that uses the claims Deploy an Enterprise Portal site that uses forms-based
mode authentication that is provided by SharePoint. authentication (http://technet.microsoft.com/en-
In the context of Microsoft Dynamics AX, this claims us/library/hh575253.aspx)
mode authentication is called Flexible authentication.
Flexible authentication enables businesses and
organizations to authenticate Enterprise Portal users
without having to store user accounts in Active Directory
Domain Services.
Verify that the Enterprise Portal site is registered in Click System administration > Setup > Enterprise
Microsoft Dynamics AX. Portal > Web sites.
Verify that Microsoft Dynamics AX role-based security is Set up user and data security in Microsoft Dynamics AX
configured. At a minimum, users and groups must be Set up user security in Microsoft Dynamics AX
members of the System user role.
Grant users and groups permission to view the site in Enable users to access Enterprise Portal sites
SharePoint. (http://technet.microsoft.com/en-
us/library/dd309631.aspx)
Specify user relations. User relations trim data based on a Specify user relations (http://technet.microsoft.com/en-
user's designated role and account. User relations are us/library/dd309687.aspx)
required for extranet deployments and for an employee
self-service portal.
Employees who only access an employee self-service
portal must be assigned a Worker relation in the User
relations form.
Grant users and groups access to Microsoft SQL Server Grant users access to reports
Reporting Services (SSRS) reports. Users and groups must (http://technet.microsoft.com/en-
have this access to view SSRS reports in Enterprise Portal us/library/aa496432.aspx)
and Role Centers.
Grant users and groups access to Microsoft SQL Server Grant users access to cubes
Analysis Services (SSAS) cubes. Users and groups must
have this access to view SSAS reports in Enterprise Portal
and Role Centers.
Configure Enterprise Portal for data partitions. Configure Enterprise Portal to access data in a partition
(http://technet.microsoft.com/en-
us/library/jj670113.aspx)
Implement SSL
To implement SSL, you must install a certificate and a private encryption key on the web server by using
Internet Information Services (IIS) manager. For more information, see How to Setup SSL on IIS 7
(http://go.microsoft.com/fwlink/?LinkId=223135).
Note:
In this topic, Search results that include data, metadata, and documents are referred to as data.
Role-based security
Microsoft Dynamics AX restricts the data that is returned in Search results, based on each user’s role in
Microsoft Dynamics AX. Role-based security trims data at the level of database tables, records, and fields.
Tables – When a user performs a search, Microsoft Dynamics AX verifies that members of the
user’s role can view the tables that are listed in the AOT query. If the role does not have
permission to view data from a table, Search trims the results. For example, an AOT query includes
Table 1 and Table 2, but a user’s role only has permission to view data from Table 1. In this case,
Search returns data from Table 1 but trims all data from Table 2.
Records – When a user performs a search, Microsoft Dynamics AX verifies that members of the
user’s role can view the records that are contained in the tables in the AOT query. If the role does
not have permission to view one or more records in a table, Search trims the results. For example,
an AOT query includes Table 1, a user’s role has permission to view data from Table 1, but Table 1
has a record that the user’s role is not permitted to view. In this case, Search returns data from
Table 1 but trims the data for the restricted record.
Variable field access – Microsoft Dynamics AX excludes a field from Search results if the field has
different access permissions for different roles. For example, a record includes a field that is
named Employee Performance Score. Role 1 can view the field, but Role 2 cannot view the field.
In this case, the data in the field is excluded from all Search results. Therefore, Employee
Performance Score is not displayed in the Search results, regardless of the user who performed
the search, because the field is not indexed by Search. Fields that have variable access are not
indexed and are therefore not discoverable in Search.
Form references
Tables in the AOT include a FormRef property. This property specifies the form that is used in the
Microsoft Dynamics AX client to enter data for a specific table. Tables also include a SearchLinkRefName
property. This property specifies the form that is used in Enterprise Portal to enter data for a specific table.
If either of these properties is empty, Search excludes results for form metadata for the corresponding
client, the Microsoft Dynamics AX client or Enterprise Portal. For example, an AOT query includes Table 1,
and the FormRef property is empty for Table 1. In this case, Search results do not include metadata links
to the form.
Note:
When you bind a report to a report data provider class that writes data to a temp table, apply the
XDS policy to the table that contains the source data for the report, not the temp table.
Note:
This is the recommended setting for business logic assemblies (depending on the main report
project name length, either .BusinessLogic.dll or .BL.dll), and it is added by default for the business
logic assemblies that are created for a deployed reporting project. This includes the business logic
assemblies from referenced reporting projects.
Giving a custom assembly full trust in the report server security policy file allows the assembly to
directly access .NET Business Connector running under the Business Connector proxy account. This is
an account that has elevated privileges that allows for access to the LogonAs functionality. In this
case, the assembly could impersonate any user and access their records.
Granting a custom assembly ReflectionPermission with MemberAccess could allow the assembly to
retrieve cached sessions from the session cache. Those sessions are logged in for a specific user, and
the custom assembly could have access to that user's data.
The following code must be present in the custom code section of the RDL file if the report is
expected to make use of the SessionManager API:
Protected Overrides Sub OnInit()
Microsoft.Dynamics.Framework.Reports.SessionManager.BeginRequest(Rep
ort)
End Sub
Entries in the security policy file will not be created for any assemblies referenced by business logic
assemblies.
Important:
If the SharePoint site is configured for claims-based authentication, you must also grant the
following accounts Read permission to the document library or site:
The account that is used as the Business Connector proxy
The account that is used to run the Microsoft Dynamics AX Application Object Server (AOS) service.
Microsoft Dynamics AX 2012 Security Guide 36
1. Open your browser and navigate to the SharePoint site that contains the document library that stores
the reports.
2. Click Site Actions > Site Permissions.
3. Click Grant Permissions. The Grant Permissions window is displayed.
4. In the Users/Groups field, enter the Active Directory names of the users or groups that you want to
view reports.
5. In the Grant Permissions area, select the Grant users permission directly option.
6. Select the Read check box.
Note:
If you want Enterprise Portal users to be able to filter reports using a custom parameter value,
select the Design check box. For more information about the permissions required to use
Enterprise Portal, see Enable users to access Enterprise Portal
(http://technet.microsoft.com/en-us/library/dd309631.aspx).
7. Click OK.
Caution:
If you modify a default Analysis Services role that is provided by Microsoft Dynamics AX, you may
accidentally prevent some members of the role from viewing reports and key performance
indicators (KPIs) that those members were intended to view. For more information about the
default roles that are included with Microsoft Dynamics AX and the cubes that the roles have
access to, see Default Analysis Services roles.
Analysis Services roles that are created when you deploy the Microsoft Dynamics AX 2012 R2 cubes
When you deploy the cubes that are included with Microsoft Dynamics AX 2012 R2, the following roles
are created in the Analysis Services database where you deploy the cubes.
Analysis Services roles that are created when you deploy the Microsoft Dynamics AX 2012 Feature
Pack cubes
When you deploy the cubes that are included with Microsoft Dynamics AX 2012 Feature Pack, the
following roles are created in the Analysis Services database where you deploy the cubes.
Analysis Services roles that are created when you deploy the Microsoft Dynamics AX 2012 cubes
When you deploy the cubes that are included with the initial release of Microsoft Dynamics AX 2012, the
following roles are created in the Analysis Services database where you deploy the cubes.
Important:
Keep the following information in mind when assigning users to roles in Analysis Services:
Role members have permission to view all data in the cubes that the role has access to. For example, if
you assign a user to the Project supervisor role, that user will have access to all data in the Project
accounting cube.
The default roles that are created in Analysis Services are not synchronized with the security roles in
Microsoft Dynamics AX. For example, if you modify the permissions of the Accountant role in Microsoft
Dynamics AX, it does not affect the Accountant role in Analysis Services.
Notes:
Analysis Services supports Windows authentication only. Users who do not have Active
Directory accounts will not be able to access cube data. This means that users who access
Enterprise Portal for Microsoft Dynamics AX using claims-based authentication will not be
able to view cube data in reports and web parts.
If you configure Enterprise Portal to use claims-based authentication, you should remove the
reports and web parts that were designed to display cube data. For more information about
Scenario: Help prevent employees of one company from viewing cube data for
another company
Your organization may consist of several companies. To help prevent employees of one company from
viewing the data for another company by using cubes, we recommend that you create a role for each
company in Microsoft SQL Server Analysis Services.
For example, assume that your organization consists of two companies: Contoso, Ltd. and Fabrikam, Inc.
You want to prevent accountants in one company from viewing the data for the other company.
Therefore, you should modify the default Accountant role and create a new role for each company. The
following illustration provides an overview of the tasks that you need to complete.
AIF users
The following types of user can work with services and AIF.
Submitting user
The submitting user submits the message to Microsoft Dynamics AX. The submitting user must be an
authenticated Microsoft Dynamics AX user.
The following table explains the process that AIF uses to determine the submitting user.
File system adapter The submitting user is the owner of the message request file as returned by the Windows
GetFileSecurity (OWNER_SECURITY_INFORMATION) function. You can specify a default
message owner that AIF uses when file ownership cannot be resolved deterministically.
See Configure addresses for enhanced integration ports
(http://technet.microsoft.com/en-us/library/hh202051.aspx).
MSMQ adapter The submitting user is the sender of the message as set on the SenderId property of the
message.
Web services The submitting user is the Windows identity of the caller.
Important:
When you use a trusted intermediary, make sure that the trusted intermediary represents a
known, valid partner or a trusted system.
Proxy user
If a proxy is used, .NET Business Connector can connect on behalf of Microsoft Dynamics AX users when
authentication is performed by an AOS instance. For more information, see Specify the .NET Business
Connector proxy account (http://technet.microsoft.com/en-us/library/aa496652.aspx).
Information technology manager SysServerITManager This role has the following two duties that are
related to services and AIF:
AifIntegrationMaintain, which provides the
privileges that are required for typical AIF tasks,
such as configuring integration ports, viewing
the message queue, and reviewing history
information.
AifSyncConfigure, which provides the
privileges that are required to configure
document filters.
System administrator -SYSADMIN- A user who has this role is a super user, and
therefore has full permission for every operation in
Microsoft Dynamics AX.
Every service operation is associated with an entry point privilege. This privilege provides permissions for
the tables that the service reads or modifies. For example, the SalesSalesOrderServiceCreate service
operation is associated with the SalesSalesOrderServiceCreate privilege. The ServiceOperation duty
provides privileges for all service operations. Other duties provide privileges for specific service
operations, depending on the responsibilities of the duty and its associated roles. For example, among the
privileges that the DOCommerceOnlineSalesOrderMaintain duty provides is the
SalesSalesOrderServiceCreate privilege.
To understand the relationships between roles, duties, privileges, and permissions, see the Security node
of the Application Object Tree (AOT).
Note:
You can avoid any change in file ownership by using a Uniform Naming Convention (UNC)
path to specify the location of the file adapter. Ownership of files cannot be changed if you
use a UNC path.
For more information, see Configure addresses for enhanced integration ports
(http://technet.microsoft.com/en-us/library/hh202051.aspx) and Managing Object Ownership
(http://technet.microsoft.com/en-us/library/cc732983).
Make sure that data that is sent to and from AIF integration ports is encrypted and can be accessed
only by authenticated and authorized users. All data transmissions must be secured, so that no one
can read or modify the data during transmission. Authentication and encryption are especially
important for business-to-business scenarios in which data is transmitted over the public Internet. For
HTTP ports, you can add HTTPS settings through Internet Information Services (IIS).
When you transmit messages by using the file system adapter or the MSMQ adapter, make sure that
the file shares and queues themselves are secured and can be accessed only by authorized users. You
can help secure the file shares and queues by using specialized security software that encrypts data
and guarantees that only authorized users can access a file location.
The Microsoft Dynamics AX system administrator must restrict access to AIF by assigning users only
to the roles that those users require. See About role-based security in services and AIF.
Be aware that all actions in Microsoft Dynamics AX that involve inbound documents are performed in
the context of a valid Microsoft Dynamics AX user. For information about how AIF determines the
submitting user, see About role-based security in services and AIF.
Be sure to help secure the location on the file system to which you export messages from the Queue
manager form. These messages may contain confidential information.
Restrict the use of integration ports to authorized users and companies. In this way, an integration
port can send or receive data only for specific customers, vendors, or warehouses, and you can avoid
spoofing attacks. Trusted intermediary users can submit AIF requests on behalf of authorized port
users. See Configure security for integration ports (http://technet.microsoft.com/en-
us/library/hh202131.aspx).
In Microsoft Dynamics AX 2012 R2, you must restrict an inbound port to a partition before you can restrict
the port to a company. Each company in Microsoft Dynamics AX 2012 R2 exists in one data partition,
although one data partition can contain more than one company. For more information about data
partitions, see Data partitioning architecture (http://technet.microsoft.com/EN-US/library/jj728665.aspx).
To restrict the data fields that can be read or modified through an integration port, use data policies.
For information about how to configure data policies, see Customize service contracts
(http://technet.microsoft.com/en-us/library/hh202119.aspx).
Add external components only from a trusted and reliable source, such as a Microsoft Partner or an
independent software vendor (ISV). External components include document classes, adapter classes,
and pipeline components. Pipeline components are X++ classes that are called during processing of
the AIF pipeline.
Role-based security
In previous releases of Microsoft Dynamics AX, managing security could be a lengthy and difficult process.
Microsoft Dynamics AX 2012 introduces role-based security, which makes security easier to manage by
providing the following benefits:
Security that is aligned with your business
In previous releases, Microsoft Dynamics AX administrators had to create their own user groups and
manually assign users to those groups. To grant a user group permission to perform a particular
operation, the administrator had to identify the application objects, such as tables, fields, and menu
items, that were required for the operation. Identifying these elements could be a difficult and lengthy
process. When a person changed jobs, the administrator had to manually update that person's
permissions in Microsoft Dynamics AX.
In Microsoft Dynamics AX 2012, security is role-based, and many security roles are predefined to
make security easier to set up. In role-based security, users are assigned to roles based on their
responsibilities in the organization and their participation in business processes. The administrator no
longer has to identify application objects and grant access to those objects. Instead, the administrator
grants access to the duties that users in a role perform. Because rules can be set up for automatic role
assignment, the administrator does not have to be involved every time that a user's responsibilities
change. After security roles and rules have been set up, role assignments can be updated based on
changes in business data.
Reusable permissions
In previous releases, user groups could not span multiple companies. If the same functional role was
required in two companies, the administrator had to create two user groups. Therefore, the number of
user groups could grow quickly. For example, in a business with 50 functional roles in 50 companies,
the administrator had to create and manage 2500 user groups to appropriately assign permissions.
In Microsoft Dynamics AX 2012, a single set of roles applies across all organizations. The administrator
no longer has to create and maintain separate user groups for each organization.
Although roles themselves are not specific to an organization, the administrator can still assign a user
to a role in specific organizations.
Default and sample security definitions
Note:
By default, program access is defined for the default security roles. However, no data
restrictions are applied by default.
Compliance and auditing
In previous releases, administrators had to manually audit for compliance. There were no built-in
features to help prevent fraud and guarantee compliance.
Role-based security in Microsoft Dynamics AX 2012 is easier to audit, because fewer security objects
are assigned to fewer groups of users. In addition, because of the concept of roles and duties, you can
audit for compliance based on business activities instead of program elements.
In Microsoft Dynamics AX 2012, you can set up rules for the segregation of duties to guarantee that a
user does not have access to conflicting duties. For example, you can set up a rule that specifies that
one person cannot both acknowledge the receipt of goods and pay the vendor.
For more information, see Role-based security in Microsoft Dynamics AX and Set up segregation of duties.
Flexible authentication
Since Microsoft Dynamics AX 4.0, user authentication has been based on Active Directory. All users have
been required to be domain users. Even external users of Enterprise Portal have had to be domain users.
To help secure other data on the network, the administrator had to set up group policies to prevent
external users from accessing that data. In Microsoft Dynamics AX 2012, users can be authenticated by
using methods other than Active Directory. Therefore, external users no longer require domain accounts
to access Microsoft Dynamics AX. For more information, see Deploy an Enterprise Portal site that uses
forms-based authentication (http://technet.microsoft.com/en-us/library/hh575253.aspx).
Data security
Authorization is used to grant access to elements of the application. By contrast, data security is used to
deny access to tables, fields, and rows in the database.
Use the extensible data security framework to control access to transactional data by assigning data
security policies to security roles. Data security policies can restrict access to data, based on the effective
date or based on user data, such as the sales territory or organization. For more information about how to
use data security policies in Microsoft Dynamics AX, see Overview of Security Policies for Table Records
(http://msdn.microsoft.com/en-us/library/hh272123.aspx).
In addition to the extensible data security framework, record-level security can be used to limit access to
data that is based on a query. However, because the record-level security feature is becoming obsolete in
a future release of Microsoft Dynamics AX, we recommend that you use data security policies, instead.
Additionally, the Table Permissions Framework helps protect some data. Data security for specific tables is
enforced by Application Object Server (AOS). For more information about the Table Permissions
Framework, see Manage data access by using the Table Permissions Framework.
The following sections explain the elements of the security model in more detail.
Security roles
All users must be assigned to at least one security role in order to have access to Microsoft Dynamics AX.
The security roles that are assigned to a user determine the duties that the user can perform and the parts
of the user interface that the user can view.
Administrators can apply data security policies to limit the data that the users in a role have access to. For
example, a user in a role may have access to data only from a single organization. The administrator can
also specify the level of access that the users in a role have to current, past, and future records. For
example, users in a role can be assigned privileges that allow them to view records for all periods, but that
allow them to modify records only for the current period.
By managing access through security roles, administrators save time because they do not have to manage
access separately for each user. Security roles are defined one time for all organizations. In addition, users
can be automatically assigned to roles based on business data. For example, the administrator can set up
a rule that associates a Human resources position with a security role. Any time that users are assigned to
that position, those users are automatically added to the appropriate security roles. Users can also be
automatically added to or removed from roles based on the Active Directory groups that they belong to.
Security roles can be organized into a hierarchy. The role hierarchy allows the administrator to define a
role based on another role. For example, the sales manager role could be defined as a parent role of the
manager role and the salesperson role. A parent role automatically inherits the duties, privileges, and
conditions that are assigned to its child roles. Therefore, a user who is assigned to the parent role can
perform all of the tasks that users in the child roles can perform. A role can have one or more child roles
or one or more parent roles.
Note:
The sample security roles do not correspond to Role Centers.
For more information about how to work with security roles, see the following topics:
Create or modify a security role
Assign users to security roles
Data security in Microsoft Dynamics AX
Process cycles
A business process is a coordinated set of activities in which one or more participants consume, produce,
and use economic resources to achieve organizational goals.
To help the administrator locate the duties that must be assigned to roles, duties are organized by the
business processes that they are part of. In the context of the security model, business processes are
referred to as process cycles. For example, in the accounting process cycle, you may find the Maintain
ledgers and Maintain bank transactions duties.
Process cycles are used for organization only. The process cycles themselves cannot be assigned to roles.
Duties
Duties correspond to parts of a business process. The administrator assigns duties to security roles. A duty
can be assigned to more than one role.
In the security model for Microsoft Dynamics AX, duties contain privileges. For example, the Maintain
bank transactions duty contains the Generate deposit slips and Cancel payments privileges. Although
both duties and privileges can be assigned to security roles, we recommend that you use duties to grant
access to Microsoft Dynamics AX.
You can assign related duties to separate roles. These duties are said to be segregated. By segregating
duties, you can better comply with regulatory requirements, such as those from Sarbanes-Oxley (SOX),
International Financial Reporting Standards (IFRS), and the United States Food and Drug Administration
(FDA). In addition, segregation of duties helps reduce the risk of fraud, and helps you detect errors or
irregularities.
Default duties are provided. The administrator can modify the privileges that are associated with a duty, or
create new duties.
For more information about how to work with duties, see the following topics:
Set up segregation of duties
Create or modify a security privilege, duty, or process cycle
Privileges
In the security model for Microsoft Dynamics AX, a privilege specifies the level of access that is required to
perform a job, solve a problem, or complete an assignment. Privileges can be assigned directly to roles.
However, for easier maintenance, we recommend that you assign only duties to roles.
Permissions
Each function in Microsoft Dynamics AX, such as a form or a service, is accessed through an entry point.
Menu items, web content items, and service operations are referred to collectively as entry points.
In the security model for Microsoft Dynamics AX, permissions group the securable objects and access
levels that are required to run a function. This includes any tables, fields, forms or server side methods
that are accessed through the entry point.
Only developers can create or modify permissions. For more information about how to work with
permissions, see the Microsoft Dynamics AX developer documentation. Be aware that modifying
permissions may affect your licensing requirements. For more information about how licensing relates to
security, see the Security roles and licensing white paper (http://go.microsoft.com/fwlink/?LinkID=228370)
for Microsoft Dynamics AX 2012.
Important:
In the licensing model for Microsoft Dynamics AX, entry points are referred to as menu items.
Manage users
This section provides information about how to manage users of Microsoft Dynamics AX. The following
topics are included:
Warning:
When an AD DS group is assigned to a security role, Microsoft Dynamics AX is unable to calculate
conflicts in segregation of duties for individual users who are part of the AD DS group.
Caution:
You must select the correct account type for the user or group to be validated. For example,
an AD DS group is not recognized if Active Directory user is selected in the Account type
field.
8. In the Default company list, select the company that the user logs on to by default. If you do not
select a company, Microsoft Dynamics AX uses the current company that the administrator is logged
on to.
9. To grant the user access to Microsoft Dynamics AX, select Enabled.
Note:
The External option is automatically selected when a user is designated as a web user.
10. Click Assign roles to select the security roles that are assigned to the user. If you must assign the user
to a role in a particular organization, select a role, and then click Assign organizations.
For more information about how to assign users to roles manually or automatically, see Assign users
to security roles.
Many users, especially external users, access Microsoft Dynamics AX by using Enterprise Portal for
Microsoft Dynamics AX. For more information about how to grant access to Enterprise Portal, see
Enable users to access Enterprise Portal (http://technet.microsoft.com/en-us/library/dd309631.aspx).
Note:
You cannot search for users by using only the Title field. To search on the Title field, you
must also include at least one other field in the search criteria.
Click Next >.
4. The Select users page is displayed. This page shows the results of the AD DS search that was
performed in the previous step. Select the check boxes next to the users to add to Microsoft
Dynamics AX, and then click Next >.
5. Verify the users to be imported into Microsoft Dynamics AX.
The wizard creates user IDs of up to five characters for the new Microsoft Dynamics AX users. The user
ID is the first five characters of the AD DS alias.
When multiple users in the group have the same first five characters in their AD DS aliases, the wizard
automatically generates Microsoft Dynamics AX user IDs that consist of the first four characters of the
AD DS alias, followed by a digit.
You can’t change user IDs while you are running the wizard. For information about how to change a
user ID, see Change a user ID.
Click Next >.
6. The Select roles page is displayed. Use this page to assign security roles to the list of users. The roles
that you select will be assigned to all the users that you are importing. If the users must be assigned
to different roles, you can skip this page and assign roles to individual users after the users are
imported.
When you assign a user to a role by using this wizard, you cannot assign the user to a role in a
specific organization. The user is assigned to the role in all organizations. To modify an individual
user’s settings after you import users, use the User form.
Click Next >.
7. The Select profile page is displayed. Use this page to assign profiles to the list of users. A user profile
determines the content that is displayed on the Role Center page for the users who are assigned to
that profile.
Click Next >.
8. The Completing the Active Directory Import Wizard page is displayed. Click Finish to close the
wizard.
Note:
The user ID is the primary key of the user information table. Renaming the primary key can take
some time, because all references to the key are also updated in the database.
1. Click System administration > Common > Users > Users.
2. Right-click a user in the list and select Record info.
3. Click Rename.
4. Enter a new value for the user ID, and then click OK. You must enter a unique value.
5. Click Yes to confirm.
Monitor users
Microsoft Dynamics AX includes several features to help you monitor which users are currently logged on
to Microsoft Dynamics AX, how frequently a particular user has logged on, and the length of time that a
user has been logged on. The procedures in this topic explain how complete the following actions:
View which users are currently logged on.
Disconnect one or more connected users.
View logon statistics for a specified user.
View which users are currently logged on
Click System administration > Common > Users > Online users.
Disconnect one or more connected users
You can end one or more user sessions from the Online users form. Before you disconnect a user, warn
that user of the impending disconnection so that you do not disrupt an important operation such as a
posting.
1. Click System administration > Common > Users > Online users.
2. Select the user who you want to disconnect. Press and hold the CTRL key to select multiple users.
3. Click End sessions.
Important:
If you disconnect a user because you changed permissions for a role, restart the Microsoft
Dynamics AX server after you make this change. If you do not restart the server, members of
the role might keep their former permissions until the next restart.
View logon statistics for a specified user
1. Click System administration > Common > Users > Users..
2. Select the user for whom you want to view logon statistics.
Manage roles
This section provides information about how to manage roles in Microsoft Dynamics AX.
Important:
Be aware that modifying roles may affect your licensing requirements. For more information
about how licensing relates to security, see the Security roles and licensing white paper
(http://go.microsoft.com/fwlink/?LinkID=228370) for Microsoft Dynamics AX 2012.
1. Click System administration > Setup > Security > Security roles.
2. To create a new role, click New. To modify an existing role, select the role.
3. If you are creating a new role, enter the name that you want to appear for the role in the Application
Object Tree (AOT).
Note:
AOT names must contain only alphanumeric or underscore characters. AOT names cannot
begin with a number, and they cannot contain special characters or spaces.
4. Enter or modify the display name of the role.
5. Enter or modify the description of the role.
6. To add security privileges to the selected role, click Add... to open the Add privileges to role form.
Find the security privileges that you want to add. You can sort and view the privileges by role, process
cycle, or duty/privilege. You can also enter a privilege name or keywords in the Find field.
Tip:
Security is organized hierarchically. Permissions on specific application elements are
combined into privileges, privileges are combined into duties, and duties are grouped into
process cycles. You can assign either duties or privileges to roles. For more information about
the security hierarchy, see Security architecture of the Microsoft Dynamics AX application.
Note:
Overrides for securable objects are not associated with specific duties or privileges. If you
apply an override, the access level for the securable object is set for the role, regardless of
access levels specified by the duties and privileges assigned to that role.
8. To limit access to rows, or records, in the database based on a query, you can use record-level
security. To apply filters for record-level security, right-click the role, and then click Record-level
security. For more information, see Manage record level security.
Important:
The record-level security feature will become obsolete in a future release. If you are setting up
new filters, we recommend that you create data security policies by using the extensible data
security framework.
9. When you have finished modifying the role, click Close in the Security roles form.
Important:
Users must exist in Microsoft Dynamics AX before they can be assigned to roles. Even if you use
automatic role assignment, users are not automatically added to Microsoft Dynamics AX. For
more information about how to add users, see Create new users in Microsoft Dynamics AX.
You can assign individual users or Active Directory groups to a role.
Users can be assigned to multiple roles. If a user is assigned to multiple roles that grant different levels of
access to the same item, the user has the highest level of access that the various roles grant. For example,
if the user is a member of both role A, which has View access to sales orders, and role B, which has Create
access to sales orders, the user has Create access to sales orders.
Automatically assign users to roles
Set up rules for automatic role assignment to guarantee that role membership is based on current
business data. If you use automatic role assignment, permissions are automatically updated when people
change jobs in an organization.
Tip:
If automatic role assignment is not working as expected, make sure that the batch job is enabled.
Additionally, make sure that the default batch group is assigned to a batch server, and that batch
servers are currently processing batches. Upgrades and other non-interactive processes can
disable the batch job, and batch servers may be configured to run only at certain times of the day.
If a rule for automatic role assignment encounters a conflict that is related to the segregation of duties,
the user who has the conflict cannot be automatically assigned to the role. Instead, the user is marked as
excluded from the role. The user is also listed in the Segregation of duties unresolved conflicts form.
(Click System administration > Setup > Security > Segregation of duties > Segregation of duties
unresolved conflicts.) For more information, see Set up segregation of duties.
1. Click System administration > Setup > Security > Assign users to roles.
2. Select a role. The users who are currently assigned to the role are displayed.
3. In the Rules for dynamically assigning users to role pane, click Add rule to open a list of queries
that can be used for automatic role assignment. Queries in the list use the UserInfo table as the
primary data source, and the User field is included in the list of fields.
Important:
By default, the Security administrator role has access to only a subset of tables and fields in
Microsoft Dynamics AX. If the Security administrator role is required to use other tables in a
query, the permissions for the role must be modified to grant access to those tables. For
more information, see Override permissions (form) (http://technet.microsoft.com/en-
us/library/425b809d-947a-4c56-ba20-40811e2b4d93).
4. Select a query in the list.
To modify a query, select it, and then click Edit query. In the Inquiry form, use the Range tab to add
or remove fields. Click OK to save the query. When you save a query, it runs immediately.
5. The rule is assigned a default name. If necessary, you can modify the name or add a description by
typing in the list.
Exclude users from automatic role assignment
Users who are automatically assigned to roles cannot be removed from those roles by the administrator.
However, the administrator can exclude users from roles. When you exclude a user from a role, the user’s
role assignment is no longer controlled automatically. When the rules for automatic role assignment run,
or when an Active Directory group is assigned to a role, excluded users are listed in the role membership,
but they are marked as excluded. The excluded users are not granted the access that is associated with
the role. Excluded users cannot be assigned to the role until the administrator removes the exclusion.
1. Click System administration > Setup > Security > Assign users to roles.
2. Select a role. The users who are currently assigned to the role are displayed.
3. In the Users assigned to role pane, click Manually assign / exclude users to open the Assign users
to or exclude users from role form.
4. Select the users who you want to exclude from the role. To select multiple users, hold down the CTRL
key, and then click each user that you want to exclude.
Warning:
When an Active Directory Domain Services group is assigned to a security role, Microsoft
Dynamics AX is unable to calculate conflicts in segregation of duties for individual users who
are part of the Active Directory Domain Services group.
6. When you have finished making changes, close the Assign users to or exclude users from role form.
Tip:
Security is organized hierarchically. Permissions on specific application elements are combined
into privileges, privileges are combined into duties, and duties are grouped into process cycles.
You can assign either duties or privileges to roles. For more information about the security
hierarchy, see Security architecture of the Microsoft Dynamics AX application.
Note:
AOT names can contain only alphanumeric characters and underscore characters (_). AOT
names cannot begin with a number, and they cannot contain special characters or spaces.
4. Enter or modify the display name of the privilege or duty.
5. Enter or modify the description of the privilege or duty.
6. Add or modify the content of the privilege or duty.
To add an existing privilege to a duty, right-click the privilege in the left pane, and then click
Copy. Right-click the duty, and then click Paste.
To remove a privilege from a duty, right-click the privilege in the left pane, and then click Delete.
To remove a permission from a duty or privilege, select the permission in the central pane, and
then click Remove.
To add permissions to a duty or privilege, click Add... to open the Add permissions to privilege
form. Find the security permissions to add. You can sort the permissions by the location of the
entry points on the main menu or by process cycle. If you sort by process cycle, you can also enter
the permission name or keywords in the Find field.
7. When you have finished modifying the privilege or duty, click Close in the Security privileges form.
Create or modify a process cycle
1. Click System administration > Setup > Security > Security privileges.
2. To create a new process cycle, select the Process cycles node in the left pane, and then click New.
To modify an existing process cycle, select the process cycle.
3. If you are creating a new process cycle, enter the name that appears for the process cycle in the AOT.
Note:
AOT names can contain only alphanumeric characters and underscore characters (_). AOT
names cannot begin with a number, and they cannot contain special characters or spaces.
4. Enter or modify the display name of the process cycle.
5. Enter or modify the description of the process cycle.
6. Add or modify the content of the process cycle.
Verify whether user role assignments comply with new rules for segregation of duties
When you assign users to roles, the rules for segregation of duties are automatically enforced. If you try to
assign a user to roles that contain conflicting duties, you receive an error message. You must then resolve
the conflict either by denying the role assignment or by overriding the conflict.
However, compliance is not verified when you create the rules for segregation of duties. Therefore, it is
possible to create a rule that causes existing user role assignments to conflict. This means that you must
validate compliance after you create new rules.
Use the Verify compliance of user-role assignments with rules for segregation of duties form to
verify whether existing role memberships comply with the rules. You can run the verification process on
demand or as a regularly scheduled batch job.
Warning:
When an Active Directory Domain Services group is assigned to a security role, Microsoft
Dynamics AX is unable to calculate conflicts in segregation of duties for individual users who are
part of the Active Directory Domain Services group.
1. Click System administration > Setup > Security > Segregation of duties > Verify compliance of
user-role assignments.
2. Follow one of these steps:
To run the verification process immediately, click OK. The Infolog form displays the results of the
validation. If there is a conflict, you can double-click the message to open the Users form and
change the user’s role assignments. Conflicts are also logged in the Segregation of duties
conflicts form.
To run the verification process as a batch job, select Batch processing, and then set the other
batch parameters. After the batch job runs, you can review the conflicts in the Segregation of
duties conflicts form.
Verify whether existing roles comply with new rules for segregation of duties
When you create or modify a role, the rules for segregation of duties are automatically enforced. You
cannot assign conflicting duties to a role.
However, compliance is not verified when you create the rules for segregation of duties. Therefore, it is
possible to create a rule that causes an existing role definition to have a conflict. This means that you
must validate compliance manually after you create new rules.
1. Click System administration > Setup > Security > Segregation of duties > Segregation of duties
rules.
2. Select a rule, and then click Validate duties and roles.
The Infolog form is displayed.
If any existing roles violate the selected rule, a message is displayed that contains the name of the
role and the names of the conflicting duties. The administrator must either indicate the mitigation
for the security risk or modify the role so that it does not violate the rules for segregation of
duties.
If no roles violate the selected rule, a message indicates that all roles are in compliance.
Databases Database server Exclude the port that is used by Microsoft SQL For more information, see the
Server. By default, SQL Server uses port 1433. SQL Server documentation.
Application AOS server Exclude the TCP/IP port that is used by the Windows Firewall must be
Object Server AOS instance. By default, AOS uses port enabled on the computer.
(AOS) 2712. Each AOS instance must use a
Setup automatically creates the inbound different port number.
rule "Dynamics AX 6.0 –
Note:
MicrosoftDynamicsAX (RPC)" for the TCP/IP
By default, every
port.
time that you install
Exclude the services WSDL port that is used an additional AOS
by the AOS instance. By default, AOS uses instance on a
port 8101. computer, the
Setup automatically creates the inbound TCP/IP port number
rule "Dynamics AX 6.0 – and the services
MicrosoftDynamicsAX (WSDL)" for the endpoint port
WSDL port. numbers are
Exclude the services endpoint port that is incremented by 1.
used by the AOS instance. By default, AOS For example, by
uses port 8201. default, the second
AOS instance on a
Setup automatically creates the inbound
computer is
rule "Dynamics AX 6.0 –
assigned to TCP/IP
MicrosoftDynamicsAX (NetTCP)" for the
port 2713.
services endpoint port.
Microsoft SQL Report server Exclude the port that is used by Reporting If you are installing Reporting
Server Services virtual directories, if Reporting Services Services extensions in a
Reporting uses a port other than port 80. perimeter network, you may
Services need to add a firewall policy
extensions that enables you to connect
to the Microsoft Dynamics AX
database. For example, if you
are using Forefront Threat
Management Gateway (TMG),
you must add a Non-Web
Server Protocol Rule. For
more information, see
Configuring SQL Server
publishing
(http://technet.microsoft.com
/en-us/library/cc441596.aspx)
in the Forefront TMG
documentation.
Microsoft SQL Analysis server Exclude the port that is used by Analysis For more information about
Server Analysis Services. By default, Analysis Services uses how to configure access to
Services port 2383. Analysis Services through
integration If you are using SQL Server Browser, you Windows Firewall, see the
must also exclude port 2382. SQL Server documentation on
MSDN.
Debugger Developer Exclude AxDebug.exe and its target programs, The debugger uses a
workstation such as Ax32.exe and AxServ32.exe. dynamically allocated TCP
port.
Enterprise Web server Enable the Web Server (HTTP). If you do not enable the Web
Portal for Exclude the port that is used by the Server in Windows Firewall,
Microsoft Enterprise Portal website, if the site uses a you can view the site only
Dynamics AX port other than port 80. from the local server.
Help Server Web server Exclude the port that is used by the Help Server
web site, if the site uses a port other than port
80.
Enterprise Web server Exclude the port that is used by the Search web
Search site, if the site uses a port other than port 80.
Web services Web server Exclude the port that is used by the services External programs use this
web site, if the site uses a port other than port port to consume the
80. Microsoft Dynamics AX web
services that are based on
Internet Information Services
(IIS).
Synch Service Head-office Exclude the port that is used by Microsoft For instructions, see the PCI
communications SQL Server. By default, SQL Server uses Implementation Guide for
server port 1433. Microsoft Dynamics AX 2012
Exclude the port that is used by Synch Feature Pack
Service. By default, Synch Service uses port (http://go.microsoft.com/fwli
16750. nk/?LinkId=237283).
Synch Service Store Enable Internet Protocol security (IPsec). For more information, see the
communications Exclude the port that is used by Microsoft PCI Implementation Guide for
server SQL Server. By default, SQL Server uses Microsoft Dynamics AX 2012
port 1433. Feature Pack
(http://go.microsoft.com/fwli
Exclude the port that is used by Synch
nk/?LinkId=237283).
Service. By default, Synch Service uses port
16750.
Real-time Exclude the port that is used by Real-time For more information, see the
Service Service, if the site uses a port other than port PCI Implementation Guide for
80. Microsoft Dynamics AX 2012
Feature Pack
(http://go.microsoft.com/fwli
nk/?LinkId=237283).
Retail POS Store Exclude the port that is used by Microsoft SQL For more information, see the
communications Server. By default, SQL Server uses port 1433. PCI Implementation Guide for
server Exclude the port that is used by Synch Service. Microsoft Dynamics AX 2012
By default, Synch Service uses port 16750. Feature Pack
(http://go.microsoft.com/fwli
nk/?LinkId=237283).
Retail POS Store database Exclude the port that is used by Microsoft SQL For more information, see the
server Server. By default, SQL Server uses port 1433. PCI Implementation Guide for
On a register that has its own local database, Microsoft Dynamics AX 2012
you only need to open the firewall to SQL Feature Pack
Server if Synch Service is on a computer other (http://go.microsoft.com/fwli
than the register. nk/?LinkId=237283).
Tables
This section lists all database tables that are TPF-enabled by default in Microsoft Dynamics AX and the
authorization requirements for those tables.
Important:
These tables store sensitive data. We recommend that you do not adjust these authorization
requirements, especially in a production environment. Test your changes in a test environment so
that you can study the impact on user-role permissions and make adjustments as necessary.