sticapi_client 3.0.10 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06bd8dae75abd972227b69fee05c0ed94cb49fc8e865bd4284c9bf0756921b8c
4
- data.tar.gz: 7bcac5e1e1606f3889b54cca51975b2eeec44052bede365791841a506bbc9411
3
+ metadata.gz: 8cd634d7bbe1869af96710e65d7a5140a981b828d323ca3ecaa5e47d515679cc
4
+ data.tar.gz: 4ff3b1807591eb85f2cdbb816b61fe3db8f1a0eb638405046b98680ae28bbae8
5
5
  SHA512:
6
- metadata.gz: a9b8644ce18f2e142b2337ba6903d1e78deeddd02b7b6b3d72fbfcf6dd50ee4203cd02adcd33fe86d6309dbb616d073b6ccb60ff027683ccd7ea91c990b54cda
7
- data.tar.gz: df07ba51634d1e4df212981e311977d87880d4f29c0c02ccd62bfe385b49519ed5acaed1aece7f1266eb37441dcc3c28135f9c66d2732c79df6f680caafe823e
6
+ metadata.gz: b8f451750701cdba3c26ac2aaacfa40da9fee95f44991f66131708f3b5e5ac4cf7d4d6a608eda0de5f5982a36a8d7920bb011ad71854e1677328b9744e072cb3
7
+ data.tar.gz: 215af488d0d5b9be9505e582f659a5331ace76fa36ca6f5e9ed9081e14abfe8995c641bcc532f84277ebb1dfa8ba6ec1e00b2e4d00886d8c73c4dae0bafd886f
@@ -0,0 +1,56 @@
1
+ module SticapiClient
2
+ module AD
3
+ class Group
4
+ # Consulta dados de um grupo no AD
5
+ # Parâmetro value [String] nome do grupo
6
+ # Retorno [JSON] Dados básicos do grupo
7
+ # group: { dn cn[] member[] objectcategory[] }
8
+ def self.find_group(options = {})
9
+ Sticapi::SticapiClient.instance.sticapi_request("/groups/find_group", options)
10
+ end
11
+
12
+ # Cadastra um grupo no AD
13
+ # Parâmetro value [String] nome do grupo
14
+ # Parâmetro base [String] nome do grupo que ficará abaixo da raiz definida em LDAP_BASE
15
+ # Retorno [JSON] Sucesso ou falha ao cadastrar o grupo
16
+ # group: { string }
17
+ def self.add_group(options = {})
18
+ Sticapi::SticapiClient.instance.sticapi_request("/groups/add_group", options)
19
+ end
20
+
21
+ # Remove um grupo no AD
22
+ # Parâmetro value [String] "CN=teste,OU=UESPI,OU=INTRANET,DC=tjpi,DC=local"
23
+ # Retorno [JSON] Sucesso ou falha ao remover o grupo
24
+ # group: { string }
25
+ def self.remove_group(options = {})
26
+ Sticapi::SticapiClient.instance.sticapi_request("/groups/remove_group", options)
27
+ end
28
+
29
+ # Lista todos os usuários pertencentes a um grupo no AD
30
+ # Retorno [JSON] todos os grupos com usuários membros
31
+ # campos: [ @myhash : { dn[] cn[] member[] objectcategory[] }]
32
+ def self.list_all
33
+ Sticapi::SticapiClient.instance.sticapi_request("/groups/list_all")
34
+ end
35
+
36
+ # Cadastra um usuário em um grupo no AD
37
+ # Parâmetro username [String] "CN=testeuser,OU=STIC,OU=TJ-PI,OU=PJPI,OU=INTRANET,DC=tjpi,DC=local"
38
+ # Parâmetro group [String] "CN=G.stic.Infraestrutura,OU=GROUPS,OU=INTRANET,DC=tjpi,DC=local"
39
+ # Retorno [JSON] Sucesso ou falha ao cadastrar o usuário no grupo
40
+ # group: { string }
41
+ def self.add_member(options = {})
42
+ Sticapi::SticapiClient.instance.sticapi_request("/groups/add_member", options)
43
+ end
44
+
45
+ # Remove um usuário de um grupo no AD
46
+ # Parâmetro username [String] "CN=testeuser,OU=STIC,OU=TJ-PI,OU=PJPI,OU=INTRANET,DC=tjpi,DC=local"
47
+ # Parâmetro group [String] "CN=G.stic.Infraestrutura,OU=GROUPS,OU=INTRANET,DC=tjpi,DC=local"
48
+ # Retorno [JSON] Sucesso ou falha ao remover o grupo
49
+ # group: { string }
50
+ def self.remove_member(options = {})
51
+ Sticapi::SticapiClient.instance.sticapi_request("/groups/remove_member", options)
52
+ end
53
+
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,38 @@
1
+ module SticapiClient
2
+ module AD
3
+ class OU
4
+ # Consulta dados de uma unidade organizacional no AD
5
+ # Parâmetro value [String] nome da OU
6
+ # Retorno [JSON] Dados básicos da OU
7
+ # ou: { dn ou[] objectcategory[] }
8
+ def self.find_ou(options = {})
9
+ Sticapi::SticapiClient.instance.sticapi_request("/ous/find_ou", options)
10
+ end
11
+
12
+ # Cadastra uma unidade organizacional no AD
13
+ # Parâmetro value [String] nome da OU
14
+ # Parâmetro base [String] nome da unidade organizacional que ficará abaixo da raiz definida em LDAP_BASE
15
+ # Retorno [JSON] Sucesso ou falha ao cadastrar a unidade organizacional
16
+ # ou: { string }
17
+ def self.add_ou(options = {})
18
+ Sticapi::SticapiClient.instance.sticapi_request("/ous/add_ou", options)
19
+ end
20
+
21
+ # Remove uma unidade organizacional no AD
22
+ # Parâmetro value [String] "OU=teste,OU=UESPI,OU=INTRANET,DC=tjpi,DC=local"
23
+ # Retorno [JSON] Sucesso ou falha ao remover a unidade organizacional
24
+ # ou: { string }
25
+ def self.remove_ou(options = {})
26
+ Sticapi::SticapiClient.instance.sticapi_request("/ous/remove_ou", options)
27
+ end
28
+
29
+ # Lista todos os usuários pertencentes a uma OU no AD
30
+ # Parâmetro value [String] "OU=teste,OU=UESPI,OU=INTRANET,DC=tjpi,DC=local"
31
+ # Retorno [JSON] Sucesso ou falha ao habilitar o usuário
32
+ # users: { usuários }
33
+ def self.list_users(options = {})
34
+ Sticapi::SticapiClient.instance.sticapi_request("/ous/list_users", options)
35
+ end
36
+ end
37
+ end
38
+ end
@@ -2,26 +2,35 @@ module SticapiClient
2
2
  class Sip
