IExternalSecurityWeb Interface
Provides methods that return custom information about the security used in Microsoft Windows SharePoint Services for use in indexing by a search crawler on a portal.
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
Public Interface IExternalSecurityWeb
Dim instance As IExternalSecurityWeb
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
public interface IExternalSecurityWeb
Remarks
This interface provides access control list (ACL) information to a search crawler so that it can determine which security to use when it searches a SharePoint site.
To use this interface, you must create an external security provider that uses a COM interface similar to the one described in the following interface definition language (IDL) excerpt.
import "File_Name.idl";
struct STS_WEBGROUP_MEMBERSHIP_RECORD
{
LONG m_lGroupId;
LONG m_lMemberId;
BYTE* m_rgbMemberSID;
BOOL m_bMemberIsDomainGroup;
};
[
object,
uuid(BDEADEA4-C265-11d0-BCED-00A0C90AB50F),
pointer_default(unique),
local
]
interface ISPSecurityExtensibility : IUnknown
{
HRESULT AccessCheck
(
[in] const GUID* pGuidSiteId,
[in] const GUID* pGuidWebId,
[in] BOOL bAnonymousRequest,
[in] BOOL bSiteAdmin,
[in] BOOL bGlobalAdmin,
[out] DWORD* pdwEffectiveRights
);
HRESULT RefreshWebGroupMembership
(
[in] LONGLONG llDataVersion,
[in] const GUID* pGuidSiteId,
[in] const GUID* pGuidWebId,
[in] const struct STS_WEBGROUP_MEMBERSHIP_RECORD* rgwmrUpdates,
[in] LONG cNumRecords
);
}
To implement your own security manager in Windows SharePoint Services, you must provide the GUID for the COM DLL and define a managed class string in the site definition.