Class SecurityEntityProvider
Signature for component that provides security entities which can be used to apply access rights for items (for example IContent).
Inheritance
Inherited Members
Namespace: EPiServer.Security
Assembly: EPiServer.Framework.dll
Version: 11.20.7Syntax
public abstract class SecurityEntityProvider
Constructors
SecurityEntityProvider()
Declaration
protected SecurityEntityProvider()
Properties
Name
Gets the friendly name used to refer to the provider
Declaration
public virtual string Name { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
Default name is 'default'
Methods
FindUsersInRole(String, String, Int32, Int32, out Int32)
Returns users that are part of given role.
Declaration
public virtual IEnumerable<string> FindUsersInRole(string roleName, string usernameToMatch, int startIndex, int maxRows, out int totalCount)
Parameters
Type | Name | Description |
---|---|---|
System.String | roleName | The name of the role to get users for |
System.String | usernameToMatch | The username to match for. Pass in null to match all users. |
System.Int32 | startIndex | The start index, used for paging |
System.Int32 | maxRows | The maximum number of rows returned |
System.Int32 | totalCount | The total amount of matched entites. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<System.String> | A list of matched users |
Remarks
The recommendation is to support partly matches on usernameToMatch
. For example in an implementation
that uses SQL server the recommendation is to surround the specified value with '%' and use the 'LIKE' operator.
Default implementation returns empty list. Should be overridden to support functionality.
Implemenations should return empty list when role does not exist
GetRolesForUser(String)
Retrieves all roles for user with given userName.
Declaration
public abstract IEnumerable<string> GetRolesForUser(string userName)
Parameters
Type | Name | Description |
---|---|---|
System.String | userName | The name of the user. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<System.String> | A list of all roles for the user. |
Initialize(String, NameValueCollection)
Initializes the provider.
Declaration
public virtual void Initialize(string name, NameValueCollection config)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | The friendly name of the provider |
System.Collections.Specialized.NameValueCollection | config | A collection of the name/value pairs representing the provider-specific attributes specified in the configuration for this provider. |
Search(String, String)
Searches all security entities of given type with a matching name.
Declaration
public abstract IEnumerable<SecurityEntity> Search(string partOfValue, string claimType)
Parameters
Type | Name | Description |
---|---|---|
System.String | partOfValue | Part of value to match or null to get all of given type. |
System.String | claimType | The claimType to search for. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<SecurityEntity> | A list of all matching entities or an empty list if no matches. |
Remarks
The recommendation is to support partly matches on partOfValue
. For example in an implementation
that uses SQL server the recommendation is to surround the specified value with '%' and use the 'LIKE' operator.
Search(String, String, Int32, Int32, out Int32)
Searches all security entities of given type with a matching name with paging support.
Declaration
public abstract IEnumerable<SecurityEntity> Search(string partOfValue, string claimType, int startIndex, int maxRows, out int totalCount)
Parameters
Type | Name | Description |
---|---|---|
System.String | partOfValue | Part of value to match or null to get all of given type. |
System.String | claimType | The claim type to search for. |
System.Int32 | startIndex | The start index, used for paging |
System.Int32 | maxRows | The maximum number of rows returned |
System.Int32 | totalCount | The total amount of matched entites. Return -1 if provider does not support paging. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<SecurityEntity> | A list of all matching entities or an empty list if no matches. |
Remarks
The recommendation is to support partly matches on partOfValue
. For example in an implementation
that uses SQL server the recommendation is to surround the specified value with '%' and use the 'LIKE' operator.