gpt4 book ai didi

azure - 访问 SharePoint _api/Web/SiteUsers 时出现 403 Forbidden 错误

转载 作者:行者123 更新时间:2023-12-03 04:56:51 29 4
gpt4 key购买 nike

我正在开发一个于 2021 年 1 月 20 日在 Azure AD 中注册的应用程序(通过“应用程序注册”页面),该应用程序使用 SharePoint REST API(_api/Web/SiteUsers 等)来检索用户信息(来自 SharePoint Online)。使用我当时获得的租户 ID、应用程序 ID 和客户端 key ,该应用程序过去和现在都运行良好。几天前(2021 年 4 月 9 日),我在 Azure 中注册了第二个应用程序,向同事展示如何进行设置。使用该新应用程序的应用程序 ID 和客户端 key (相同的租户 ID),当我提交对 _api/Web/SiteUsers 的调用时,应用程序失败并出现错误 403(使用这两个应用程序 ID 调用 MS Graph API 工作正常 - 这只是 SharePoint api失败的调用)。两个注册的应用程序都设置了相同的权限 - 当我并排比较它们时,我看不到任何差异。他们都具有 MS Graph API:(Directory.Read.All、Files.Read.All、Sites.Read.All、Group.Read.All) 和 SharePoint:(Sites.Read.All、User.Read.All) 的应用程序权限),以及 MS GraphAPI 的委派权限:User.Read。所有应用程序权限均已获得管理员同意。两者都使用 key 。我直观地比较了 Azure 中的两个注册应用程序,看不到任何其他属性(除了应用程序 ID、客户端 ID、品牌名称、 key )的任何差异。有谁知道最近是否发生了一些变化,导致较早的应用程序 ID 起作用,而不是最近的应用程序 ID? Azure 和 SharePoint 之间是否存在某种同步延迟(3 天后问题仍然存在)?任何帮助/提示将不胜感激。预先感谢您。

有效的应用程序 ID 的解码 token :

{
"typ": "JWT",
"alg": "RS256",
"x5t": "nOo3ZDrODXEK1jKWhXslHR_KXEg",
"kid": "nOo3ZDrODXEK1jKWhXslHR_KXEg"
}.{
"aud": "00000003-0000-0ff1ce00-000000000000/iplatinum1.sharepoint.com@55379f90-a2a4-4f64-b18d-f3453e934a85",
"iss": "00000001-0000-0000-c000-000000000000@55379f90-a2a4-4f64-b18d-f3453e934a85",
"iat": 1618276524,
"nbf": 1618276524,
"exp": 1618363224,
"identityprovider": "00000001-0000-0000-c000-000000000000@55379f90-a2a4-4f64-b18d-f3453e934a85",
"nameid": "7c331853-01ae-422b-bfe4-7df2d3fdbacf@55379f90-a2a4-4f64-b18d-f3453e934a85",
"oid": "fa4507cb-dfb1-4ed4-9d06-5fa9ffcb814e",
"sub": "fa4507cb-dfb1-4ed4-9d06-5fa9ffcb814e",
"trustedfordelegation": "false"
}.[Signature]

对于没有的人:

{
"typ": "JWT",
"alg": "RS256",
"x5t": "nOo3ZDrODXEK1jKWhXslHR_KXEg",
"kid": "nOo3ZDrODXEK1jKWhXslHR_KXEg"
}.{
"aud": "00000003-0000-0ff1-ce00-000000000000/iplatinum1.sharepoint.com@55379f90-a2a4-4f64-b18d-f3453e934a85",
"iss": "00000001-0000-0000-c000-000000000000@55379f90-a2a4-4f64-b18d-f3453e934a85",
"iat": 1618276454,
"nbf": 1618276454,
"exp": 1618363154,
"identityprovider": "00000001-0000-0000-c000-000000000000@55379f90-a2a4-4f64-b18d-f3453e934a85",
"nameid": "7307b725-738e-4b8c-b898-89486cff95de@55379f90-a2a4-4f64-b18d-f3453e934a85",
"oid": "08650d87-1a47-436f-a8e1-ee44caa361ee",
"sub": "08650d87-1a47-436f-a8e1-ee44caa361ee",
"trustedfordelegation": "false"
}.[Signature]

最佳答案

据我所知,Azure AD App Client Secret 已被 sharepoint online 阻止。您需要选择证书进行身份验证:https://learn.microsoft.com/en-us/sharepoint/dev/solution-guidance/security-apponly-azuread

另一个解决方法是在 SharePoint 网站“https://yoursite/_layouts/15/appregnew.aspx”中注册应用程序。这样你就可以起诉客户 secret 了。 https://learn.microsoft.com/en-us/sharepoint/dev/solution-guidance/security-apponly-azureacs

关于azure - 访问 SharePoint _api/Web/SiteUsers 时出现 403 Forbidden 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67053258/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com