Primeiros passos
Módulo Drupal
Ligue o Drupal ao DocID®, aprovisione utilizadores nativos, associe atributos verificados a funções e proteja conteúdo.
O módulo oficial DocID® liga o Drupal a uma das maiores redes online de profissionais de saúde. Utiliza os utilizadores, funções, permissões, sessões, nós, conteúdos multimédia e blocos nativos do Drupal para disponibilizar conteúdo profissional a um público alargado através dos fluxos habituais do Drupal.
Abrir o módulo DocID® no Drupal.org
Pré-requisitos
- Um site Drupal com HTTPS e permissão para instalar e configurar módulos
- Uma conta DocID® com um asset de site configurado e credenciais OAuth
- Os módulos File, Filter, Node, Options e User do Drupal core; Media é opcional para conteúdos multimédia protegidos
Instalar o módulo
Através da interface de administração
Descarregue o pacote atual a partir do projeto DocID® no Drupal.org. Na administração do Drupal, abra Estender → Adicionar novo módulo, carregue o arquivo e conclua a instalação.
Com Composer
Execute o seguinte comando na raiz do projeto Drupal:
Ativar o módulo
Ative o DocID® em Estender na administração do Drupal. Em alternativa, ative-o com Drush e reconstrua as caches:
Configurar OAuth e os dados de clientes solicitados
- Abra Configuração → Pessoas → DocID® → Credenciais OAuth.
- Copie o URL de callback apresentado para os URI de redirecionamento permitidos do asset correspondente no painel empresarial DocID®.
- Introduza o Client ID e o Client Secret do asset.
- Em Dados de clientes solicitados, mantenha openid e professional e ative apenas os dados opcionais profile, email ou phone de que o site necessita.
Scopes disponíveis
| Scope | Estado | Claims |
|---|---|---|
| openid | Obrigatório | sub |
| professional | Obrigatório | profession_id, discipline_id, profession_verified |
| profile | Opcional | name, title, given_name, family_name, gender |
| Opcional | ||
| phone | Opcional | phone_number |
Utilizadores nativos e mapeamento de funções
Um início de sessão DocID® bem-sucedido aprovisiona ou atualiza um utilizador nativo do Drupal associado através do claim sub estável. As contas não são associadas por e-mail. Os mapeamentos podem abranger todos os utilizadores DocID® ou identificadores exatos de profissão, disciplina, instituição ou tema. Todas as funções não administrativas correspondentes são combinadas; as funções atribuídas independentemente no Drupal permanecem inalteradas.
Proteger conteúdo e multimédia
Os editores podem escolher Público, Apenas utilizadores DocID® ou Apenas funções selecionadas nas definições de acesso DocID® do conteúdo suportado. As regras por função usam o acesso a nós do Drupal. Os conteúdos multimédia locais protegidos devem usar o sistema de ficheiros privado do Drupal para que a entrega continue sujeita à autorização do Drupal.
Destinos de início de sessão
Configure destinos internos do Drupal por profissão ou disciplina em Destinos de início de sessão. O número de prioridade mais baixo prevalece. Uma página protegida solicitada antes da autenticação tem prioridade sobre um destino baseado no perfil.
Etiquetas inteligentes disponíveis
O módulo fornece os blocos DocID® Account Navigation, início de sessão DocID® e conta DocID®. Para usar etiquetas inteligentes em conteúdo editorial, ative o filtro DocID® smart tags no formato de texto de confiança relevante.
Autenticação e navegação
A ligação de início de sessão adapta-se ao estado: apresenta iniciar sessão aos visitantes e terminar sessão aos utilizadores DocID® autenticados. Os atributos login_text e logout_text personalizam ambos os rótulos. O nome de utilizador usa o melhor valor disponível por esta ordem: título, nome próprio e apelido; título e apelido; e-mail autorizado; ID de utilizador DocID® estável.
| Shortcode | Descrição |
|---|---|
| [docid-loggedin-content]Content[/docid-loggedin-content] | Mostra o conteúdo incluído apenas a utilizadores DocID® autenticados. |
| [docid-loggedout-content]Content[/docid-loggedout-content] | Mostra o conteúdo incluído apenas a visitantes sem uma sessão DocID® autenticada. |
| [docid-login-link] | Mostra Iniciar sessão aos visitantes e Terminar sessão aos utilizadores DocID® autenticados. |
| [docid-login-link login_text="Access" logout_text="Leave"] | Utiliza rótulos de texto personalizados para ambos os estados de autenticação. |
| [docid-username] | Mostra o melhor nome de utilizador disponível: título, nome próprio e apelido; depois título e apelido; depois o endereço de e-mail autorizado; e, por fim, o ID de utilizador DocID® estável. |
Dados de perfil
| Etiqueta inteligente | Scope | Descrição |
|---|---|---|
| [docid-profile-id] | openid (obrigatório) | O identificador estável e único da conta DocID®. |
| [docid-profile-name] | profile (opcional; autorização necessária) | O título, o nome próprio e o apelido combinados. |
| [docid-profile-title] | profile (opcional; autorização necessária) | O título ou a forma de tratamento. |
| [docid-profile-given-name] | profile (opcional; autorização necessária) | O nome próprio. |
| [docid-profile-family-name] | profile (opcional; autorização necessária) | O apelido. |
| [docid-profile-gender] | profile (opcional; autorização necessária) | O valor de género. |
| [docid-profile-email] | email (opcional; autorização necessária) | O endereço de e-mail transferido, quando disponível. |
| [docid-profile-phone-number] | phone (opcional; autorização necessária) | O número de telefone transferido, quando disponível. |
Aceder ao estado de autenticação e aos claims em PHP
No código da aplicação, carregue a identidade associada ao utilizador atual do Drupal através do serviço IdentityRepository. Em produção, injete current_user e o repositório na sua classe em vez de usar o contentor de serviços estático.
Testar antes do lançamento
- Abra conteúdo público e protegido sem iniciar sessão.
- Conclua o início de sessão com uma conta de teste elegível e confirme o regresso ao conteúdo inicialmente solicitado.
- Continue sem dados de perfil opcionais e confirme que a autenticação funciona com os scopes obrigatórios.
- Teste cada mapeamento de função e destino de início de sessão, incluindo uma conta sem correspondência.
- Termine a sessão e confirme que o conteúdo protegido deixou de estar acessível.
A integração fornece funções técnicas de autenticação e controlo de acesso. Os operadores do site continuam responsáveis pela escolha dos scopes, permissões, avisos e bases jurídicas adequados à sua implementação.