3
3
  # Listar unidades cadastradas no sistema SEI
4
4
  # Retorno [JSON] Unidades do sistema SEI com dados de contato
5
- def self.unidades(options = {})
5
+ def self.unidades
6
6
  Sticapi::SticapiClient.instance.sticapi_request('/sip/unidades', options)
7
7
  end
8
8
 
9
9
  # Listar tipos de documento cadastrados no sistema SEI
10
10
  # Retorno [JSON] tipos de documento do sistema SEI
11
- def self.tipos_de_documento(options = {})
11
+ def self.tipos_de_documento
12
12
  Sticapi::SticapiClient.instance.sticapi_request('/sip/tipos_de_documento', options)
13
13
  end
14
14
 
15
- # Listar usuario cadastrados no sistema SEI
16
- # Retorno [JSON] usuarios do sistema SEI
15
+ # Listar tipos de documento cadastrados no sistema SEI
16
+ # Retorno [JSON] tipos de documento do sistema SEI
17
17
  def self.usuarios(options = {})
18
18
  Sticapi::SticapiClient.instance.sticapi_request('/sip/usuarios', options)
19
19
  end
20
20
 
21
- # Listar permissoes de usuario cadastradas no sistema SEI
22
- # Retorno [JSON] permissoes do sistema SEI
21
+ # Listar tipos de documento cadastrados no sistema SEI
22
+ # Retorno [JSON] tipos de documento do sistema SEI
23
23
  def self.permissoes(options = {})
