Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The SMB Connector can be configured using the Rest API. It requires the following entities to be created:

  • Connection
  • Connector
  • Seed
  • Credential
  • Seed

Bellow Below are the examples of how to create the Connection and , the Seed, the Credential. For the General Connector Configuration, please check this page.

Easy Heading Free
navigationTitleOn this Page
navigationExpandOptionexpand-all-by-default


Create Connection


Field
Optional
RequiredDefaultMultipleNotesExample
type
No
Yes-NoThe value must be "smb"."smb"
description
No
Yes-NoName of the connection object."smbConnection"
credential
No
Yes-NoThe
id
ID of the credential to be used with this seed. The credential type must match the seed type."602d3700-28dd-4a6a-8b51-e4a663fe9ee6"
hostname
No
Yes-NoHostname where the shared directory is located."shared.example.com"
port
No
Yes445NoPort where the SMB protocol is used."445"
properties
No
Yes-NoConfiguration object
disableFetch
Yes
NofalseNoCheck to disable the connector fetcher, only metadata will be collected.true / false
verboseSMBJ
Yes
NofalseNoCheck to enable SMBJ logging. (WARNING) Enabling this would decrease performance.true / false
stopOnScanError
Yes
NotrueNoIf enabled, the crawl will stop if there is an error on the scan phase.true / false
indexContainers
Yes
NofalseNoEnable to index the directories.true / false
scanRecursively
Yes
NotrueNoEnable to scan discovered directories recursively.true / false
include
Yes
No

[ ]

YesPatterns to match against document URL, if any of them match, the document will be included in the crawl.[ ".*pdf$", ".*docx$" ]
exclude
Yes
No[ ]YesPatterns to match against document URL, if any of them match, the document will be excluded from the crawl.[ ".*png$", ".*jpeg$" ]
scanExcludedItems
Yes
NofalseNoEnable to force the scan of excluded directories, so child items within the scope can be found.true / false
fetchACLs
Yes
NotrueNoCheck to retrieve owner, group and ACL information.true / false
resolveSIDs
Yes
NotrueNo
Check to resolve retrieved SIDs from owner, group and ACL.
true / false
addACLSID
Yes
NofalseNoCheck to include SID value on ACL output.true / false
addACLEncodedSID
Yes
NofalseNoCheck to include Encoded SID (Base 32) value on ACL output.true / false
addACLFlags
Yes
NofalseNoCheck to include ACL flags on ACL output.true / false
addACLType
Yes
NofalseNoCheck to include ACL type on ACL output.true / false
addACLAccessMask
Yes
NofalseNoCheck to include ACL access mask on ACL output.true / false
enableDFS
Yes
NotrueNoDistributed File System (DFS) resolutiontrue /false
connectionTimeout
No
Yes6000NoTimeout in milliseconds for each
smb
SMB request."6000"
maxRetries
No
Yes5NoMaximum retries permitted per document."5"
baseBackoff
No
Yes500NoBase time for the
backoff
back off sleeps (in ms)."500"
backoffMultiplier
No
Yes2.0NoMultiplier factor to be used for the
backoff
back off time."2.0"
lastAccessedUpdates
Yes
NofalseNoCheck to restore the last accessed date on the documents processed by the connector. WARNING: Requires a user with permissions for writing. This is not supported by windows.true /false
staticAcl
Yes
No

[ ]

YesStatic ACL configuration object
name
No
Yes-NoName of the static ACL."group1"
domain
Yes
No""NoDomain of the static ACL."testDomain"
entity
Yes
No"user"NoEntity (user / group) represented by the static ACL."user" / "group"
access
Yes
No"allow"NoAccess (allow / deny) granted by the ACL."allow" / "deny"

Example

