Exchange Online customers: Microsoft is retiring Exchange Web Services. Here is what administrators need to do.
Notate Resource Center

Network drives (SMB file shares)

For IT administrators. How to give Notate users access to your on-premises Windows file shares (SMB), deliver the configuration through your MDM, and provide the secure network path the app needs, including the extra requirements for Kerberos.

Notate's file manager can show on-premises Windows file shares alongside SharePoint, OneDrive, Teams and email attachments. You provision shares centrally through MDM policy; users do not add servers themselves. Each user enters their own domain credentials the first time they open a share, and Notate authenticates with NTLM (the default) or Kerberos.

At a glance. Two policy keys are enough for a basic NTLM deployment: allowSMB and smbConnectionList. Kerberos adds two more: useSMBKerberos and kerberosConfig. Everything else in this chapter is about the network path that carries the traffic.

Prerequisites

Requirement

Details

Managed Notate app

Notate deployed and managed through your MDM: Microsoft Intune, Ivanti (formerly MobileIron), BlackBerry UEM, Citrix, or another AppConfig-compliant MDM.

Reachable file servers

One or more SMB file servers on the corporate network, with the shares and NTFS permissions your users need.

Secure tunnel

A per-app VPN or full-device VPN that routes device traffic to the file servers (and, for Kerberos, to the domain controllers). Required for every deployment, including BlackBerry Dynamics.

Directory credentials

Standard Active Directory accounts. Users enter these in the app; they are never stored in policy.

Kerberos only

Reachable KDCs (domain controllers), an accurate device clock, and the realm details needed to build krb5.conf.

Secure tunnel requirements

SMB (TCP 445) is never exposed directly to the internet, and mobile devices are usually off the corporate network, so the device needs a secure tunnel before it can reach any file server.

Model

How it works

Best for

Per-app VPN (recommended)

Your MDM maps the Notate app to a VPN profile, so only Notate's traffic tunnels to the corporate network. Notate has been validated with Citrix NetScaler (Secure Access).

Most deployments: least impact on the device, cleanest security boundary.

Full-device VPN

All device traffic tunnels through the corporate gateway. Simpler to configure, but routes unrelated traffic through your network.

Fully managed or locked-down devices.

On iPhone and iPad, associate the per-app VPN payload with the Notate app's bundle identifier in your MDM, and set it to connect on demand, so opening a share starts the tunnel without the user starting the VPN by hand.

BlackBerry Dynamics also needs a VPN for SMB. SMB is not carried by the BlackBerry Dynamics secure tunnel. BlackBerry's secure connectivity routes only its own networking interfaces, and Notate's SMB connection uses low-level network sockets outside that layer, so BlackBerry Proxy is not in the path. Use a per-app or device VPN on BlackBerry UEM as you would on any other MDM. Two BlackBerry options work: BlackBerry Secure Connect Plus, the per-app VPN built into BlackBerry UEM, and CylanceGATEWAY, BlackBerry's cloud-delivered zero-trust network access service. Validate the tunnel in your environment before a broad rollout.

What the tunnel must reach

The tunnel must give the device a route to your internal file servers and DNS and, for Kerberos, to your domain controllers. Split-tunnel configurations must explicitly include those subnets.

Service

Port

NTLM

Kerberos

Destination

SMB file access

TCP 445

Required

Required

Each file server

DNS

UDP/TCP 53

Recommended

Required

Internal DNS servers

Kerberos ticket granting

TCP/UDP 88

Not needed

Required

KDCs (domain controllers)

Kerberos password change

TCP/UDP 464

Not needed

Optional*

kpasswd server

LDAP directory lookups

TCP 389 / 636

Not needed

Optional*

Domain controllers

Time synchronization

UDP 123

Not needed

See the Kerberos notes below

Internal NTP, if used

* Needed only if your environment requires in-app password changes or LDAP referrals. Most deployments do not.

