1
0
mirror of https://github.com/bitwarden/directory-connector synced 2025-12-10 21:33:20 +00:00

document filter syntax

This commit is contained in:
Kyle Spearrin
2017-05-19 10:05:03 -04:00
parent 6d8242dc79
commit 39d0fe5124
2 changed files with 32 additions and 2 deletions

View File

@@ -32,8 +32,38 @@ namespace Bit.Core.Models
}
}
/*
* Depending on what server type you are using, filters are be one of the following:
*
* 1. ActiveDirectory or Other
* - LDAP query/filter syntax
* - Read more at: http://bit.ly/2qyLpzW
* - ex. "(&(givenName=John)(|(l=Dallas)(l=Austin)))"
*
* 2. AzureActiveDirectory
* - OData syntax for a Microsoft Graph query parameter '$filter'
* - Read more at http://bit.ly/2q3FOOD
* - ex. "startswith(displayName,'J')"
*
* 3. GSuite
* - Group Filter
* - Custom filtering syntax that allows you to exclude or include a comma separated list of group names.
* - ex. "include:Group A,Sales People,My Other Group"
* or "exclude:Group C,Developers,Some Other Group"
* - User Filter
* - Custom filtering syntax that allows you to exclude or include a comma separated list of group names.
* - Allows you to concatenate a GSuite Admin API user search query to the end of the filter after delimiting
* the include/exclude filter with a pipe (|).
* - Read more at http://bit.ly/2rlTskX
* - ex.
* or "include:joe@company.com,bill@company.com,tom@company.com"
* or "exclude:john@company.com,bill@company.com|orgName=Engineering orgTitle:Manager"
* or "|orgName=Engineering orgTitle:Manager"
*/
public string GroupFilter { get; set; }
public string UserFilter { get; set; }
public bool SyncGroups { get; set; } = true;
public bool SyncUsers { get; set; } = true;
public int IntervalMinutes { get; set; } = 5;

View File

@@ -233,7 +233,7 @@ namespace Bit.Core.Services
}
var mainParts = filter.Split('|');
if(mainParts.Count() < 2)
if(mainParts.Count() < 2 || string.IsNullOrWhiteSpace(mainParts[1]))
{
return null;
}
@@ -249,7 +249,7 @@ namespace Bit.Core.Services
}
var mainParts = filter.Split('|');
if(mainParts.Count() < 1)
if(mainParts.Count() < 1 || string.IsNullOrWhiteSpace(mainParts[0]))
{
return null;
}