Code Block
themeRDark
titlePOST aspire/_api/connections
{
    "type": "smb",
    "description": "SMB Test Connector",
	"credential": "2a5ca234-e328-4d40-bb2a-2df3e550b065",
    "properties": {
        "host": "192.168.0.80",
        "port":"445",
        "disableFetch": false,
        "verboseSMBJ": false,
        "stopOnScanError": true,
        "indexContainers": true,
        "scanExcludedItems": true,
        "includes": ".*\\.txt",
        "excludes": ".*\\.png",
		"fetchACLs":true,
        "resolveSIDs": true,
		"addACLSID": false,
		"addACLEncodedSID": false,
		"addACLFlags": false,
		"addACLType" : false,
		"addACLAccessMask": false,
		"enableDFS": true,
		"connectionTimeout": 60000,
		"maxRetries": 5,
		"baseBackoff": 500,
		"backoffMultiplier": 2.0,
		"lastAccessedUpdates": false,
        "staticAcl": [{
                "name": "test-user",
                "domain": "test-domain",
                "entity": "user",
                "access": "allow"
            }, {
                "name": "test-group",
                "domain": "",
                "entity": "group",
                "access": "deny"
            }
        ]
    }
}

Update Connection


FieldOptional
Field
OptionalDefaultMultipleNotesExample
Required
DefaultMultipleNotesExample
type
No
Yes-NoThe value must be "smb"."smb"
description
No
Yes-NoName of the connection object."smbConnection"
credential
No
Yes-NoThe
id
ID of the credential to be used with this seed. The credential type must match the seed type."602d3700-28dd-4a6a-8b51-e4a663fe9ee6"
hostname
No
Yes-NoHostname where the shared directory is located."shared.example.com"
port
No
Yes445NoPort where the SMB protocol is used."445"
properties
No
Yes-NoConfiguration object
disableFetch
Yes
NofalseNoCheck to disable the connector fetcher, only metadata will be collected.true / false
verboseSMBJ
Yes
NofalseNoCheck to enable SMBJ logging. (WARNING) Enabling this would decrease performance.true / false
stopOnScanError
Yes
NotrueNoIf enabled, the crawl will stop if there is an error on the scan phase.true / false
indexContainers
Yes
NofalseNoEnable to index the directories.true / false
scanRecursively
Yes
NotrueNoEnable to scan discovered directories recursively.true / false
include
Yes
No

[ ]

YesPatterns to match against document URL, if any of them match, the document will be included in the crawl.[ ".*pdf$", ".*docx$" ]
exclude
Yes
No[ ]YesPatterns to match against document URL, if any of them match, the document will be excluded from the crawl.[ ".*png$", ".*jpeg$" ]
scanExcludedItems
Yes
NofalseNoEnable to force the scan of excluded directories, so child items within the scope can be found.true / false
fetchACLs
Yes
NotrueNoCheck to retrieve owner, group and ACL information.true / false
resolveSIDs
Yes
NotrueNo
Check to resolve retrieved SIDs from owner, group and ACL.
true / false
addACLSID
Yes
NofalseNoCheck to include SID value on ACL output.true / false
addACLEncodedSID
Yes
NofalseNoCheck to include Encoded SID (Base 32) value on ACL output.true / false
addACLFlags
Yes
NofalseNoCheck to include ACL flags on ACL output.true / false
addACLType
Yes
NofalseNoCheck to include ACL type on ACL output.true / false
addACLAccessMask
Yes
NofalseNoCheck to include ACL access mask on ACL output.true / false
enableDFS
Yes
NotrueNoDistributed File System (DFS) resolutiontrue /false
connectionTimeout
No
Yes6000NoTimeout in milliseconds for each
smb
SMB request."6000"
maxRetries
No
Yes5NoMaximum retries permitted per document."5"
baseBackoff
No
Yes500NoBase time for the
backoff
back off sleeps (in ms)."500"
backoffMultiplier
No
Yes2.0NoMultiplier factor to be used for the
backoff
back off time."2.0"
lastAccessedUpdates
Yes
NofalseNoCheck to restore the last accessed date on the documents processed by the connector. WARNING: Requires a user with permissions for writing. This is not supported by windows.true /false
staticAcl
Yes
No

[ ]

YesStatic ACL configuration object
name
No
Yes-NoName of the static ACL."group1"
domain
Yes
No""NoDomain of the static ACL."testDomain"
entity
Yes
No"user"NoEntity (user / group) represented by the static ACL."user" / "group"
access
Yes
No"allow"NoAccess (allow / deny) granted by the ACL."allow" / "deny"

