如果我的 Azure 函数应用和 SPO 在同一个 AAD 中注册。 GraphAPI Delegated 能否以 的形式写入 SPO 列表?调用/当前用户没有额外的身份验证?
如果是这样,我是否需要像 ADAL 这样的身份验证库代码?为什么?有什么好的指南或例子吗?
一名团队成员正在尝试使用回复 URL 并遇到此问题:
Azure Active Directory Reply URL not working as expected
最佳答案
AD token 代表的不仅仅是当前用户。它们还包括关于谁发行了 token 以及“观众”(允许谁消费 token )的声明。 token 通常是 JWT,可以通过 http://jwt.calebb.net/ 之类的工具进行解码.您的网络应用程序的 token 很可能与在线共享点的 token 具有不同的“受众”。 您需要进行“代币交换”才能获得具有正确受众的代币 . ADAL 可以为您进行交换(请参阅 AcquireTokenAsync)。有一个 Azure Functions 绑定(bind)的开始,它为 AD 进行 token 交换(与您相关的部分是:请参阅 https://github.com/Azure/azure-functions-microsoftgraph-extension/blob/master/src/TokenBinding/AadClient.cs#L49),但它是预览版。
请注意,这里没有特定于 Azure Functions/WebAPI 的内容 - 这纯粹是 AD,您可以在控制台应用程序中测试它( token 交换代码)。
关于authentication - AAD 注册了 Azure Functions + GraphAP Delegated + SharePoint Online?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48566625/