24
24
  Sticapi::SticapiClient.instance.sticapi_request('/sip/permissoes', options)
25
25
  end
26
+
27
+ # Consulta as unidades do usuário no SEI
28
+ # Parâmetro username [String] nome do usuário
29
+ # Retorno [JSON] unidades do usuário no SEI
30
+ # campos: [ id_unidade id_orgao sigla descricao sin_ativo sin_global name id_origem ]
31
+ def self.unidades_do_usuario(options = {})
32
+ options[:kind] = 'get'
33
+ Sticapi::SticapiClient.instance.sticapi_request("/sip/unidades_do_usuario", options)
34
+ end
26
35
  end
27
36
  end
@@ -1,16 +1,7 @@
1
+ # This module is deprecated!!!
1
2
  module SticapiController
2
- def self.included(base)
3
- base.send(:before_action, :get_token)
4
- # base.send(:after_action, :update_token)
5
- end
6
-
7
3
  def initialize
8
4
  super
9
- @model_class = self.class
10
- return
11
- end
12
-
13
- def get_token
14
- Sticapi::SticapiClient.instance.get_token
5
+ ActiveSupport::Deprecation.warn("SticapiController module is deprecated!!!")
15
6
  end
16
7
  end
@@ -1,7 +1,83 @@
1
1
  module SticapiClient
2
- class User
3
- def self.find_user(filter: 'cn', value: '')
4
- Sticapi::SticapiClient.instance.sticapi_request("/users/find_user", kind: 'post', filter: filter, value: value)
2
+ module AD
3
+ class User
4
+ # Consulta dados do usuário no AD
5
+ # Parâmetro filter [String] cn, samaccountname, description, userprincipalname
6
+ # Parâmetro value [String] username (caso filter seja cn ou samaccountname), cpf (caso filter seja description), email (caso filter seja userprincipalname)
7
+ # Retorno [JSON] Dados básicos da pessoa
8
+ # user: { dn username samaccountname address cpf email name memberof[] job_title function department unit_phone useraccountcontrol }
9
+ def self.find_user(options = {})
10
+ Sticapi::SticapiClient.instance.sticapi_request("/users/find_user", options)
11
+ end
12
+
13
+ # Consulta as unidades do usuário no SEI
14
+ # Parâmetro username [String] nome do usuário
15
+ # Retorno [JSON] unidades do usuário no SEI
16
+ # campos: [ id_unidade id_orgao sigla descricao sin_ativo sin_global name id_origem ]
17
+ def self.user_units(options = {})
18
+ options[:kind] = 'get'
19
+ Sticapi::SticapiClient.instance.sticapi_request("/users/unidades_do_usuario", options)
20
+ end
21
+
22
+ # Cadastra um usuário no AD
23
+ # Parâmetro attrs [json] { cn, description, description, displayName, street, title, physicaldeliveryofficename, telephonenumber }
24
+ # Parâmetro pwd [String] senha do usuário
25
+ # Parâmetro ou [String] unidade organizacional do usuário
26
+ # Retorno [JSON] Sucesso ou falha ao cadastrar o usuário
27
+ # user: { string }
28
+ def self.add_user(options = {})
29
+ Sticapi::SticapiClient.instance.sticapi_request("/users/add_user", options)
30
+ end
31
+
32
+ # Consulta todos os usuários no AD
33
+ # Retorno [JSON] todos os usuários no AD
34
+ # campos: [ usuários ]
35
+ def self.list_all
36
+ Sticapi::SticapiClient.instance.sticapi_request("/users/list_all")
37
+ end
38
+
39
+ # Habilita o usuário no AD
40
+ # Parâmetro value [String] username
41
+ # Retorno [JSON] Sucesso ou falha ao habilitar o usuário
42
+ # user: { string }
43
+ def self.enable_user(options = {})
44
+ Sticapi::SticapiClient.instance.sticapi_request("/users/enable_user", options)
45
+ end
46
+
47
+ # Desabilita o usuário no AD
48
+ # Parâmetro value [String] username
49
+ # Retorno [JSON] Sucesso ou falha ao desabilitar o usuário
50
+ # user: { string }
51
+ def self.disable_user(options = {})
52
+ Sticapi::SticapiClient.instance.sticapi_request("/users/disable_user", options)
53
+ end
54
+
55
+ # Altera a unidade organizacional de um usuário no AD
56
+ # Parâmetro username [string] username
57
+ # Parâmetro base [String] "OU=PJPI.OFF,OU=intranet,DC=tjpi,DC=local"
58
+ # Retorno [JSON] Sucesso ou falha ao mover o usuário
59
+ # user: { string }
60
+ def self.move_user(options = {})
61
+ Sticapi::SticapiClient.instance.sticapi_request("/users/move_user", options)
62
+ end
63
+
64
+ # Altera o nome de um usuário no AD
65
+ # Parâmetro username [string] username
66
+ # Parâmetro value [String] novo nome do usuário
67
+ # Retorno [JSON] Sucesso ou falha ao renomear o usuário
68
+ # user: { string }
69
+ def self.rename_user(options = {})
70
+ Sticapi::SticapiClient.instance.sticapi_request("/users/rename_user", options)
71
+ end
72
+
73
+ # Altera a senha de um usuário no AD
74
+ # Parâmetro username [string] username
75
+ # Parâmetro newpwd [String] nova senha do usuário
76
+ # Retorno [JSON] Sucesso ou falha ao alterar a senha do usuário
77
+ # user: { string }
78
+ def self.change_password(options = {})
79
+ Sticapi::SticapiClient.instance.sticapi_request("/users/change_password", options)
80
+ end
5
81
  end
