O que é uma conta de serviço gerenciada pelo desenvolvedor?

Para desenvolvedores que criam aplicativos usando componentes de conexão de dados, recomendamos aproveitar o novo recurso DMSA (Contas de serviço gerenciadas pelo desenvolvedor) como uma abordagem simplificada para fornecer aos administradores do Procore a capacidade de instalar e provisionar facilmente aplicativos de conexão de dados em suas contas empresariais. O recurso DMSA permite que os desenvolvedores especifiquem as permissões exatas da ferramenta no nível de empresa e de projeto para que seu aplicativo seja executado corretamente na plataforma do Procore. Os administradores da empresa definem quais projetos o aplicativo pode acessar usando essas permissões. Os desenvolvedores utilizam DMSAs para fornecer uma alternativa mais conveniente e segura às contas de serviço tradicionais. Os administradores da empresa se beneficiam dos DMSAs por meio de gestão aprimorada de aplicativos e melhor visibilidade sobre o uso dos aplicativos.

 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.

Benefícios do uso de DMSAs

O uso de DMSAs em contas de serviço tradicionais proporciona uma série de benefícios:

Riscos associados a contas de serviço tradicionais

O processo de instalação e uso de aplicativos que utilizam contas de serviço tradicionais apresenta os seguintes riscos:

Qual a diferença do DMSA para uma conta de serviço tradicional?

Aqui estão algumas das principais diferenças entre DMSAs e contas de serviço tradicionais.

  Conta de serviço gerenciada pelo desenvolvedor Conta de serviço tradicional
Criação de conta
  • Um usuário de diretório associado ao DMSA é criado automaticamente na ferramenta Diretório da empresa e/ou do projeto.
  • Uma conta de serviço tradicional precisa ser criada e gerenciada manualmente por um administrador da empresa.
Autorização
  • Um único conjunto de credenciais (client_id, client_secret) é usado para acessar todas as empresas nas quais o aplicativo está instalado.
  • Cada conta de serviço criada em uma empresa por um administrador tem um conjunto exclusivo de credenciais, exigindo coordenação manual com o desenvolvedor para uma integração bem-sucedida.
Permissões
  • As permissões necessárias são definidas pelo desenvolvedor no manifesto do aplicativo e aplicadas automaticamente durante a instalação.
  • As permissões para cada conta de serviço precisam ser configuradas manualmente por um administrador da empresa.
Configuração do projeto
  • Durante a instalação, você pode selecionar em quais projetos o aplicativo DMSA pode ser executado. Após a instalação do aplicativo, é possível adicionar ou remover projetos os permitidos conforme necessário.
  • O acesso ao projeto precisa ser configurado e gerenciado manualmente pelo administrador da empresa.
Gestão de aplicativos
  • Os aplicativos habilitados para DMSA são facilmente instalados no App Marketplace ou como uma instalação personalizada. A ferramenta Administrador da empresa (Gestão de aplicativos) é usada para desinstalar/reinstalar.
  • Todos os aspectos da instalação e gerenciamento de conta de serviço tradicional precisam ser tratados manualmente por um administrador da empresa.

O que verei em minha conta após instalar um aplicativo que usa DMSA?

Durante o processo de instalação, um novo cadastro de usuário poderá ser criado na ferramenta Diretório da empresas e/ou do projeto que representa o DMSA. O nome de contato do DMSA segue um formato distinto com o nome do aplicativo convertido em letras minúsculas e separado por hifens seguido por um id de oito caracteres gerado aleatoriamente. Por exemplo, a instalação do aplicativo My DMSA Test App criaria o usuário my-dmsa-test-app-469b1f7f no Diretório da empresa. É importante que você não edite nem exclua os usuários do diretório criados pelas instalações do aplicativo DMSA, pois isso pode causar problemas na operação do aplicativo.

Práticas recomendadas para o gerenciamento de permissões DMSA

O gerenciamento de permissões para uma DMSA (Conta de serviço gerenciada pelo desenvolvedor) envolve uma consideração cuidadosa para garantir a funcionalidade do aplicativo e a segurança da conta. Veja abaixo práticas recomendadas e importantes considerações para gerenciar permissões de forma eficaz.

  1. Use a guia Permissões para associação ao projeto: para gerenciar o acesso ao projeto DMSA, incluindo adicionar ou remover associações de projeto, utilize a guia Permissões no aplicativo em Gestão de aplicativos. Essa opção está disponível para administradores da empresa.

  2. Reconfiguração de permissões na atualização ou reinstalação de aplicativos: sempre que um aplicativo for atualizado ou reinstalado, os administradores da empresa precisarão reconfigurar a lista de projetos permitidos. Projetos futuros que exijam acesso DMSA também devem ser adicionados manualmente à lista de permitidos.

  3. Usando a ferramenta Diretório para modelos de permissões: alguns administradores usam a ferramenta Diretório com um modelo de permissões para simplificar o gerenciamento de DMSA:

    • Habilitar a caixa de verificação "Adicionar [usuário DMSA] a todos os novos projetos" pode simplificar as permissões adicionando automaticamente o usuário DMSA a projetos futuros.
    • Observação importante: Quando um aplicativo é atualizado ou reinstalado, as permissões definidas no manifesto do aplicativo não são transferidas automaticamente para o modelo de permissões na ferramenta Diretório, afetando potencialmente a funcionalidade do aplicativo. Esse desalinhamento deve ser reconciliado manualmente.
  4. Evitar atualizações manuais nas permissões DMSA: o ajuste manual das permissões DMSA na ferramenta Diretório geralmente é desencorajado, pois pode levar a inconsistências e complicar o gerenciamento de contas.

  5. Limitar o acesso do DMSA à ferramenta Diretório de nível de empresa - Evite conceder acesso de nível de administrador à ferramenta Diretório de nível de empresa para o usuário do DMSA. Esse nível de acesso permite alterações em vários projetos e ferramentas em sua conta Procore, o que pode afetar os fluxos de trabalho da sua organização. Só permita esse nível de acesso se for absolutamente necessário para a integração e garanta que você entenda completamente as implicações.

Compreendendo a autenticação da API do Procore

Os aplicativos criados na plataforma Procore usam o padrão do setor OAuth 2.0 Authorization Framework para autenticação com a API. O API Procore oferece suporte aos dois tipos de concessão de autorização ou fluxos de autenticação a seguir:

Os administradores da empresa do Procore são responsáveis por gerenciar as permissões de seus usuários de diretório, independentemente do tipo de concessão de autorização usado por uma integração: authorization_code (permissões do usuário conectado) ou client_credentials (permissões de conta de serviço/DMSA).

Modelo de segurança de responsabilidade compartilhada

Como fornecedor de SaaS (Software como serviço), o Procore segue um modelo de responsabilidade compartilhada no contexto da segurança da plataforma.

Não deixe de conferir

Recursos de segurança relacionados do Procore