keycloak-admin 1.0.17 → 1.0.18

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 20b76c1bb1420309572914deaecf3bc3d56f44ceaf3b0b02b38f5f464eb5e66c
4
- data.tar.gz: 94da4db63c8918619c813ee14ce9f6e2340a073124ad9746f86a817777b5e75a
3
+ metadata.gz: ace7d373b72f614c4bb9a1909c548a1d9331d3898793ee41dbf6466e0b7671ff
4
+ data.tar.gz: 0e9a4b975452f558c229d5d692c15395283332180e4ff2ac282c2099f9b19fc8
5
5
  SHA512:
6
- metadata.gz: c75e35d6003d82710f80f5e462718bb8aec7bc28e1c1a722453e8b7044f006e4b0b22070ee1b6fb90d33d2e029c2fd295fc13828d8bc84a53d841273be3451dd
7
- data.tar.gz: 140acb4be1a220f7decf254a9482d9b992400c70626833d8ba732e862adfd43e77c572daa204800c65a894ae7ba807905f656888e5faca6ce09acad46ab02143
6
+ metadata.gz: 428d8cf27e776d7f50711d8a3ec79a0f718505e090a9057edb240fc781c5f56ddc61479159b0cf391d0e1009681cae3dd3bb466e77d28e2f6e1a6150e570bfa7
7
+ data.tar.gz: b55e188ba286568cd34d5fbcd136f252997152cd89c85b7890b85fdf543b9f6e2f0392889c6abd420a0d2b3048f6a0530d4fa03630ba53d8b0d76894cdbc5a67
data/CHANGELOG.md CHANGED
@@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.0.18] - 2022-11-24
9
+
10
+ * List user realm-level role mappings (thanks to @Kazhuu)
11
+
8
12
  ## [1.0.17] - 2022-11-02
9
13
 
10
14
  * Delete `Client`
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- keycloak-admin (1.0.17)
4
+ keycloak-admin (1.0.18)
5
5
  http-cookie (~> 1.0, >= 1.0.3)
6
6
  rest-client (~> 2.1)
7
7
 
data/README.md CHANGED
@@ -12,7 +12,7 @@ This gem *does not* require Rails.
12
12
  For example, using `bundle`, add this line to your Gemfile.
13
13
 
14
14
  ```ruby
15
- gem "keycloak-admin", "1.0.17"
15
+ gem "keycloak-admin", "1.0.18"
16
16
  ```
17
17
 
18
18
  ## Login
@@ -5,6 +5,13 @@ module KeycloakAdmin
5
5
  @user_resource = user_resource
6
6
  end
7
7
 
8
+ def list
9
+ response = execute_http do
10
+ RestClient::Resource.new(realm_level_url, @configuration.rest_client_options).get(headers)
11
+ end
12
+ JSON.parse(response).map { |role_as_hash| RoleRepresentation.from_hash(role_as_hash) }
13
+ end
14
+
8
15
  def save_realm_level(role_representation_list)
9
16
  execute_http do
10
17
  RestClient::Resource.new(realm_level_url, @configuration.rest_client_options).post(
@@ -1,3 +1,3 @@
1
1
  module KeycloakAdmin
2
- VERSION = "1.0.17"
2
+ VERSION = "1.0.18"
3
3
  end
@@ -12,6 +12,27 @@ RSpec.describe KeycloakAdmin::RoleMapperClient do
12
12
  end
13
13
  end
14
14
 
15
+ describe "#list" do
16
+ let(:realm_name) { "valid-realm" }
17
+ let(:user_id) { "test_user" }
18
+
19
+ before(:each) do
20
+ @role_mapper_client = KeycloakAdmin.realm(realm_name).user(user_id).role_mapper
21
+
22
+ stub_token_client
23
+ allow_any_instance_of(RestClient::Resource).to receive(:get)
24
+ .and_return '[{"id":"test_role_id","name":"test_role_name","composite": false}]'
25
+ end
26
+
27
+ it "list user realm-level role mappings" do
28
+ roles = @role_mapper_client.list
29
+ expect(roles.length).to eq 1
30
+ expect(roles[0].id).to eq "test_role_id"
31
+ expect(roles[0].name).to eq "test_role_name"
32
+ expect(roles[0].composite).to be false
33
+ end
34
+ end
35
+
15
36
  describe "#save_realm_level" do
16
37
  let(:realm_name) { "valid-realm" }
17
38
  let(:user_id) { "test_user" }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: keycloak-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.17
4
+ version: 1.0.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lorent Lempereur
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-02 00:00:00.000000000 Z
11
+ date: 2022-11-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: http-cookie