You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Gosip包认证SharePoint时遇“Token type is not allowed”错误求助

解决SharePoint认证报错"Token type is not allowed"问题

核心问题:用错了认证策略

你当前使用的strategy.AuthCnfg是针对**SharePoint本地服务器(On-Premises)**的认证配置,而你的场景应该是SharePoint Online,需要切换为对应Online的应用权限认证策略。

修复步骤

  1. 替换认证策略类型
    将代码中的strategy.AuthCnfg替换为strategy.AddInOnly,这是SharePoint Online下Client ID/Secret应用权限认证的正确策略:

    auth := &strategy.AddInOnly{
        SiteURL:      os.Getenv("SPAUTH_SITEURL"),
        ClientID:     os.Getenv("SPAUTH_CLIENTID"),
        ClientSecret: os.Getenv("SPAUTH_CLIENTSECRET"),
        Realm:        os.Getenv("SPAUTH_REALM"), // 需补充租户ID
    }
    
    • Realm即你的Office 365租户ID,可通过以下方式获取:
      • 访问站点的/_api/contextinfo端点,从返回结果中提取Realm字段;
      • 登录Azure AD门户,查看租户详情中的租户ID。
  2. 验证权限授予是否完成
    确认在appinv.aspx页面提交权限请求后,是否点击了信任它按钮完成权限授予,仅配置XML而未确认信任会导致权限未生效。

  3. 检查环境变量正确性

    • 确保SPAUTH_SITEURL是完整的站点集URL(如https://contoso.sharepoint.com/sites/MySite),不要带末尾斜杠;
    • 核对Client ID和ClientSecret无多余空格、换行或拼写错误。

内容的提问来源于stack exchange,提问作者mev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 08:32:15