cf-uaac 4.17.0 → 4.18.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/uaa/cli/client_reg.rb +19 -5
- data/lib/uaa/stub/scim.rb +2 -2
- data/spec/client_reg_spec.rb +12 -1
- data/version.txt +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b470c3d2590a9e00f4481b0d5ac9c611b38f6f14b3d506c3a2c3c4b6eeede7c3
|
4
|
+
data.tar.gz: f0838fe08f2a05f001a12d70c093b32f5c209986e271ab3fd0ed71ff12f58699
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 40db2b6725b381ad1b516ed64ccf567130e2a9760da0b9555973f7c4b6f0cd8a42fca39203048358117bd067e459492ff03d9978fc6fae994fc8b938730e4ba5
|
7
|
+
data.tar.gz: a7c3573b9409e08c22f9629de314c7b4b3f2e89c2359ebce22291bd21cdf7fe85fb471c2042c9ffe29d08fa89515a7affd652029da227bb30a96ed525d8e51cd
|
data/lib/uaa/cli/client_reg.rb
CHANGED
@@ -30,7 +30,8 @@ class ClientCli < CommonCli
|
|
30
30
|
:autoapprove => 'list',
|
31
31
|
:allowpublic => 'list',
|
32
32
|
:allowedproviders => 'list',
|
33
|
-
:'signup_redirect_url' => 'url'
|
33
|
+
:'signup_redirect_url' => 'url',
|
34
|
+
:required_user_groups => 'list'
|
34
35
|
}
|
35
36
|
CLIENT_SCHEMA.each { |k, v| define_option(k, "--#{k} <#{v}>") }
|
36
37
|
|
@@ -65,8 +66,18 @@ class ClientCli < CommonCli
|
|
65
66
|
|
66
67
|
desc "client get [id]", "Get specific client registration", :attrs do |id|
|
67
68
|
pp(scim_request do |sr|
|
68
|
-
|
69
|
-
|
69
|
+
if opts[:attrs] == nil
|
70
|
+
# return whole object, not search by filter
|
71
|
+
begin
|
72
|
+
client = sr.get(:client, clientid(id))
|
73
|
+
rescue NotFound
|
74
|
+
# to raise same error as scim_get_object
|
75
|
+
raise NotFound
|
76
|
+
end
|
77
|
+
else
|
78
|
+
client = scim_get_object(sr, :client, clientid(id), opts[:attrs])
|
79
|
+
end
|
80
|
+
add_meta_fields_to_client(sr, client, id)
|
70
81
|
end)
|
71
82
|
end
|
72
83
|
|
@@ -153,8 +164,11 @@ class ClientCli < CommonCli
|
|
153
164
|
add_meta_fields_to_client(cr, client)
|
154
165
|
end
|
155
166
|
|
156
|
-
def add_meta_fields_to_client(cr, client)
|
157
|
-
|
167
|
+
def add_meta_fields_to_client(cr, client, id = nil)
|
168
|
+
if id == nil
|
169
|
+
id = client['client_id']
|
170
|
+
end
|
171
|
+
meta = cr.get_client_meta(id)
|
158
172
|
client.merge({:created_by => meta['createdby']})
|
159
173
|
end
|
160
174
|
end
|
data/lib/uaa/stub/scim.rb
CHANGED
@@ -27,7 +27,7 @@ class StubScim
|
|
27
27
|
|
28
28
|
private
|
29
29
|
|
30
|
-
CREATOR = '
|
30
|
+
CREATOR = 'Freedom'
|
31
31
|
|
32
32
|
# attribute types. Anything not listed is case-ignore string
|
33
33
|
HIDDEN_ATTRS = [:rtype, :password, :client_secret].to_set
|
@@ -66,7 +66,7 @@ class StubScim
|
|
66
66
|
client: [*COMMON_ATTRS, :client_id, :name, :client_secret, :authorities,
|
67
67
|
:authorized_grant_types, :scope, :autoapprove,
|
68
68
|
:access_token_validity, :refresh_token_validity, :redirect_uri, :allowedproviders,
|
69
|
-
:'signup_redirect_url'].to_set,
|
69
|
+
:'signup_redirect_url', :required_user_groups].to_set,
|
70
70
|
group: [*COMMON_ATTRS, :displayname, :members, :writers, :readers, :external_groups].to_set }
|
71
71
|
VISIBLE_ATTRS = {user: Set.new(LEGAL_ATTRS[:user] - HIDDEN_ATTRS),
|
72
72
|
client: Set.new(LEGAL_ATTRS[:client] - HIDDEN_ATTRS),
|
data/spec/client_reg_spec.rb
CHANGED
@@ -86,16 +86,27 @@ describe ClientCli do
|
|
86
86
|
Cli.run("client jwt delete #{@test_client} ").should be
|
87
87
|
end
|
88
88
|
|
89
|
+
it "fails to get client" do
|
90
|
+
Cli.run("token client get #{@test_client} -s #{@test_secret}").should be
|
91
|
+
Cli.run("context #{@admin_client}").should be
|
92
|
+
Cli.run("client get #{@test_client}").should be
|
93
|
+
Cli.run("client get #{@test_client} -a id").should be
|
94
|
+
Cli.output.string.should include 'id'
|
95
|
+
Cli.run("client get not-existing").should be_nil
|
96
|
+
Cli.output.string.should include 'NotFound'
|
97
|
+
end
|
98
|
+
|
89
99
|
context 'as updated client' do
|
90
100
|
|
91
101
|
before :all do
|
92
102
|
# update the test client as the admin client
|
93
103
|
Cli.run("token client get #{@test_client} -s #{@test_secret}").should be
|
94
104
|
Cli.run("context #{@admin_client}").should be
|
95
|
-
Cli.run("client update #{@test_client} --authorities scim.write,scim.read").should be
|
105
|
+
Cli.run("client update #{@test_client} --authorities scim.write,scim.read --required_user_groups openid").should be
|
96
106
|
Cli.output.string.should include 'created_by'
|
97
107
|
Cli.run("client get #{@test_client}").should be
|
98
108
|
Cli.output.string.should include 'scim.read', 'scim.write'
|
109
|
+
Cli.output.string.should include 'required_user_groups'
|
99
110
|
end
|
100
111
|
|
101
112
|
it 'fails to create a user account with old token' do
|
data/version.txt
CHANGED
@@ -1 +1 @@
|
|
1
|
-
4.
|
1
|
+
4.18.0
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cf-uaac
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.18.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dave Syer
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2023-
|
15
|
+
date: 2023-11-21 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: cf-uaa-lib
|