[ 
https://issues.apache.org/jira/browse/CONNECTORS-754?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13778667#comment-13778667
 ] 

Karl Wright commented on CONNECTORS-754:
----------------------------------------

What we have (obviously) available on the document side is a list of records, 
consisting of one of:

- A "UserLogin"
- A "RoleName"
- A "GroupName"

These come back from the Permissions web service, specifically from this call:

aclCall.getPermissionCollection( guid, "List" );

We already filter by permission to read the document, so only entities that 
have read permissions will be examined.  It is not clear, though, what these 
names actually represent, and how they map to user-side entities.  For example, 
do these represent the equivalent of SPUser.LoginName, SPGroup.LoginName, and 
SPRole.Name?

And, there is another possibility.  As the user indicates, the property RawSid 
exist for SPUser, which contains the binary Sid value.  But since there is no 
straightforward mapping between groups/roles and sids in this world, it does 
not seem to get us very far.

So the outstanding question now is whether the usergroup.asmx webservice allows 
us to look up SPUser LoginName, group names, and role names already, or whether 
we'd need an MCPermissions.asmx method for doing that.

                
> SharePoint connector does not work with claim space authentication properly
> ---------------------------------------------------------------------------
>
>                 Key: CONNECTORS-754
>                 URL: https://issues.apache.org/jira/browse/CONNECTORS-754
>             Project: ManifoldCF
>          Issue Type: Bug
>          Components: SharePoint 2010 MCPermissions extension, SharePoint 
> connector
>    Affects Versions: ManifoldCF 1.2
>            Reporter: Karl Wright
>            Assignee: Karl Wright
>             Fix For: ManifoldCF 1.4
>
>
> When the SharePoint Connector is used against a SharePoint claimspace 
> instance, it fails in the following ways:
> (1) The MCPermissions.asmx plugin is unable to write to the log.  
> "EventLog.XXX" is not allowed, apparently, under this configuration option.
> (2) It is needing to write to the log, which indicates there is some hidden 
> exception taking place that we aren't seeing.
> (3) When this fails, we're getting bad data returned from the list method, 
> which causes ArrayIndexOutOfBoundsException's being thrown in the relative 
> path manipulation code, due to the fact that the library/list name is not at 
> the front of the relative path, e.g.:
> {code}
> FATAL 2013-07-17 19:24:57,927 (Worker thread '46') - Error tossed: String 
> index out of range: 19
> java.lang.StringIndexOutOfBoundsException: String index out of range: 19
>     at java.lang.String.substring(String.java:1955)
>     at 
> org.apache.manifoldcf.crawler.connectors.sharepoint.SharePointRepository$FileStream.addFile(SharePointRepository.java:1890)
>     at 
> org.apache.manifoldcf.crawler.connectors.sharepoint.SPSProxyHelper.getChildren(SPSProxyHelper.java:655)
>     at 
> org.apache.manifoldcf.crawler.connectors.sharepoint.SharePointRepository.processDocuments(SharePointRepository.java:1411)
>     at 
> org.apache.manifoldcf.crawler.connectors.BaseRepositoryConnector.processDocuments(BaseRepositoryConnector.java:423)
>     at 
> org.apache.manifoldcf.crawler.system.WorkerThread.run(WorkerThread.java:559)
> {code}
> (Regardless of the full resolution of the problem, we should definitely 
> harden the connector against this kind of issue.)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to