6
82
  end
7
83
  end
@@ -1,3 +1,3 @@
1
1
  module SticapiClient
2
- VERSION = "3.0.10"
2
+ VERSION = "3.1.1"
3
3
  end
@@ -14,6 +14,8 @@ require 'sticapi_client/sip'
14
14
  require 'sticapi_client/themis'
15
15
  require 'sticapi_client/transparencia'
16
16
  require 'sticapi_client/user'
17
+ require 'sticapi_client/group'
18
+ require 'sticapi_client/ou'
17
19
  require 'net/http'
18
20
 
19
21
  module Sticapi
@@ -66,13 +68,14 @@ module Sticapi
66
68
  end
67
69
 
68
70
  def update_token(response)
69
- @access_token = response['access-token']
70
- @client = response['client']
71
- @uid = response['uid']
72
- @expiry = response['expiry']
71
+ @access_token = response['access-token'] if response['access-token']
72
+ @client = response['client'] if response['client']
73
+ @uid = response['uid'] if response['uid']
74
+ @expiry = response['expiry'] if response['expiry']
73
75
  end
74
76
 
75
77
  def sticapi_request(route, options = {})
78
+ get_token
76
79
  kind = options[:kind] || 'post'
77
80
  uri = URI.parse("#{self.uri}#{route}")
78
81
  http = Net::HTTP.new(uri.host, uri.port)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sticapi_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.10
4
+ version: 3.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ricardo Viana
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-12-19 00:00:00.000000000 Z
11
+ date: 2023-01-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -107,7 +107,9 @@ files:
107
107
  - lib/sticapi_client/diario.rb
108
108
  - lib/sticapi_client/etjpi.rb
109
109
  - lib/sticapi_client/gestorh.rb
110
+ - lib/sticapi_client/group.rb
110
111
  - lib/sticapi_client/intranet.rb
112
+ - lib/sticapi_client/ou.rb
111
113
  - lib/sticapi_client/pessoas.rb
112
114
  - lib/sticapi_client/sip.rb
113
115
  - lib/sticapi_client/sticapi_controller.rb
@@ -135,7 +137,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
137
  - !ruby/object:Gem::Version
136
138
  version: '0'
137
139
  requirements: []
138
- rubygems_version: 3.3.22
140
+ rubygems_version: 3.3.26
139
141
  signing_key:
140
142
  specification_version: 4
141
143
  summary: Client to use TJPI sticapi services