What it scans
Regular files in one SMB share, including its readable subfolders. Use this for Windows file servers, Synology, TrueNAS, Unraid and QNAP. For an existing host-mounted share, you can instead use Local mounts.
What you need
A customer-run agent with network access to the server on TCP 445. Create a dedicated scan account with list, traverse, read data and read permissions (READ_CONTROL). It needs no write or admin rights.
Step 1: Create a read-only scan account
Choose your server below. Labels vary by NAS release. Review inherited group grants too: a read-only user grant does not remove write rights from another group.
Windows file server
- For a domain account, open Active Directory Users and Computers → Users →
New → User. Create
myrikeep_scanas an ordinary user. For a standalone server, use Computer Management → Local Users and Groups → Users → New User. - On the selected folder, open Properties → Sharing → Advanced Sharing → Permissions. Add the account and allow Read only.
- Open Properties → Security → Edit → Add. Add the same account and allow Read & execute, List folder contents and Read. Check inheritance reaches the intended files. Do not replace other users' ACLs.
- In Security → Advanced → Effective Access, select the account and verify the intended files are readable. Avoid membership in Administrators or Backup Operators.
Synology DSM
- Control Panel → User & Group → User → Create: create
myrikeep_scan, without membership inadministrators. - Control Panel → Shared Folder → select share → Edit → Permissions: select local users and grant this account Read only for the chosen share.
- In File Station, open the target folder's Properties → Permission. Check inherited read, list and traverse rights on the intended subfolders. Remove conflicting grants for this scan account only.
See Synology shared-folder permissions.
TrueNAS
- In SCALE, Credentials → Users → Add: create an ordinary local user and enable SMB Access (older releases call this Samba Authentication). Do not choose an administration role. CORE uses Accounts → Users → Add.
- Datasets → select dataset → Permissions → Edit ACL: add a user entry with the Read preset, with traversal on parent datasets as needed. Check inheritance; do not strip or replace the existing ACL.
- Shares → Windows (SMB) Shares → select share → Edit Share ACL: grant the user READ. CORE calls the shares menu Sharing. Keep the SMB service enabled. Root cannot be the SMB scan account.
See TrueNAS SMB shares and user accounts.
Unraid
- Users → Add User: create
myrikeep_scanwith a password. Use a share user; therootadministration account cannot log into SMB shares. - Shares → select share → SMB Security Settings: set Export to Yes and Security to Private.
- In SMB User Access, give the scan user Read-only for this share. Leave unrelated users' permissions intact. Check filesystem permissions if existing files still cannot be read.
QNAP QTS / QuTS hero
- Control Panel → Privilege → Users → Create → Create a User: create
myrikeep_scanwithout administrator group membership. - Control Panel → Privilege → Shared Folders → select share → Edit Shared Folder Permission: choose the user and set Read Only (RO).
- If Advanced Folder Permissions or Windows ACL support is enabled, inspect the selected folder's permissions and inherited read/traverse entries too. Keep the scan account unable to change files or permissions.
Step 2: Check SMB and account settings
Enable SMB2 or SMB3 on the server; SMB1 is unsupported. Keep SMB signing enabled or required. The agent uses the SMB client's negotiated protocol and signing; there is no console dialect/signing switch. In DSM these controls are under Control Panel → File Services → SMB → Advanced Settings; see Synology SMB settings.
Warning: Do not disable signing to fix a login.
For a domain user, put myrikeep_scan in secret username and the NTLM domain
such as EXAMPLE in domain. The agent logs in as EXAMPLE\myrikeep_scan.
For a NAS/local user, omit domain unless the server requires its NetBIOS name.
Use the server account, not an unrelated account on the agent host.
Step 3: Add the connection
Open Connections → Add connection, select SMB file share, assign your agent, and choose Local credential catalog. Enter the host and share name separately. Save the credential files below on the agent. Wait for present, then queue a small scan in Scans. Check Coverage as well as Findings.
Connection settings table
| Console field | Example | Required or optional |
|---|---|---|
| Connection name | Office reports |
Required; unique in workspace |
| Type | SMB file share (smb) |
Required |
| Host | nas.example.test |
Required; no URL or share path |
| Share | reports |
Required; not a UNC path |
| Port | 445 |
Optional; default 445 |
| Agent | Office agent |
Required; same workspace |
| Credential mode | Local credential catalog | Required |
| Credential name | SMB_REPORTS |
Required; uppercase alias |
| Exclude patterns (View/edit) | *.tmp |
Optional; one glob per line |
| Enabled (connection row) | Enabled | Disable to stop new scans |
Username and domain belong in the secret, not in console fields.
Secret file
Save /srv/myrikeep/secrets/SMB_REPORTS:
{"username": "myrikeep_scan", "password": "<SCAN_ACCOUNT_PASSWORD>", "domain": "EXAMPLE"}
Omit domain entirely for a local NAS user if unnecessary. Merge this entry into
/srv/myrikeep/secrets/myrikeep-credentials.json:
{"version": 1, "credentials": {"SMB_REPORTS": {"type": "smb", "source": {"kind": "file_json", "path": "/run/secrets/SMB_REPORTS"}}}}
Use the ownership, modes and read-only directory mount in Agent credentials. These are placeholders; replace the password only on your host.
Scope, exclusions and schedules
One connection covers one share. Use a separate read-only share if you need a
smaller provider-enforced boundary. In Connections → View/edit, exclude
*.tmp, Archive/* or */.snapshot/* before content reads. Matching is
case-sensitive against relative paths and basenames. See
Getting started for schedules and cadence.
"Who can see it" support
The agent inspects file DACLs for broad read grants, including Everyone, Authenticated Users and BUILTIN Users. Domain Users needs a known domain SID mapping configured by the agent operator. It does not expand group membership. Share ACL inspection is unavailable, so SMB sharing results remain partial; no broad grant does not prove restricted access. Last-write time supports age review. Last-access time is unreliable. See Who can see it.
Troubleshooting
| State or error | What to do |
|---|---|
unknown credential |
Wait for a current-revision heartbeat; check agent online status and assignment. |
missing / credential_missing |
Match the catalog alias and smb type; check directory mount. |
Invalid / credential_config_invalid |
Check exact JSON fields, nonempty values, file owner/mode and no symlinks. |
present |
Secret shape is valid; this does not test SMB login or file access. |
source_error / cannot open SMB session |
Check DNS, TCP 445, username/domain, password, SMB2/3 and signing. Inspect agent diagnostics locally. |
| Access denied / cannot list / cannot read | Check both share and file ACLs, traversal and inherited denies as the scan user. |
Sharing access_denied |
Allow reading file permissions (READ_CONTROL); content access alone may be insufficient. |
| Paused / Migration paused / Disabled | Resume the agent, assign and save a valid migrated connection, or enable the connection. |
signin_required |
Only personal-drive OAuth uses this state. SMB uses its catalog password. |
Limits
No writes, permission changes or share discovery. Symlinks, junctions, other reparse points and special files are skipped. Sampling and parser limits apply: PDF text, modern Office and common text formats have parsers; other formats get strings-only checks. Text in images and scanned PDFs needs OCR, an optional premium feature a workspace owner enables; it runs inside your agent with the OCR agent image. A completed scan can still have skipped files; inspect Coverage.