Move submódulos para modules/ seguindo convenção Drupal

ldap_departments_sync/ e ldap_research_groups_sync/ movidos para
modules/, padrão adotado por módulos contrib como Drupal Commerce.
Nenhum arquivo PHP ou YAML alterado — o Drupal descobre módulos
recursivamente pelo .info.yml independente do caminho.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-02 09:22:22 -03:00
parent c66edef0ac
commit 7e338677a3
98 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,69 @@
# LDAP Research Groups Sync
Módulo Drupal 11 que sincroniza grupos de pesquisa do servidor LDAP corporativo com entidades do tipo `research_group` (módulo Group).
## Funcionalidades
- Criação e atualização automática de grupos de pesquisa via cron a partir de uma LDAP query configurável
- Sincronização de membros dos grupos a partir do atributo `member` (ou outro configurável) de cada entrada LDAP
- Regras de acesso configuráveis por grupo
- Proteção dos campos LDAP do usuário contra edição não autorizada
## Dependências
- `drupal:options`
- `drupal:telephone`
- `group:group`
- `ldap:ldap_servers`
- `site_tools`
## Campos criados
### No grupo (`research_group`)
| Campo | Tipo | Descrição |
|---|---|---|
| `field_rg_code` | String | Código do grupo (chave de sincronização) |
| `field_rg_phone` | Telephone | Telefone |
| `field_rg_mail` | Email | E-mail |
| `field_rg_coord` | Entity reference (user) | Coordenador do grupo |
| `field_rg_coord_assoc` | Entity reference (user) | Coordenador associado do grupo |
| `field_rg_department` | Entity reference (group) | Departamento ao qual o grupo está vinculado |
### No usuário
| Campo | Tipo | Descrição |
|---|---|---|
| `field_user_research_groups` | Entity reference (group, múltiplos) | Grupos de pesquisa do usuário (populado pelo sync) |
## Instalação
```bash
drush en ldap_research_groups_sync
drush cr
```
## Configuração
Acesse `/admin/config/local-modules/ldap-research-groups-sync` e configure:
1. **Group Type** — selecione `research_group`
2. **LDAP Server** — servidor LDAP a ser usado
3. **LDAP Query** — query entity que retorna as entradas dos grupos de pesquisa
4. **Attribute Mappings** — mapeamento entre atributos LDAP e campos do grupo
5. **Member Synchronization** — habilite e defina o atributo LDAP de membros (padrão: `member`)
> **Atenção:** o atributo de membros (ex.: `member`) deve estar incluído nos atributos retornados pela LDAP query, ou a query não deve ter filtro de atributos.
## Sincronização manual
```bash
drush php-eval "\Drupal::service('ldap_research_groups_sync.sync')->syncResearchGroups();"
```
A sincronização também é executada automaticamente pelo cron.
## Permissões
- `administer ldap research groups sync` — acesso à página de configuração
- `edit ldap managed user rg fields` — permite editar o campo `field_user_research_groups` manualmente (normalmente reservado ao sync)