Example

Code Block
themeRDark
titlePUT aspire/_api/connections/89d6632a-a296-426c-adb0-d442adcab4b0
{
    "type": "smb",
    "description": "SMB Test Connector",
	"credential": "2a5ca234-e328-4d40-bb2a-2df3e550b065",
    "properties": {
        "host": "192.168.0.80",
        "port":"445",
        "disableFetch": false,
        "verboseSMBJ": false,
        "stopOnScanError": true,
        "indexContainers": true,
        "scanExcludedItems": true,
        "includes": ".*\\.txt",
        "excludes": ".*\\.png",
		"fetchACLs":true,
        "resolveSIDs": true,
		"addACLSID": false,
		"addACLEncodedSID": false,
		"addACLFlags": false,
		"addACLType" : false,
		"addACLAccessMask": false,
		"enableDFS": true,
		"connectionTimeout": 60000,
		"maxRetries": 5,
		"baseBackoff": 500,
		"backoffMultiplier": 2.0,
		"lastAccessedUpdates": false,
        "staticAcl": [{
                "name": "test-user",
                "domain": "test-domain",
                "entity": "user",
                "access": "allow"
            }, {
                "name": "test-group",
                "domain": "",
                "entity": "group",
                "access": "deny"
            }
        ]
    }
}

Create Connector


For the creation of the Connector object using the Rest API, check this page

Update Connector


For the update of the Connector object using the Rest API, check this page

Create Seed


Field
Optional
RequiredDefaultMultipleNotesExample
seed
No
Yes-NoPath to the element to be crawled, can be a directory or a file."myDirectory/levelTwo"
type
No
Yes-NoThe value must be "filesystem"."smb"
description
No
Yes-NoName of the seed object."MySMB"
seedFile
Yes
NofalseNoIf checked, the path will be processed as a file instead of a directory. WARNING: The crawler will only process the seed and then will stop.true /false
connector
No
Yes-NoThe
id
ID of the connector to be used with this seed. The connector type must match the seed type."82f7f0a4-8d28-47ce-8c9d-e3ca414b0d31"
connection
No
Yes-NoThe
id
ID of the connection to be used with this seed. The connection type must match the seed type."602d3700-28dd-4a6a-8b51-e4a663fe9ee6"
workflows
Yes
No[ ]YesThe
ids
IDs of the workflows that will be executed for the documents crawled.["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"]
throttlePolicy
Yes
No-No
Id
ID of the throttle policy that applies to this connection object."f5587cee-9116-4011-b3a9-6b235b333a1b"
routingPolicies
Yes
No[ ]YesThe
ids
IDs of the routing policies that this seed will use.["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"]
tags
Yes
No[ ]YesThe tags of the seed. These can be used to filter the seed["tag1", "tag2"]

Example

Code Block
themeRDark
titlePOST aspire/_api/seeds
{
    "type": "smb",
    "seed": "myDirectory/levelTwo",
    "connector": "82f7f0a4-8d28-47ce-8c9d-e3ca414b0d31",
    "description": "FileSystem_Test_Seed",
    "throttlePolicy": "6b8b5f23-fc77-47a1-9b58-106577162e7b",
    "routingPolicies": ["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"],
    "connection": "602d3700-28dd-4a6a-8b51-e4a663fe9ee6",
    "workflows": ["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"],
    "tags": ["tag1", "tag2"],
    "properties": {
        "seedFile": false
    }
}

Update Seed


