什么是开发人员管理服务账户?

对于使用数据连接组件构建应用程序的开发人员,我们建议利用新的开发人员托管服务账户 (DMSA) 功能作为简化方法,让 Procore 管理员能够在其公司账户中轻松安装和配置数据连接应用程序。DMSA 功能可允许开发人员指定其应用程序在 Procore 平台上正常运行所需的确切公司和项目级别的工具权限。公司管理员定义应用程序可以使用这些权限访问哪些项目。开发人员利用 DMSA 为传统服务账户提供更方便、更安全的替代方案。通过改进应用程序管理和更好地了解应用程序使用情况,公司管理员从 DMSA 中受益。

 Sunset of Traditional Service Accounts

All Traditional Service Accounts will sunset on March 18, 2025.

Traditional Service Accounts were deprecated on December 9, 2021. Beginning January 21, 2025, we will no longer allow the creation of new Traditional Service Accounts. Existing Traditional Service Accounts will continue to function until March 18, 2025.

In accordance with this timeline, developers of data connection applications that currently use Traditional Service Accounts are required to update their applications to use Developer Managed Service Accounts, and customers will be required to install these updated applications before the sunset date. All data connection applications not migrated by the sunset date will cease to function. Any application listed on the Procore App Marketplace that is not using a supported method for accessing the Procore API will be removed by the sunset date. See Migrating Data Connection Applications to Use DMSAs for additional information.

使用开发人员托管服务账户 (DMSA) 的优势

传统服务账户相比,使用 DMSA 可以获得许多优势:

与传统服务账户相关的风险

安装和使用利用传统服务账户的应用程序会带来以下风险:

DMSA 与传统服务账户有何不同?

以下是 DMSA 和传统服务账户之间的一些主要区别。

  开发人员管理服务账户 传统服务账户
账户创建
  • 与 DMSA 关联的目录用户是在公司和/或项目目录工具中自动创建的。
  • 传统服务账户必须由公司管理员手动创建和管理。
授权
  • 一组凭证(client_id、client_secret)可用于访问安装该应用程序的所有公司。
  • 管理员在公司中创建的每个服务账户都有一组唯一的凭证,需要与开发人员手动协调才能成功集成。
权限
  • 所需权限由开发人员在应用程序清单中定义,并在安装期间自动应用。
  • 每个服务账户的权限必须由公司管理员手动配置。
项目配置
  • 在安装过程中,你可以选择允许运行 DMSA 应用程序的项目。安装应用程序后,你可以根据需要添加或删除已获批的项目。
  • 项目访问权限,必须由公司管理员手动配置和管理。
应用程序管理
  • 支持 DMSA 的应用程序可以从 App Marketplace 轻松安装或作为自定义安装。用于卸载/重新安装的公司管理员工具(应用程序管理)。
  • 传统服务账户安装和管理的所有方面都必须由公司管理员手动处理。

安装使用 DMSA 的应用程序后,我会在我的账户中看到什么?

在安装过程中,可能会在代表 DMSA 的公司和/或项目目录工具中创建新的用户记录。DMSA 联系人名称需遵循不同的格式,应用程序名称转换为小写,并由破折号分隔,后跟随机生成的八个字符的 ID。例如,安装应用程序 My DMSA Test App 会在公司目录中创建用户 my-dmsa-test-app-469b1f7f。请务必不要编辑或删除 DMSA 应用程序安装创建的目录用户,因为此操作可能会导致应用程序在运行时出现问题。

DMSA权限管理的最佳实践

管理开发人员管理服务账户(DMSA)的权限需要仔细考虑,以确保应用程序功能和账户安全。 以下是有效管理权限的最佳实践和重要注意事项。

  1. 使用项目成员资格的权限标签页- 要管理DMSA项目访问权限,包括添加或删除项目成员资格,请使用应用程序管理下的应用程序中的权限标签页。 此选项适用于公司管理员。

  2. 应用程序更新或重新安装的权限重新配置- 每次更新或重新安装应用程序时,公司管理员都必须重新配置已获批项目的列表。 未来需要DMSA访问权限的项目也必须手动添加到允许列表中。

  3. 将目录工具用于权限模板- 一些管理员将目录工具与权限模板一起使用来简化DMSA管理:

    • 启用"将(DMSA用户)添加到所有新项目"复选框可以通过自动将DMSA用户添加到未来的项目来简化权限。
    • 重要说明:更新或重新安装应用程序时,应用程序清单中定义的权限不会自动传输到目录工具中的权限模板,可能会影响应用程序功能。 应手动协调这种未对齐情况。
  4. 避免手动更新DMSA权限- 通常不建议在目录工具中手动调整DMSA权限,因为这会导致不一致并使账户管理复杂化。

  5. 限制DMSA对公司级别目录工具的访问权限- 避免为DMSA用户授予对公司级别目录工具的管理员级别访问权限。 此访问级别允许对你的 Procore 账户中的多个项目和工具进行更改,这可能会影响组织的工作流。 仅在集成绝对必要时才允许此级别的访问权限,并确保彻底了解其含义。

了解 Procore API 身份验证

在 Procore 平台上构建的应用程序使用行业标准OAuth 2.0 授权框架通过API进行身份验证。Procore API支持以下两种授权授予类型或身份验证流程:

无论集成使用的授权授予类型是 authorization_code(登录用户的权限)还是 client_credentials(服务账户/DMSA 权限),Procore 公司管理员最终负责管理其目录用户的权限。

责任共担安全模型

作为软件即服务 (SaaS) 提供商,Procore 在平台安全方面遵循责任共担安全模型

另请参阅

相关 Procore 安全资源