Microsoft Provisioning System (MPS) provisioning components use a variety of security identities, groups, and roles to implement security. This section describes MPS security components for user accounts, security groups, and roles.
User Accounts
The following MPS security components are related to user accounts. These accounts are automatically created when you deploy MPS with the MPS Deployment Tool:
- MPFClientAcct - This account only has a few permissions.
Most important among these is the ability to submit requests to MPS
with caller's credentials. MPFClientAcct is a member of the
MPFClientAccts group.
- MPFServiceAcct - The systems services for MPS run under
this account. All requests automatically inherit the security
permissions of the MPFServiceAcct, which is the default service
account for provisioning services.
- MPSPlansAcct - This account is a domain account that
belongs to the Domain Users and MPSPlansAccts security groups. It
is used to control access to the Customer Plan database.
- MPSPrivAcct-xxxxxx - This account name has a randomly
generated six-digit suffix and a randomly generated password. This
user is added as a member of the MPSFrontPageAccts group in order
to grant sufficient permissions to perform provisioning
operations.
Security Groups
The following MPS security components are related to security groups.
- MPFClientAccts - By default, MPFClientAcct is the only
member of this group. Other members can be added, which can be
desirable if client-side services sending MPS requests must run
under other accounts for security reasons.
- MPSPlanAccts - This security group is used to grant
limited access to the Customer Plan database. This group is added
as a SQL Server logon to the server hosting the plan database. This
logon is then added to the HECustomerRole database role.
Security Roles
The following MPS security components are related to roles:
- HECustomerRole - This SQL Database Role is granted
execute privileges on the Customer Service Plan database stored
procedures. The MPSPlansAccts security group is a member of this
role in Microsoft hosting solution deployments.
- OrgCreators - This is an MPS role implemented by the MPS
Managed Namespaces. This role provides the caller with permissions
to create, delete, and modify organizations and users in an
organization. A caller will have this authorization for
myOrganization if the caller is a member of either Admins@Hosting,
Admins@myParentOrganization, or CSRAdmins@myParentOrganization,
where myParentOrganization is the parent of
myOrganization.
- UserCreators - This is a MPS role implemented by the MPS
Managed Namespaces. This role provides the caller with permissions
to create and delete users within that organization. A caller will
have this authorization for myOrganization if the caller is a
member of either Admins@myOrganization, Admins@Hosting,
Admins@myParentOrganization, or CSRAdmins@myParentOrganization,
where myParentOrganization is the parent of
myOrganization.
Security and Named Procedures
The named procedures for objects with fully implemented Microsoft Windows Server 2003 or Windows Server 2008 security can implement security properly by simply attempting to manipulate the object with the caller as the security identity. If the caller has permissions on the object, the call will succeed. If not, the call will fail due to security restrictions.
However, this straightforward process will not work for objects that cannot use Windows Server 2003 or Windows Server 2008 security or for objects that only partially implement Windows Server 2003 or Windows Server 2008 security. Procedures that manipulate these objects therefore perform explicit permissions checking to ensure that the caller is authorized to perform the requested operation.
There are two categories of authorization for which named procedures test, as follows:
- OrgCreators
- UserCreators
These authorizations are implemented using Active Directory objects, but they are not themselves Active Directory objects or any other kind of object. They exist only as programming constructs within the named procedures.