Field
Optional
RequiredDefaultMultipleNotesExample
id
No
Yes-No
Id
ID of the seed to update."2f287669-d163-4e35-ad17-6bbfe9df3778"
seed
Yes
No-NoThe subdirectory to crawl. This value will be appended to the
url
URL of the connection."myDirectory/levelTwo"
description
Yes
No-NoName of the seed object."MySMB"
seedFile
Yes
NofalseNoIf checked, the path will be processed as a file instead of a directory. WARNING: The crawler will only process the seed and then will stop.true /false
connector
Yes
No-NoThe
id
ID of the connector to be used with this seed. The connector type must match the seed type."82f7f0a4-8d28-47ce-8c9d-e3ca414b0d31"
connection
Yes
No-NoThe
id
ID of the connection to be used with this seed. The connection type must match the seed type."602d3700-28dd-4a6a-8b51-e4a663fe9ee6"
workflows
Yes
No[ ]YesThe
ids
IDs of the workflows that will be executed for the documents crawled.["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"]
workflows.add
Yes
No[ ]YesThe
ids
IDs of the workflows to add.["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"]
workflows.remove
Yes
No[ ]YesThe
ids
IDs of the workflows to remove.["f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"]
throttlePolicy
Yes
No-No
Id
ID of the throttle policy that applies to this connection object."f5587cee-9116-4011-b3a9-6b235b333a1b"
routingPolicies
Yes
No[ ]YesThe
ids
IDs of the routing policies that this seed will use.["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"]
routingPolicies.add
Yes
No[ ]YesThe
ids
IDs of the routingPolicies to add.["b4d2579f-1a0a-4a8b-9fd4-d42780003b36"]
routingPolicies.remove
Yes
No[ ]YesThe
ids
IDs of the routingPolicies to remove.["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7"]
tags
Yes
No[ ]YesThe tags of the seed. These can be used to filter the seed["tag1", "tag3"]
tags.add
Yes
No[ ]YesThe tags to add["tag4"]
tags.remove
Yes
No[ ]YesThe tags to remove["tag2"]

Example

Code Block
themeRDark
titlePUT aspire/_api/seeds/2f287669-d163-4e35-ad17-6bbfe9df3778
{
    "id": "2f287669-d163-4e35-ad17-6bbfe9df3778",
    "type": "smb",
    "seed": "myDirectory/levelTwo",
    "connector": "82f7f0a4-8d28-47ce-8c9d-e3ca414b0d31",
    "description": "FileSystem_Test_Seed",
    "throttlePolicy": "6b8b5f23-fc77-47a1-9b58-106577162e7b",
    "routingPolicies": ["313de87c-3cb9-4fe0-a2cb-17f75ce7d0c7", "b4d2579f-1a0a-4a8b-9fd4-d42780003b36"],
    "connection": "602d3700-28dd-4a6a-8b51-e4a663fe9ee6",
    "workflows": ["b255e950-1dac-46dc-8f86-1238b2fbdf27", "f8c414cb-1f5d-42ef-9cc9-5696c3f0bda4"],
    "tags": ["tag", "tag2"],
    "properties": {
        "seedFile": false
    }
}

Create Credential


Field
Optional
RequiredDefaultMultipleNotesExample
type
No
Yes-NoThe value must be "smb"."smb"
description
No
Yes-NoName of the credential object."smbCredential"
domain
Yes
No-NoDomain of the account that will crawl the shared directory. If the user is a local account leave blank"WORKGROUP"
username
No
Yes-NoAccount user"admin"
password
No
Yes-NoAccount password"234dfc22re!?"

Example

Code Block
themeRDark
titlePOST aspire/_api/credentials
{
    "type": "smb",
    "description": "SMB snapshot",
    "properties": {
        "username": "test",
        "password": "test1",
        "domain":"WORKGROUP"
    }
}

Update Credential

Field
Optional
RequiredDefaultMultipleNotesExample
type
No
Yes-NoThe value must be "smb"."smb"
description
No
Yes-NoName of the credential object."smbCredential"
domain
Yes
No-NoDomain of the account that will crawl the shared directory. If the user is a local account leave blank"WORKGROUP"
username
No
Yes-NoAccount user"admin"
passwordNo-NoAccount password"234dfc22re!?"

Example

Code Block
themeRDark
titlePUT aspire/_api/credentials/2a5ca234-e328-4d40-bb2a-2df3e550b065
{
    "type": "smb",
    "description": "SMB snapshot",
    "properties": {
        "username": "test",
        "password": "test1",
        "domain":"WORKGROUP"
    }
}