创建 SharePoint 连接

电子开票服务可以读取 Microsoft SharePoint 文件夹中的文件并将文件上传到 SharePoint。 为了确保电子开票可以访问特定的 SharePoint 站点,您必须向电子开票服务提供站点凭据。 此外,为确保安全存储凭据,请勿直接提供凭据。 而是将其存储在 Azure 密钥保管库中,并提供密钥保管库密码。

授予对 SharePoint 文件夹的访问权限

  1. 在安装了 Regulatory Configuration Service (RCS) 的租户中创建应用注册。

    1. 登录 Azure 门户
    2. 转到应用注册
    3. 选择新注册
    4. 输入名称,例如用于电子开票的 SharePoint 应用,然后完成注册。
    5. 选择新的应用注册。
    6. 身份验证选项卡上,启用允许公共客户端流选项。
    7. 证书和机密选项卡上,选择新建客户端密码创建客户端密码。
    8. 复制创建的机密的值。

    请遵照以下准则:

    • 不要对不同的服务使用相同的应用注册。
    • 执行密码政策建议
    • 设置密码轮换。 在轮换期间,为应用注册创建新的客户端密码,更新密钥保管库,然后删除旧密码。
  2. 在电子开票环境设置中将应用注册机密应用程序(客户端)ID 值作为两个新机密保存在密钥保管库中。

  3. 在 RCS 中的电子发票环境的设置中将您创建的机密添加到 Key Vault 参数中。

  4. 在 Azure 门户中,授予对 SharePoint 的访问权限。 此步骤应由租户管理员完成。

    1. 选择您创建的应用注册。

    2. API 权限选项卡上,选择添加权限

    3. 选择 Microsoft graph (应用程序权限)>Sites.Selected

    4. 选择为<用户名>授予管理员同意

    5. 查看状态字段,确保已授予权限。

      显示在 API 权限选项卡上已授予的权限的屏幕截图。

    6. 打开 Graph 浏览器 并登录。

    7. 在左侧窗格中的示例查询选项卡上,在 SharePoint 站点下,选择根据站点的相对路径获取 SharePoint 站点

    8. 填写 {host-name}{server-relative-path} 参数。 例如,{host-name} 填写 <domain>.sharepoint.com{server-relative-path} 填写 sites/<siteName>

      注释

      对于默认网站,将 {server-relative-path} 参数留空。

    9. 选择运行查询,并保存结果。

    10. 配置以下查询。

      POST https://graph.microsoft.com/v1.0/sites/{site-id}/permissions

      在此查询中,{site-id} 是上一个查询响应中 id 节点的值。

      以下是请求正文。

      {
          "roles": [
              "read",
              "write"
          ],
          "grantedToIdentities": [
              {
                  "application": {
                      "id": "{app-id}",
                      "displayName": "{app-name}"
                  }
              }
          ]
      }
      

      在此请求正文中,{app-id}应用程序(客户端)ID 值,{app-name}应用程序名称值。

      POST 查询的屏幕截图。

    11. 修改权限选项卡上,选择打开权限面板,然后选择站点>Sites.FullControl.All>同意

    12. 选择运行查询

电子开票服务现在已经有权访问您的 SharePoint 站点。