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 +4 -4
- data/lib/sticapi_client/group.rb +56 -0
- data/lib/sticapi_client/ou.rb +38 -0
- data/lib/sticapi_client/sip.rb +15 -6
- data/lib/sticapi_client/sticapi_controller.rb +2 -11
- data/lib/sticapi_client/user.rb +79 -3
- data/lib/sticapi_client/version.rb +1 -1
- data/lib/sticapi_client.rb +7 -4
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8cd634d7bbe1869af96710e65d7a5140a981b828d323ca3ecaa5e47d515679cc
|
4
|
+
data.tar.gz: 4ff3b1807591eb85f2cdbb816b61fe3db8f1a0eb638405046b98680ae28bbae8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
data/lib/sticapi_client/sip.rb
CHANGED
@@ -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
|
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
|
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
|
16
|
-
# Retorno [JSON]
|
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
|
22
|
-
# Retorno [JSON]
|
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
|
-
|
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
|
data/lib/sticapi_client/user.rb
CHANGED
@@ -1,7 +1,83 @@
|
|
1
1
|
module SticapiClient
|
2
|
-
|
3
|
-
|
4
|
-
|
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
|
data/lib/sticapi_client.rb
CHANGED
@@ -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.
|
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:
|
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.
|
140
|
+
rubygems_version: 3.3.26
|
139
141
|
signing_key:
|
140
142
|
specification_version: 4
|
141
143
|
summary: Client to use TJPI sticapi services
|