Why Kerberos needs more than NTLM: with NTLM, the device authenticates over the SMB session on port 445 and the file server checks the response with a domain controller, so the device only needs to reach the file server. With Kerberos, the device first obtains a ticket directly from the KDC on port 88, so the tunnel must also reach the domain controllers and the DNS that locates them.

Policy keys

Deliver these application policies through your MDM. Key names are case-sensitive.

Key

Type

Default

Purpose

allowSMB

Boolean

true

Master switch for network drives. Set to false to hide the Network Drives section entirely.

smbConnectionList

String, up to 1024 characters

empty

The shares users see, comma-separated.

useSMBKerberos

Boolean

false

false = NTLM, true = Kerberos.

kerberosConfig

String, up to 4096 characters

empty

Your krb5.conf, Base64-encoded. Kerberos only.

smbConnectionList

Each entry is a path to a share followed by an optional friendly name, separated by a vertical bar: server/share/optional/subpath|Friendly Name. The first segment is the server, as a host name or IP address. The friendly name is what the user sees; without it, Notate shows the path. Separate shares with commas.

fileserver01.example.com/Corporate|Corporate Drive,192.168.4.20/Engineering/Specs|Eng Specs

Users cannot add servers. Servers come only from smbConnectionList. Users can enter credentials for a provisioned share and disconnect from it, but they cannot define new servers, which keeps network drive access under your control.

Configuring Kerberos

Use Kerberos when your file servers require it or NTLM is disabled in your environment. NTLM is the simpler choice and needs none of the steps below.

Step 1: Build your krb5.conf

Create a standard MIT krb5.conf for your realm and KDCs. A minimal file, with example names to replace:

[libdefaults]
    default_realm = EXAMPLE.COM
    dns_lookup_kdc = false
    dns_lookup_realm = false
    rdns = false
    dns_canonicalize_hostname = false
    forwardable = true
    noaddresses = true

[realms]
    EXAMPLE.COM = {
        kdc = dc1.example.com
        admin_server = dc1.example.com
    }

[domain_realm]
    .example.com = EXAMPLE.COM
    example.com = EXAMPLE.COM

Setting

Meaning

default_realm

Your Active Directory domain, in UPPERCASE.

kdc

A domain controller reachable through the tunnel on port 88. Add more lines for redundancy.

admin_server

The kpasswd host, usually the same domain controller.

dns_lookup_kdc

false uses the kdc lines you list (recommended). true finds KDCs through DNS SRV records and needs DNS through the tunnel.

dns_lookup_realm

Leave false.

rdns

false, so host names are not reverse-resolved and service names match the names you connect to.

noaddresses

true, so tickets are not tied to a source IP address. Important behind a VPN.

forwardable

true for typical enterprise use.

[domain_realm]

Maps your DNS domains to the realm.

Kerberos essentials: the realm must be UPPERCASE; each KDC must be resolvable and reachable through the tunnel on port 88; and the device clock must be within five minutes of the KDC, or ticket requests fail.

Step 2: Encode krb5.conf as Base64

MDM policy values are single-line strings, so the multi-line file must be converted to one Base64 line. On a Mac, run base64 -i krb5.conf in Terminal. On Windows, run [Convert]::ToBase64String([IO.File]::ReadAllBytes("krb5.conf")) in PowerShell. You can also use an online encoder such as base64encode.org with the UTF-8 character set.

Paste the whole result as the value of kerberosConfig, as one line with no breaks or spaces. Re-encode and update the policy whenever krb5.conf changes.

Step 3: Turn Kerberos on

Set useSMBKerberos to true and confirm kerberosConfig is filled in. Check that the tunnel reaches the KDCs on port 88 and DNS on port 53. Once the policy reaches the device, connections use Kerberos.

Delivering the configuration through your MDM

The keys are the same on every MDM; only the format differs.

Microsoft Intune

In an app configuration policy for the managed Notate app, add the keys as name and value pairs. The Intune template already includes allowSMB, smbConnectionList and useSMBKerberos; add kerberosConfig as a string.

