cf-uaa-lib 4.0.3 → 4.0.4
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/uaa/scim.rb +22 -0
- data/lib/uaa/version.rb +1 -1
- data/spec/scim_spec.rb +24 -0
- 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: ec18b7af2736542f939dab136eb1f7d2b728fa394a6c845423eb1e5c1a9c5b59
|
4
|
+
data.tar.gz: 1aaa66c33d5070d78b22e6e8f6ee4d31940182bd23918e8b8e4ff5203c271e68
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b4b3af6298e27f3941596509fc3cfcd90434d173d83ecc3d70094ca366ce550fdf9e78c54aaa29753d831cfb1cfae06cf077fb57c5bce8acd8109f4c2e35ae31
|
7
|
+
data.tar.gz: daaf82f350b34392b3cf2fef2748a9403ede4e311e8856e0ce6a4df48d1d70a294f506f15292e5f17762a1c327e46800a29acf48d5d13266f705d28f97be8535
|
data/lib/uaa/scim.rb
CHANGED
@@ -369,6 +369,28 @@ class Scim
|
|
369
369
|
"#{type_info(:client, :path)}/#{Addressable::URI.encode(client_id)}/secret", req, headers))
|
370
370
|
end
|
371
371
|
|
372
|
+
# Change client jwt trust configuration.
|
373
|
+
# * For a client to change its jwt client trust, the token in @auth_header must contain
|
374
|
+
# "client.trust" scope.
|
375
|
+
# * For an admin to set a client secret, the token in @auth_header must contain
|
376
|
+
# "uaa.admin" scope.
|
377
|
+
# @see https://docs.cloudfoundry.org/api/uaa/index.html#change-client-jwt
|
378
|
+
# @param [String] client_id the {Scim} +id+ attribute of the client
|
379
|
+
# @param [String] jwks_uri the URI to token endpoint
|
380
|
+
# @param [String] jwks the JSON Web Key Set
|
381
|
+
# @param [String] kid If changeMode is DELETE provide the id of key
|
382
|
+
# @param [String] changeMode Change mode, possible is ADD, UPDATE, DELETE
|
383
|
+
# @return [Hash] success message from server
|
384
|
+
def change_clientjwt(client_id, jwks_uri = nil, jwks = nil, kid = nil, changeMode = nil)
|
385
|
+
req = {"client_id" => client_id }
|
386
|
+
req["jwks_uri"] = jwks_uri if jwks_uri
|
387
|
+
req["jwks"] = jwks if jwks
|
388
|
+
req["kid"] = kid if kid
|
389
|
+
req["changeMode"] = changeMode if changeMode
|
390
|
+
json_parse_reply(@key_style, *json_put(@target,
|
391
|
+
"#{type_info(:client, :path)}/#{Addressable::URI.encode(client_id)}/clientjwt", req, headers))
|
392
|
+
end
|
393
|
+
|
372
394
|
def unlock_user(user_id)
|
373
395
|
req = {"locked" => false}
|
374
396
|
json_parse_reply(@key_style, *json_patch(@target,
|
data/lib/uaa/version.rb
CHANGED
data/spec/scim_spec.rb
CHANGED
@@ -160,6 +160,30 @@ describe Scim do
|
|
160
160
|
result['id'].should == 'id12345'
|
161
161
|
end
|
162
162
|
|
163
|
+
it "add a client's jwt trust using jwks_uri" do
|
164
|
+
subject.set_request_handler do |url, method, body, headers|
|
165
|
+
url.should == "#{@target}/oauth/clients/id12345/clientjwt"
|
166
|
+
method.should == :put
|
167
|
+
check_headers(headers, :json, :json, nil)
|
168
|
+
body.should include('"jwks_uri":"http://localhost:8080/uaa/token_keys"')
|
169
|
+
[200, '{"id":"id12345"}', {'content-type' => 'application/json'}]
|
170
|
+
end
|
171
|
+
result = subject.change_clientjwt('id12345', 'http://localhost:8080/uaa/token_keys')
|
172
|
+
result['id'].should == 'id12345'
|
173
|
+
end
|
174
|
+
|
175
|
+
it "add a client's jwt trust using jwks" do
|
176
|
+
subject.set_request_handler do |url, method, body, headers|
|
177
|
+
url.should == "#{@target}/oauth/clients/id12345/clientjwt"
|
178
|
+
method.should == :put
|
179
|
+
check_headers(headers, :json, :json, nil)
|
180
|
+
body.should include('"jwks":"keys"')
|
181
|
+
[200, '{"id":"id12345"}', {'content-type' => 'application/json'}]
|
182
|
+
end
|
183
|
+
result = subject.change_clientjwt('id12345', nil, 'keys')
|
184
|
+
result['id'].should == 'id12345'
|
185
|
+
end
|
186
|
+
|
163
187
|
it 'unlocks a user' do
|
164
188
|
subject.set_request_handler do |url, method, body, headers|
|
165
189
|
url.should == "#{@target}/Users/id12345/status"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cf-uaa-lib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.
|
4
|
+
version: 4.0.4
|
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-10-17 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: multi_json
|