Como criar usuários do Protheus através de Webservice

Produto:

Microsiga Protheus

Versões:

11 e 12

Passo a passo:

O Protheus permite a criação de usuários através de Webservices REST. Para tanto, deve-se configurar o serviço REST no arquivo appserver.ini do Protheus.

Para que seja possível incluir um novo cadastro, é necessário que o usuário enviado no header da requisição REST possua permissão de acesso a rotina CFGA510.

Segue abaixo um exemplo de configuração no arquivo appserver.ini. Para maiores detalhes sobre a configuração do WebService REST no Protheus, acesse:
http://tdn.totvs.com/display/tec/REST

 

[HTTP] 
ENABLE=1 
PORT=8079
PATH=C:\TOTVS 12\Microsiga\help-online
Environment=P12
[ONSTART]
JOBS=HTTPJOB
REFRESHRATE=120

[HTTPJOB]
MAIN=HTTP_START
ENVIRONMENT=P12

[HTTPV11]
Enable=1
Sockets=HTTPREST

[HTTPREST] 
Port=8088
IPsBind=
URIs=HTTPURI
Security=0

[HTTPURI]
URL=/rest
PrepareIn=01
Instances=1,1

 


Para testar a conexão com o REST, acesse, pelo navegador:
- Página inicial dos serviços REST: http://localhost:8088/rest/
- Ping ao Webservice REST: http://localhost:8088/rest/ping/
- Usuários do Protheus: http://localhost:8088/rest/users/


Após o Webservice REST estar iniciado com o Protheus, deve-se enviar para este Webservice via POST um JSON com as informações abaixo:

{
  "schemas": [
    "urn:scim:schemas:core:2.0:User",
    "urn:scim:schemas:extension:enterprise:2.0:User"
  ],
  "meta": {
  },
  "externalId": "",
  "userName": "usuario1",
  "name": {
    "formatted": "Usuario Um",
    "givenName": "Usuario",
    "familyName": "Um"
  },
  "displayName": "Usuario Um",
  "emails": [
    {
      "value": "[email protected]",
      "type": "work",
      "primary": true
    }
  ],
  "active": true,
  "groups": [],
  "title": "",
  "department": "",
  "password": "senhausuario1"
}

 

 

No exemplo, estamos utilizando um aplicativo Client para envio do JSON, mas pode ser utilizada uma customização do cliente para este envio.

 

Ao efetuar o envio do JSON (Send), será exibido no Console do Protheus uma informação de confirmação como esta:

 

Observações:

Via Webservice REST, apenas é possível a criação básica do usuário. Para configurar permissões, acessos, menus, etc, é necessária a utilização do Identity.