MicroStrategy ONE
Intelligence Server Configuration for Integrated Authentication
Configuring Intelligence Server on Windows
For users with Intelligence server deployed on a Windows platform do not need to perform any additional configuration. Authentication is passed between libraries so a Kerberos configuration file and keytab are not needed. If Intelligence server is running on domain account, the account needs to be an administrator or be enabled to act as part of the operating system.
Continue to Developer Configuration for Integrated Authentication to complete setup.
Configuring Intelligence Server on Linux for Integrated Authentication
The configurations listed below are required to configure Intelligence server with your Windows domain controller and Kerberos security.
Kerberos only supports US-ASCII characters. Do not use any special characters when installing or configuring Kerberos.
You have performed the steps described in Active Directory Account Configuration.
Install Kerberos 5
You must have Kerberos 5 installed on your Linux machine that hosts Intelligence server. Your Linux operating system may come with Kerberos 5 installed. If Kerberos 5 is not installed on your Linux machine, refer to the Kerberos documentation for steps to install it.
Ensure that the Environment Variables are Set
Once you have installed Kerberos 5, you must ensure that the following environment variables have been created:
The variables must be set when the Intelligence server starts in order to take effect.
Variable |
Description |
Default |
Required/Optional |
${KRB5_HOME} |
Location of all Kerberos configuration files |
/etc/krb5 |
Optional |
${KRB5_CONFIG} |
Location of the default Kerberos configuration file |
/etc/krb5/krb5.conf |
Required |
${KRB5CCNAME} |
Location of the Kerberos credential cache |
/etc/krb5/krb5_ccache |
Optional |
${KRB5_KTNAME} |
Location of the Kerberos keytab file |
/etc/krb5/krb5.keytab |
Required |
For Keberos Constrained Delegation: The environment variable ${KRB5_CLIENT_KTNAME} needs to be set to point to the keytab file used by Intelligence server.
Configure the krb5.Keytab File for the Intelligence Server
You must create and configure the krb5.keytab
file. The steps to configure this file on your Linux machine are provided in the procedure below.
The procedure below requires a few variables to be entered for various commands. This includes information you can gather before you begin the procedure. The required variables in the following procedure are described below:
ISMachineName
: The name of the Intelligence server machine.ISPort
: The port number for Intelligence server.KeyVersionNumber
: The key version number, retrieved as part of this procedure.EncryptionType
: The encryption type used.We recommend that you use
rc4-hmac
as the encryption type. Other encryption types may cause compatibility issues with the Windows Active Directory.DOMAIN_REALM
: The domain realm for your Intelligence server, which must be entered in uppercase.
To Create a krb5.keytab File
- Log in to your Linux machine.
- Retrieve the key version number for your Intelligence server service principal name, using the following command:
kvno MSTRSVRSvc/
ISMachineName
:
ISPort
@DOMAIN_REALM
The key version number is displayed on the command line.
-
In the command line, type the following commands:
Copyktutil
addent -password -p MSTRSVRSvc/ISMachineName:ISPort@DOMAIN_REALM -k KeyVersionNumber -e EncryptionType
wkt /etc/krb5/krb5.keytab
exit -
To verify the keytab file, type the following command:
Copykinit -k -t /etc/krb5/krb5.keytab MSTRSVRSvc/ISMachineName:ISPort@DOMAIN_REALM
The command should run without prompting you for a username and password.
Configure the krb5.conf File for the Intelligence Server
You must create and configure a file named krb5.conf
. This file is stored in the /etc/krb5/
directory by default.
If you create a krb5.conf
file in a directory other than the default, you must update the KRB5_CONFIG
environment variable with the new location. Refer to your Kerberos documentation for steps to modify the KRB5_CONFIG
environment variable.
The contents of the krb5.conf
should be as shown below:
[libdefaults]
default_realm = DOMAIN_REALM
default_keytab_name = FILE:/etc/krb5/krb5.keytab
forwardable = true
no_addresses = true
[realms]
DOMAIN_REALM = {
kdc = DC_Address:88
admin_server = DC_Admin_Address:749
}
[domain_realm]
.domain.com = DOMAIN_REALM
domain.com = DOMAIN_REALM
.subdomain.domain.com = DOMAIN_REALM
subdomain.domain.com = DOMAIN_REALM
The variables in the syntax above are described below:
DOMAIN_REALM
: The domain realm used for authentication purposes. A domain realm is commonly of the formEXAMPLE.COM
, and must be entered in uppercase.domain.com
andsubdomain.domain.com
: Use this for all domains and subdomains whose users must be authenticated using the default Kerberos realm.DC_Address
: The host name or IP address of the Windows machine that hosts your Active Directory domain controller. This can be the same address asDC_Admin_Address
.DC_Admin_Address
: The host name or IP address of the Windows machine that hosts your Active Directory domain controller administration server. This can be the same address asDC_Address
.