<key>allowSMB</key><true />
<key>useSMBKerberos</key><true />
<key>smbConnectionList</key>
<string>fileserver01.example.com/Corporate|Corporate Drive</string>
<key>kerberosConfig</key>
<string>(your Base64-encoded krb5.conf)</string>

Ivanti and other AppConfig MDMs

Deliver the keys in the standard managed app configuration format, or enter them in your MDM's app configuration screen:

<managedAppConfiguration>
  <bundleId>com.shafersystems.notate</bundleId>
  <dict>
    <boolean keyName="allowSMB"><defaultValue><value>true</value></defaultValue></boolean>
    <boolean keyName="useSMBKerberos"><defaultValue><value>false</value></defaultValue></boolean>
    <string keyName="smbConnectionList"><defaultValue><value></value></defaultValue></string>
    <string keyName="kerberosConfig"><defaultValue><value></value></defaultValue></string>
  </dict>
</managedAppConfiguration>

BlackBerry UEM and Citrix

These consoles show Notate's configuration as a form. Fill in the fields:

Field

What to enter

Windows File Shares (allowSMB)

Turn on to allow network drives.

SMB Connection List

The comma-separated share list.

KRB5.Conf file contents

The Base64-encoded krb5.conf (Kerberos only).

What users see

Once the policy reaches the device, provisioned shares appear in the file manager under Network Drives. The first time a user opens a share, Notate asks for a domain user name and password. The user name can be a plain user name, such as jsmith, or domain-qualified, such as EXAMPLE\jsmith or jsmith@example.com. Credentials are saved for each server. Users can disconnect a share under Settings, then Accounts, then Disconnect SMB.

Make sure the tunnel is connected, or set to connect on demand, before the user opens a share. If the device cannot reach the file server (or, for Kerberos, the KDC), the credential prompt fails even with the correct user name and password.

Troubleshooting

Start with Test Connection

Notate has a Test Connection wizard that checks each part of the connection in turn and says which step failed and why. To open it, long-press the server under Network Drives and choose Test Connection, or tap Diagnose… on any network drive error message.

Step

What it checks

If it fails

1. Configuration

That the settings you delivered through your MDM are valid.

Check smbConnectionList and, for Kerberos, useSMBKerberos and kerberosConfig.

2. Server name lookup (DNS)

That the device can turn the server name into an address.

Usually the VPN is not connected, or it does not carry your internal DNS.

3. File server reachable

That the file server answers on the network.

The tunnel's routes must include the file server's subnet on TCP 445.

4. Sign-in server reachable

Kerberos only: that a domain controller answers. Skipped when you use NTLM.

The tunnel must reach the domain controllers on port 88. Check the realm (UPPERCASE) and KDC names in krb5.conf, and that the device clock is within five minutes of the domain controller.

5. Connect and open the share

The end-to-end test. It also reports how the user signed in, for example with Kerberos or with NTLM.

Check the path in smbConnectionList and the user's NTFS permissions on the share.

Each step passes, warns or fails, and a failed step shows the likely cause. Copy Report puts a plain-text summary of the results on the clipboard, ready to paste into an email or a support request. On managed devices it follows your copy-and-paste data protection policy.

Common fixes

  • Sign-in fails. The user taps Sign In… on the error and enters their password again. If their network password was changed recently, this replaces the old saved password.

  • The VPN dropped. Reconnect it. Notate picks the share up again on its own; there is no need to restart the app.

  • Server names do not resolve. Notate looks up server names through the device's own DNS, so names work whenever the tunnel provides your internal DNS. Connecting by IP address also works.

  • The first connection is slow. The first connection after the app opens can take a few extra seconds while Notate starts its network drive support. Later access is fast.

Raising a support request

If the problem continues, raise a support request and include the Copy Report output from Test Connection. It already says which step failed, how sign-in was attempted and what kind of error occurred. If you can, also collect the Notate logs as described in How do I enable logging in Notate?, and add the device, operating system version and Notate version.

Last updated: