将逻辑应用程序凭据传递到自定义 SharePoint 客户端 C# 函数应用程序 SharePoint
Pass Logic App credential to custom SharePoint Client C# Function App SharePoint
我在 Azure 中创建了逻辑应用程序,它使用我的凭据连接到我们的 SharePoint Online 网站,然后 运行 我不在场。我想在 SharePoint 网站上执行更复杂的操作,并且更愿意创建 C# 函数应用程序。但是,我无法看到一种无需在场进行身份验证即可将我的凭据传递给 Microsoft.SharePoint.Client
的方法。我已经使用证书进行了研究,但这需要我无法获得的管理员批准。有没有办法让我使用现有的 SharePoint 逻辑应用程序连接(其中包含我的凭据信息)并将其传递给自定义函数应用程序?下面是连接在逻辑应用中的外观的快速图像。我不想使用内置的 Azure 操作,而是想将其替换为我的自定义函数应用程序,将该连接传递给函数应用程序。
然后我需要用它来创建 ClientContext:
var ctx = new ClientContext(siteUrl);
ctx.ExecutingWebRequest += (s, e) =>
{
e.WebRequestExecutor.RequestHeaders["Authorization"] = "Bearer " + authenticationResult.AccessToken;
};
return ctx;
然后可用于 SharePoint 站点:
using (ClientContext ctx = await csomHelper.GetClientContext(siteUrl))
{
Web web = ctx.Web;
ctx.Load(web);
ctx.ExecuteQuery();
log.LogInformation($"found site : {web.Title}");
}
虽然我认为无法从现有连接中获取访问令牌,但您可以将函数应用公开为 custom connector 以供在逻辑应用中使用。
首先,您需要使用 appropriate permissions 注册 Azure AD 应用程序才能共享点。
然后,在创建自定义连接器时,security config 应该 Generic OAuth 2.0
包含您之前创建的 Azure AD 的适当详细信息。
然后您可以在逻辑应用中使用自定义连接器,这将触发与其他连接器类似的 OAuth 流。
有一个official doc for creating a custom connector for an Azure AD protected Azure Function非常相似,你可以参考。
我在 Azure 中创建了逻辑应用程序,它使用我的凭据连接到我们的 SharePoint Online 网站,然后 运行 我不在场。我想在 SharePoint 网站上执行更复杂的操作,并且更愿意创建 C# 函数应用程序。但是,我无法看到一种无需在场进行身份验证即可将我的凭据传递给 Microsoft.SharePoint.Client
的方法。我已经使用证书进行了研究,但这需要我无法获得的管理员批准。有没有办法让我使用现有的 SharePoint 逻辑应用程序连接(其中包含我的凭据信息)并将其传递给自定义函数应用程序?下面是连接在逻辑应用中的外观的快速图像。我不想使用内置的 Azure 操作,而是想将其替换为我的自定义函数应用程序,将该连接传递给函数应用程序。
然后我需要用它来创建 ClientContext:
var ctx = new ClientContext(siteUrl);
ctx.ExecutingWebRequest += (s, e) =>
{
e.WebRequestExecutor.RequestHeaders["Authorization"] = "Bearer " + authenticationResult.AccessToken;
};
return ctx;
然后可用于 SharePoint 站点:
using (ClientContext ctx = await csomHelper.GetClientContext(siteUrl))
{
Web web = ctx.Web;
ctx.Load(web);
ctx.ExecuteQuery();
log.LogInformation($"found site : {web.Title}");
}
虽然我认为无法从现有连接中获取访问令牌,但您可以将函数应用公开为 custom connector 以供在逻辑应用中使用。
首先,您需要使用 appropriate permissions 注册 Azure AD 应用程序才能共享点。
然后,在创建自定义连接器时,security config 应该 Generic OAuth 2.0
包含您之前创建的 Azure AD 的适当详细信息。
然后您可以在逻辑应用中使用自定义连接器,这将触发与其他连接器类似的 OAuth 流。
有一个official doc for creating a custom connector for an Azure AD protected Azure Function非常相似,你可以参考。