MBAM Database configuration – minimum permissions

Hello

It’s Rafal Sosnowski from Microsoft Dubai Security PFE Team. For some of my customers it is unclear what are required minimum permissions to install MBAM Database components. Some time ago I have done some analysis of this and want to share with you my findings.

Microsoft BitLocker Administration and Monitoring (MBAM) provides enterprise management capabilities for BitLocker and BitLocker To Go. MBAM simplifies deployment and key recovery, provides centralized compliance monitoring and reporting. For big enterprises that have or plan to have machines encrypted with Bitlocker – we recommend using MBAM.

MBAM works in client – server mode where MBAM agent installed on the end user laptops communicates with MBAM frontend (IIS) to send compliance data and Bitlocker recovery keys. Then this data is sent to MBAM backend (SQL) and stored there.

Since version 2.5 installation and configuration of MBAM components have been separated. To install MBAM binaries you just need to be local admin on the box. To configure these binaries, you need to have different permissions depending on the MBAM component you want to configure.

To configure MBAM 2.5 SP1 Database Components on your backend you have to have SQL Server 2008 R2 SP1 or higher and have following permissions on the SQL:

Task executed by MBAM setup Min. permissions required Database affected
Create security logins and groups securityadmin master
Create databases dbcreator -
Check SQL Agent service * processadmin -
Create MBAM certificate from Master Key ** sysadmin master
Create job “CreateCache” (only MBAM 1.0 and 2.0) *** sysadmin msdb

* only for MBAM 1.0 and 2.0. Setup was checking if the SQL Agent was started and start-up type was set to “Automatic”. This was required by the Job “CreateCache” described below.

** it was required during installation of MBAM 1.0. Since MBAM 2.0 it is optional task done manually in order to enable TDE (Transparent Data Encryption).

*** this job was used by SQL to refresh data for Enterprise Compliance Report every 6 hours. This job is no longer required since MBAM 2.5 because data is always up to date in all reports.

 

If you don’t have any of these permissions, you will see very generic error:

Now if you go to the Event Log and look at MBAM-Setup\Admin Log you will find more comprehensive error 401:

Exception:

Microsoft.Mbam.Setup.Common.SetupException: An error occurred deploying the Data Tier Application ---> System.Data.SqlClient.SqlException: User does not have permission to perform this action. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)

 

If you don’t have enough permissions your installation will fail. Let’s see some examples of failing steps in SQL Profiler during MBAM installation (below trace is from MBAM 2.0):

Create logins (example 1):

Create logins (example 2):

Create logins (example 3):

Create job:

Of course if you don’t want to bother with all of these permissions you can simply assign sysadmin role to user which is configuring MBAM Database components – but in general it is not good practice to give sysadmin role to anyone.

So to summarize, in order to install and configure MBAM 2.5 SP1 you need following permissions:

Securityadmin and dbcreator.

Minimum required permissions to install MBAM 1.0 and 2.0 are : sysadmin

I hope it has been informative for you and see you soon.