我试图创建一个SharePoint工作流,在SharePoint Designer中使用“在[外部列表名称]中的创建项目中的”创建项目“在外部列表中创建新项目。

目前,我一直收到一个错误,声音“工作流无法在外部数据源中创建项目。确保用户有权访问外部数据源并创建项目。”关联的用户ID是“系统帐户”(SharePoint \ System)。

从一些研究中我确实,我被导致在它在外部列表中创建新项目时,工作流程使用SP WebApp帐户。如如何验证BDC到外部系统?,我在外部内容类型和外部系统中授予SP WED WebApp对象权限和元数据存储权限。我还授予外部列表的IT权限和外部列表的SQL Server。但这对我不起作用。

在一点时,我将默认SSS从“分区安全商店服务应用程序”中更改为我创建的自定义。这工作了,但它还在我的组织的SharePoint上打破了一些其他系统,因此我必须恢复到分区的SSS。我想在分区的SSS上创建一个新的目标应用程序,但是,由于分区,我不能这样做。有没有办法让我的外部系统在我的自定义SS上使用目标应用程序,即使它不再是默认的SSS?

是否有任何其他潜在的解决方案,我可能会忽略?

有帮助吗?

解决方案

EDIT: I updated my solution because I found a more reliable way to fix the problem:

For anyone else that has this problem in the future, I figured out what the issues were.

With regards to the SHAREPOINT\system account, it turns out that is more or less an alias used by other accounts (usually service accounts) in SharePoint. In this case, it is the account used by my application pool. Reference: About SHAREPOINT\system - what account is it? how is it determined?.

The workflow appears to actually use whatever account the designated SSS or BDC is using. In my case, my "Partitioned Secure Store Service" that my SharePoint site was using by default was running the SP_serviceapps account. I determined this by launching my IIS Manager on my SharePoint server, and finding the appropriate SSS among the various application pools. The SP_serviceapps account was listed as the identity.

Due to running into some difficulties getting my SSS to work, I decided to instead use my BDC identity. In SharePoint Designer, I first determined the service account used by my custom Business Data Connectivity service (SP_serviceapps). Second, I gave both the Sp_serviceapps and SHAREPOINT/System accounts "Full Control", "Design", and "Contribute" permissions in my External List. This is probably overkill, but I wanted to be sure that they were allowed to access the External List. Further, they originally appeared to have "Full Control" permissions, but after clicking on "Edit User Permissions" for each, the resulting dialog box did not have any permissions checked. After this, I enabled RevertToSelf on my SharePoint server: BCS problem with AuthenticationMode and RevertToSelf. Last, I went to Central Admin -> Application Management -> Manage Service Application-> [Name of business data connectivity service] -> External Systems (from view in the ribbon) -> [External System Name] -> [External System Instance Name] -> Set Authentication Mode to "BDC Identity".

Last (and this was a dumb mistake on my part), I had an incorrectly mapped identifier in my External Content Type. I had mistakenly selected "VendorEmail" as the identifier when I meant to select "VendorName". Later, when I created my "Create Item" operation, I mapped "VendorName" to identifier without noticing that it was being mapped to the mistakenly-selected "VendorEmail" and not "VendorName". I fixed this problem by creating a new External Content Type that had the correct identifiers.

After this, my workflow successfully wrote to my External List.

许可以下: CC-BY-SA归因
scroll top