conjur-api 5.3.8.pre.319 → 5.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (150) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +10 -0
  3. data/.dockerignore +1 -0
  4. data/.github/CODEOWNERS +10 -0
  5. data/.gitignore +32 -0
  6. data/.gitleaks.toml +219 -0
  7. data/.overcommit.yml +16 -0
  8. data/.project +18 -0
  9. data/.rubocop.yml +3 -0
  10. data/.rubocop_settings.yml +86 -0
  11. data/.rubocop_todo.yml +709 -0
  12. data/.yardopts +1 -0
  13. data/CHANGELOG.md +448 -0
  14. data/CONTRIBUTING.md +138 -0
  15. data/Dockerfile +16 -0
  16. data/Gemfile +7 -0
  17. data/Jenkinsfile +136 -0
  18. data/LICENSE +202 -0
  19. data/README.md +162 -0
  20. data/Rakefile +47 -0
  21. data/SECURITY.md +42 -0
  22. data/VERSION +1 -1
  23. data/bin/parse-changelog.sh +12 -0
  24. data/ci/configure_v4.sh +12 -0
  25. data/ci/configure_v5.sh +19 -0
  26. data/ci/oauth/keycloak/create_client +18 -0
  27. data/ci/oauth/keycloak/create_user +21 -0
  28. data/ci/oauth/keycloak/fetch_certificate +18 -0
  29. data/ci/oauth/keycloak/keycloak_functions.sh +71 -0
  30. data/ci/oauth/keycloak/standalone.xml +578 -0
  31. data/ci/oauth/keycloak/wait_for_server +56 -0
  32. data/ci/submit-coverage +36 -0
  33. data/conjur-api.gemspec +41 -0
  34. data/dev/Dockerfile.dev +12 -0
  35. data/dev/docker-compose.yml +56 -0
  36. data/dev/start +22 -0
  37. data/dev/stop +5 -0
  38. data/docker-compose.yml +98 -0
  39. data/example/demo_v4.rb +49 -0
  40. data/example/demo_v5.rb +57 -0
  41. data/features/authenticators.feature +41 -0
  42. data/features/authn.feature +14 -0
  43. data/features/authn_local.feature +32 -0
  44. data/features/exists.feature +37 -0
  45. data/features/group.feature +11 -0
  46. data/features/host.feature +50 -0
  47. data/features/host_factory_create_host.feature +28 -0
  48. data/features/host_factory_token.feature +63 -0
  49. data/features/load_policy.feature +61 -0
  50. data/features/members.feature +51 -0
  51. data/features/new_api.feature +36 -0
  52. data/features/permitted.feature +70 -0
  53. data/features/permitted_roles.feature +30 -0
  54. data/features/public_keys.feature +11 -0
  55. data/features/resource_fields.feature +53 -0
  56. data/features/role_fields.feature +15 -0
  57. data/features/rotate_api_key.feature +13 -0
  58. data/features/step_definitions/api_steps.rb +52 -0
  59. data/features/step_definitions/policy_steps.rb +134 -0
  60. data/features/step_definitions/result_steps.rb +11 -0
  61. data/features/support/env.rb +19 -0
  62. data/features/support/hooks.rb +3 -0
  63. data/features/support/world.rb +12 -0
  64. data/features/update_password.feature +14 -0
  65. data/features/user.feature +58 -0
  66. data/features/variable_fields.feature +20 -0
  67. data/features/variable_value.feature +60 -0
  68. data/features_v4/authn_local.feature +27 -0
  69. data/features_v4/exists.feature +29 -0
  70. data/features_v4/host.feature +18 -0
  71. data/features_v4/host_factory_token.feature +49 -0
  72. data/features_v4/members.feature +39 -0
  73. data/features_v4/permitted.feature +15 -0
  74. data/features_v4/permitted_roles.feature +8 -0
  75. data/features_v4/resource_fields.feature +47 -0
  76. data/features_v4/rotate_api_key.feature +13 -0
  77. data/features_v4/step_definitions/api_steps.rb +17 -0
  78. data/features_v4/step_definitions/result_steps.rb +3 -0
  79. data/features_v4/support/env.rb +23 -0
  80. data/features_v4/support/policy.yml +34 -0
  81. data/features_v4/support/world.rb +12 -0
  82. data/features_v4/variable_fields.feature +11 -0
  83. data/features_v4/variable_value.feature +54 -0
  84. data/lib/conjur/acts_as_resource.rb +123 -0
  85. data/lib/conjur/acts_as_role.rb +142 -0
  86. data/lib/conjur/acts_as_rolsource.rb +32 -0
  87. data/lib/conjur/acts_as_user.rb +68 -0
  88. data/lib/conjur/api/authenticators.rb +43 -0
  89. data/lib/conjur/api/authn.rb +144 -0
  90. data/lib/conjur/api/host_factories.rb +71 -0
  91. data/lib/conjur/api/ldap_sync.rb +38 -0
  92. data/lib/conjur/api/policies.rb +56 -0
  93. data/lib/conjur/api/pubkeys.rb +53 -0
  94. data/lib/conjur/api/resources.rb +109 -0
  95. data/lib/conjur/api/roles.rb +98 -0
  96. data/lib/conjur/api/router/v4.rb +206 -0
  97. data/lib/conjur/api/router/v5.rb +269 -0
  98. data/lib/conjur/api/variables.rb +59 -0
  99. data/lib/conjur/api.rb +105 -0
  100. data/lib/conjur/base.rb +355 -0
  101. data/lib/conjur/base_object.rb +57 -0
  102. data/lib/conjur/build_object.rb +47 -0
  103. data/lib/conjur/cache.rb +26 -0
  104. data/lib/conjur/cert_utils.rb +63 -0
  105. data/lib/conjur/cidr.rb +71 -0
  106. data/lib/conjur/configuration.rb +460 -0
  107. data/lib/conjur/escape.rb +129 -0
  108. data/lib/conjur/exceptions.rb +4 -0
  109. data/lib/conjur/group.rb +41 -0
  110. data/lib/conjur/has_attributes.rb +98 -0
  111. data/lib/conjur/host.rb +27 -0
  112. data/lib/conjur/host_factory.rb +75 -0
  113. data/lib/conjur/host_factory_token.rb +78 -0
  114. data/lib/conjur/id.rb +71 -0
  115. data/lib/conjur/layer.rb +9 -0
  116. data/lib/conjur/log.rb +72 -0
  117. data/lib/conjur/log_source.rb +60 -0
  118. data/lib/conjur/policy.rb +34 -0
  119. data/lib/conjur/policy_load_result.rb +61 -0
  120. data/lib/conjur/query_string.rb +12 -0
  121. data/lib/conjur/resource.rb +29 -0
  122. data/lib/conjur/role.rb +29 -0
  123. data/lib/conjur/role_grant.rb +85 -0
  124. data/lib/conjur/routing.rb +29 -0
  125. data/lib/conjur/user.rb +40 -0
  126. data/lib/conjur/variable.rb +208 -0
  127. data/lib/conjur/webservice.rb +30 -0
  128. data/lib/conjur-api/version.rb +24 -0
  129. data/lib/conjur-api.rb +2 -0
  130. data/publish.sh +5 -0
  131. data/spec/api/host_factories_spec.rb +34 -0
  132. data/spec/api_spec.rb +254 -0
  133. data/spec/base_object_spec.rb +13 -0
  134. data/spec/cert_utils_spec.rb +173 -0
  135. data/spec/cidr_spec.rb +34 -0
  136. data/spec/configuration_spec.rb +330 -0
  137. data/spec/has_attributes_spec.rb +63 -0
  138. data/spec/helpers/errors_matcher.rb +34 -0
  139. data/spec/helpers/request_helpers.rb +10 -0
  140. data/spec/id_spec.rb +29 -0
  141. data/spec/ldap_sync_spec.rb +21 -0
  142. data/spec/log_source_spec.rb +13 -0
  143. data/spec/log_spec.rb +42 -0
  144. data/spec/roles_spec.rb +24 -0
  145. data/spec/spec_helper.rb +113 -0
  146. data/spec/ssl_spec.rb +109 -0
  147. data/spec/uri_escape_spec.rb +21 -0
  148. data/test.sh +76 -0
  149. data/tmp/.keep +0 -0
  150. metadata +196 -5
data/spec/ssl_spec.rb ADDED
@@ -0,0 +1,109 @@
1
+ require 'active_support'
2
+ require 'spec_helper'
3
+
4
+ require 'helpers/errors_matcher'
5
+
6
+ require 'webrick'
7
+ require 'webrick/https'
8
+
9
+ describe 'SSL connection' do
10
+ context 'with an untrusted certificate' do
11
+ it 'fails' do
12
+ expect { Conjur::API.login 'foo', 'bar', account: "the-account" }.to \
13
+ raise_one_of(RestClient::SSLCertificateNotVerified, OpenSSL::SSL::SSLError)
14
+ end
15
+ end
16
+
17
+ context 'with certificate added to the default OpenSSL cert store' do
18
+ before do
19
+ cert_store.add_cert(cert)
20
+ end
21
+
22
+ it 'works' do
23
+ expect { Conjur::API.login 'foo', 'bar', account: "the-account" }.to raise_error RestClient::ResourceNotFound
24
+ end
25
+ end
26
+
27
+ let(:server) do
28
+ server = WEBrick::HTTPServer.new \
29
+ Port: 0, SSLEnable: true,
30
+ AccessLog: [], Logger: Logger.new('/dev/null'), # shut up, WEBrick
31
+ SSLCertificate: cert, SSLPrivateKey: key
32
+ end
33
+ let(:port) { server.config[:Port] }
34
+ let(:cert_store) { OpenSSL::X509::Store.new }
35
+
36
+ before do
37
+ # Reset configuration to allow each test to use its own stub
38
+ # of OpenSSL::SSL::SSLContext::DEFAULT_CERT_STORE.
39
+ Conjur.configuration = nil
40
+ stub_const 'OpenSSL::SSL::SSLContext::DEFAULT_CERT_STORE', cert_store
41
+
42
+ allow(Conjur.configuration).to receive(:authn_url).and_return "https://localhost:#{port}"
43
+ end
44
+
45
+ around do |example|
46
+ server_thread = Thread.new do
47
+ server.start
48
+ end
49
+ example.run
50
+ server.shutdown
51
+ server_thread.join
52
+ end
53
+
54
+ let(:cert) do
55
+ OpenSSL::X509::Certificate.new """
56
+ -----BEGIN CERTIFICATE-----
57
+ MIIDCzCCAfOgAwIBAgIUaApjB95cJZlMTwDg4EBk4Mf1y4swDQYJKoZIhvcNAQEL
58
+ BQAwFDESMBAGA1UEAwwJbG9jYWxob3N0MCAXDTIxMDQyODIxNTA1OFoYDzQ3NTkw
59
+ MzI1MjE1MDU4WjAUMRIwEAYDVQQDDAlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEB
60
+ AQUAA4IBDwAwggEKAoIBAQC+MIx1LCzBeAl7kHfI21wYmA6W8luyq14+DecaQPMd
61
+ bW7fMlHSMJC/nlFDQyqmfYfKlVCiJRV/QTdUtA9hCytPlEKjlVmm4WIYLKfjj8Sp
62
+ A+X9VURk75Fz+Z7UsF8u2J3pF9wFfhBzznwePlFdcWYyQMIRtghoHk/WSsbJVXVQ
63
+ so7+0BLFyMYB3otfCyK+H/iyoXWLZll2irYZJedVm/lyTlnc9dT1XDAWWI8kSeUV
64
+ lCkEulqOf8qZyU7wNUafRkzBuYkR7ddp1Qdkq+QYw7blmfZXyJbAYSt4gEMyDMk8
65
+ ArScP8j+Efz5D54wS7fZFwmQp41+iP5WTxGsSU3dh44fAgMBAAGjUzBRMB0GA1Ud
66
+ DgQWBBS4ZJDxXOs8rK3+SyfLopDFqK0IWDAfBgNVHSMEGDAWgBS4ZJDxXOs8rK3+
67
+ SyfLopDFqK0IWDAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAE
68
+ WuzjqQ/gyho/pluX31hq7EMAFgqqz7ECN6DqmvpqabMD6s1kQ662KTo7gCBEcNtA
69
+ nC7QycFp4v/Cr8+aUEa1W3+q2MqbmshORonUrLE/vxejK+NUvhSCWnmrM8v60zhR
70
+ pn9lSSgQCBKWDgaU0VQVn0I9MuexeAj64Qv2uUHnZK3QUx+Gk3uurTmhKEN5FI+D
71
+ sC7xO0qquTZ1Vv1EkLEso4dnFVW84EjdfmfeiW6JmHO7z1p1ebGsRwoQead/qTKw
72
+ ze+Y1A1w3GzuhDo55aHlWE/Wvnou0aM3O9gUd++a2j+XJ2P7qaTB/L7SJk4qZ9RA
73
+ t2PbKVP+tyZjXKtXmgzp
74
+ -----END CERTIFICATE-----
75
+ """.lines.map(&:strip).join("\n")
76
+ end
77
+
78
+ let(:key) do
79
+ OpenSSL::PKey.read """
80
+ -----BEGIN RSA PRIVATE KEY-----
81
+ MIIEowIBAAKCAQEAvjCMdSwswXgJe5B3yNtcGJgOlvJbsqtePg3nGkDzHW1u3zJR
82
+ 0jCQv55RQ0Mqpn2HypVQoiUVf0E3VLQPYQsrT5RCo5VZpuFiGCyn44/EqQPl/VVE
83
+ ZO+Rc/me1LBfLtid6RfcBX4Qc858Hj5RXXFmMkDCEbYIaB5P1krGyVV1ULKO/tAS
84
+ xcjGAd6LXwsivh/4sqF1i2ZZdoq2GSXnVZv5ck5Z3PXU9VwwFliPJEnlFZQpBLpa
85
+ jn/KmclO8DVGn0ZMwbmJEe3XadUHZKvkGMO25Zn2V8iWwGEreIBDMgzJPAK0nD/I
86
+ /hH8+Q+eMEu32RcJkKeNfoj+Vk8RrElN3YeOHwIDAQABAoIBAQCnW0ctkDqt3/fQ
87
+ MHcHWue2iI9GCmvgU+WxC0DSHFcSDQrkAn53S98DjseJPaBZMtr7y9pRY/p/qR6M
88
+ PYnO5iotc5QUKEbkjy1nglwV5Zuy8kg+XPq7Kwg+GmjGVZDcQybpRuKIPr8xeIBF
89
+ iKbGaBP6ontjZGAPZqTwN4qm/bkm0QRQkMEVQLpBaOlXjl0BCknhCMgyNA1F0jGc
90
+ HLqJpFO46qvWDkDaKriMY/ezrkGYxlvV8xGJ2lzoaNWBsQeMXtcDJXuFMJO3lZl4
91
+ VUjeNbyPprUzL6/kLZGMVFdRWhzKAluJEy3B6zybY4xxmgmifqn8/OxIaT172IXN
92
+ KACuEorpAoGBAOYZEfuON+73dcstpjq3062+XUOxAAc77aFcGFQ2pqDTUtvoR05R
93
+ o0uXrSuQqt0/FJVdZqdDx1and6idI7j/LfkOwvmPPg2dJIwKV73T2HdR7BpJaYlI
94
+ KS6Bgl0AiW2ibjZJbBFJMiINb2tRGeYcOPfWlis309D2DXxl1f1TJTKTAoGBANOZ
95
+ aDH1VJXh7rdAHrwNonTjoCeYKG7oAh0WTfqmCqcBjAkXsVc7dBd/98XKGS5LPRtl
96
+ dIaJdYngeYyH5Ey5O2l/63tk0d4sqE8l+GVy+OHFn2AZMuaVXS0JXIQspn4s/U7F
97
+ CuawmFszE8fv41WgVNhF00ijheoRz/X19yu0ULHFAoGAYmJZ1AutUtowXZ25M+Yh
98
+ 9motCqKF9pHjO1lbdbagbKevCCQ7SPuTLOE/xB7pUAyGyo7TM7XBaAXXHhuCiLlj
99
+ eNic+YQL7lpApDhP5/TK28oFf//fxjk6ko4Bpa5zFJOdOE0QjhuT+gdwmpxkzIVI
100
+ vn/cWcJXKUPr5ELOyrBgeU0CgYBWqIUbsLWrjJQPSJtNuOfHp1F35cDpausyrmfR
101
+ Nx81tlR7hNCEQT0SQr5eqp4Vb4rfJXXLg5A3n08oVp8RLOtAEbuHFYs9ylxDzfEk
102
+ 2ylCjYTv/mHyPUmjoCnbl8237wTutZP5VmmPMCPxxjT8ZGVbDX2ySgYWDqV0vf80
103
+ TuydYQKBgG24Wpes1CJmKiuWGnPi5I/+iIKZRfpEGidpjnsktkr3O+VZSZNQtDfC
104
+ uWp/NgMxzxXxYdmmaQTwektB5axrsPUnxxiHmb8KkVU1IcMpYvUulFYiKVvFx+JJ
105
+ bx/fkItCZ4AP3CG2Onz8xZdosg+c+MEdIlCrg94dA1EmHewCt2Hv
106
+ -----END RSA PRIVATE KEY-----
107
+ """.lines.map(&:strip).join("\n")
108
+ end
109
+ end
@@ -0,0 +1,21 @@
1
+ require 'spec_helper'
2
+ require 'conjur/id'
3
+ require 'conjur/api/router/v5'
4
+
5
+ describe 'url escaping' do
6
+ it 'Id to path is escaped' do
7
+ id = Conjur::Id.new('cucumber:variable:one two/three')
8
+ expect(id.to_url_path).to eq('cucumber/variable/one%20two%2Fthree')
9
+ end
10
+
11
+ it 'Resources path is escaped' do
12
+ request = Conjur::API::Router::V5.resources(nil, 'cucumber/two', 'extended variable', {})
13
+ expect(request.url).to eq('http://localhost:5000/resources/cucumber%2Ftwo/extended%20variable/')
14
+ end
15
+
16
+ it 'Resource path is escaped' do
17
+ resource = Conjur::Id.new('cucumber:variable:one two/three')
18
+ request = Conjur::API::Router::V5.resources_resource(nil, resource)
19
+ expect(request.url).to eq('http://localhost:5000/resources/cucumber/variable/one%20two%2Fthree')
20
+ end
21
+ end
data/test.sh ADDED
@@ -0,0 +1,76 @@
1
+ #!/bin/bash -e
2
+
3
+ : "${RUBY_VERSION=3.0}"
4
+ # My local RUBY_VERSION is set to ruby-#.#.# so this allows running locally.
5
+ RUBY_VERSION="$(cut -d '-' -f 2 <<< "$RUBY_VERSION")"
6
+
7
+ source ./ci/oauth/keycloak/keycloak_functions.sh
8
+
9
+ function finish {
10
+ echo 'Removing test environment'
11
+ echo '---'
12
+ docker-compose down --rmi 'local' --volumes
13
+ }
14
+
15
+ trap finish EXIT
16
+
17
+ # Set up VERSION file for local development
18
+ if [ ! -f "../VERSION" ]; then
19
+ echo -n "0.0.dev" > ../VERSION
20
+ fi
21
+
22
+ function main() {
23
+ if ! docker info >/dev/null 2>&1; then
24
+ echo "Docker does not seem to be running, run it first and retry"
25
+ exit 1
26
+ fi
27
+ # Generate reports folders locally
28
+ mkdir -p spec/reports features/reports features_v4/reports
29
+
30
+ startConjur
31
+ runTests_5
32
+ runTests_4
33
+ }
34
+
35
+ function startConjur() {
36
+ echo 'Starting Conjur environment'
37
+ echo '-----'
38
+
39
+ # We want to pull to make sure we're testing against the newest release;
40
+ # failing to ensure that has caused many mysterious failures in CI.
41
+ # However, unconditionally pulling prevents working offline even
42
+ # with a warm cache. So try to pull, but ignore failures.
43
+ docker-compose pull --ignore-pull-failures
44
+ docker-compose build --build-arg RUBY_VERSION="$RUBY_VERSION"
45
+ docker-compose up -d pg conjur_4 conjur_5
46
+ }
47
+
48
+ function runTests_5() {
49
+ echo 'Waiting for Conjur v5 to come up, and configuring it...'
50
+ ./ci/configure_v5.sh
51
+
52
+ local api_key=$(docker-compose exec -T conjur_5 rake 'role:retrieve-key[cucumber:user:admin]')
53
+
54
+ echo 'Running tests'
55
+ echo '-----'
56
+ docker-compose run --rm \
57
+ -e CONJUR_AUTHN_API_KEY="$api_key" \
58
+ -e SSL_CERT_FILE=/etc/ssl/certs/keycloak.pem \
59
+ tester_5 \
60
+ "/scripts/fetch_certificate && rake jenkins_init jenkins_spec jenkins_cucumber_v5"
61
+ }
62
+
63
+ function runTests_4() {
64
+ echo 'Waiting for Conjur v4 to come up, and configuring it...'
65
+ ./ci/configure_v4.sh
66
+
67
+ local api_key=$(docker-compose exec -T conjur_4 su conjur -c "conjur-plugin-service authn env RAILS_ENV=appliance rails r \"puts User['admin'].api_key\" 2>/dev/null")
68
+
69
+ echo 'Running tests'
70
+ echo '-----'
71
+ docker-compose run --rm \
72
+ -e CONJUR_AUTHN_API_KEY="$api_key" \
73
+ tester_4 rake jenkins_cucumber_v4
74
+ }
75
+
76
+ main
data/tmp/.keep ADDED
File without changes
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: conjur-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.3.8.pre.319
4
+ version: 5.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - CyberArk Maintainers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-07-19 00:00:00.000000000 Z
11
+ date: 2022-08-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -247,7 +247,154 @@ executables: []
247
247
  extensions: []
248
248
  extra_rdoc_files: []
249
249
  files:
250
+ - ".codeclimate.yml"
251
+ - ".dockerignore"
252
+ - ".github/CODEOWNERS"
253
+ - ".gitignore"
254
+ - ".gitleaks.toml"
255
+ - ".overcommit.yml"
256
+ - ".project"
257
+ - ".rubocop.yml"
258
+ - ".rubocop_settings.yml"
259
+ - ".rubocop_todo.yml"
260
+ - ".yardopts"
261
+ - CHANGELOG.md
262
+ - CONTRIBUTING.md
263
+ - Dockerfile
264
+ - Gemfile
265
+ - Jenkinsfile
266
+ - LICENSE
267
+ - README.md
268
+ - Rakefile
269
+ - SECURITY.md
250
270
  - VERSION
271
+ - bin/parse-changelog.sh
272
+ - ci/configure_v4.sh
273
+ - ci/configure_v5.sh
274
+ - ci/oauth/keycloak/create_client
275
+ - ci/oauth/keycloak/create_user
276
+ - ci/oauth/keycloak/fetch_certificate
277
+ - ci/oauth/keycloak/keycloak_functions.sh
278
+ - ci/oauth/keycloak/standalone.xml
279
+ - ci/oauth/keycloak/wait_for_server
280
+ - ci/submit-coverage
281
+ - conjur-api.gemspec
282
+ - dev/Dockerfile.dev
283
+ - dev/docker-compose.yml
284
+ - dev/start
285
+ - dev/stop
286
+ - docker-compose.yml
287
+ - example/demo_v4.rb
288
+ - example/demo_v5.rb
289
+ - features/authenticators.feature
290
+ - features/authn.feature
291
+ - features/authn_local.feature
292
+ - features/exists.feature
293
+ - features/group.feature
294
+ - features/host.feature
295
+ - features/host_factory_create_host.feature
296
+ - features/host_factory_token.feature
297
+ - features/load_policy.feature
298
+ - features/members.feature
299
+ - features/new_api.feature
300
+ - features/permitted.feature
301
+ - features/permitted_roles.feature
302
+ - features/public_keys.feature
303
+ - features/resource_fields.feature
304
+ - features/role_fields.feature
305
+ - features/rotate_api_key.feature
306
+ - features/step_definitions/api_steps.rb
307
+ - features/step_definitions/policy_steps.rb
308
+ - features/step_definitions/result_steps.rb
309
+ - features/support/env.rb
310
+ - features/support/hooks.rb
311
+ - features/support/world.rb
312
+ - features/update_password.feature
313
+ - features/user.feature
314
+ - features/variable_fields.feature
315
+ - features/variable_value.feature
316
+ - features_v4/authn_local.feature
317
+ - features_v4/exists.feature
318
+ - features_v4/host.feature
319
+ - features_v4/host_factory_token.feature
320
+ - features_v4/members.feature
321
+ - features_v4/permitted.feature
322
+ - features_v4/permitted_roles.feature
323
+ - features_v4/resource_fields.feature
324
+ - features_v4/rotate_api_key.feature
325
+ - features_v4/step_definitions/api_steps.rb
326
+ - features_v4/step_definitions/result_steps.rb
327
+ - features_v4/support/env.rb
328
+ - features_v4/support/policy.yml
329
+ - features_v4/support/world.rb
330
+ - features_v4/variable_fields.feature
331
+ - features_v4/variable_value.feature
332
+ - lib/conjur-api.rb
333
+ - lib/conjur-api/version.rb
334
+ - lib/conjur/acts_as_resource.rb
335
+ - lib/conjur/acts_as_role.rb
336
+ - lib/conjur/acts_as_rolsource.rb
337
+ - lib/conjur/acts_as_user.rb
338
+ - lib/conjur/api.rb
339
+ - lib/conjur/api/authenticators.rb
340
+ - lib/conjur/api/authn.rb
341
+ - lib/conjur/api/host_factories.rb
342
+ - lib/conjur/api/ldap_sync.rb
343
+ - lib/conjur/api/policies.rb
344
+ - lib/conjur/api/pubkeys.rb
345
+ - lib/conjur/api/resources.rb
346
+ - lib/conjur/api/roles.rb
347
+ - lib/conjur/api/router/v4.rb
348
+ - lib/conjur/api/router/v5.rb
349
+ - lib/conjur/api/variables.rb
350
+ - lib/conjur/base.rb
351
+ - lib/conjur/base_object.rb
352
+ - lib/conjur/build_object.rb
353
+ - lib/conjur/cache.rb
354
+ - lib/conjur/cert_utils.rb
355
+ - lib/conjur/cidr.rb
356
+ - lib/conjur/configuration.rb
357
+ - lib/conjur/escape.rb
358
+ - lib/conjur/exceptions.rb
359
+ - lib/conjur/group.rb
360
+ - lib/conjur/has_attributes.rb
361
+ - lib/conjur/host.rb
362
+ - lib/conjur/host_factory.rb
363
+ - lib/conjur/host_factory_token.rb
364
+ - lib/conjur/id.rb
365
+ - lib/conjur/layer.rb
366
+ - lib/conjur/log.rb
367
+ - lib/conjur/log_source.rb
368
+ - lib/conjur/policy.rb
369
+ - lib/conjur/policy_load_result.rb
370
+ - lib/conjur/query_string.rb
371
+ - lib/conjur/resource.rb
372
+ - lib/conjur/role.rb
373
+ - lib/conjur/role_grant.rb
374
+ - lib/conjur/routing.rb
375
+ - lib/conjur/user.rb
376
+ - lib/conjur/variable.rb
377
+ - lib/conjur/webservice.rb
378
+ - publish.sh
379
+ - spec/api/host_factories_spec.rb
380
+ - spec/api_spec.rb
381
+ - spec/base_object_spec.rb
382
+ - spec/cert_utils_spec.rb
383
+ - spec/cidr_spec.rb
384
+ - spec/configuration_spec.rb
385
+ - spec/has_attributes_spec.rb
386
+ - spec/helpers/errors_matcher.rb
387
+ - spec/helpers/request_helpers.rb
388
+ - spec/id_spec.rb
389
+ - spec/ldap_sync_spec.rb
390
+ - spec/log_source_spec.rb
391
+ - spec/log_spec.rb
392
+ - spec/roles_spec.rb
393
+ - spec/spec_helper.rb
394
+ - spec/ssl_spec.rb
395
+ - spec/uri_escape_spec.rb
396
+ - test.sh
397
+ - tmp/.keep
251
398
  homepage: https://github.com/cyberark/conjur-api-ruby/
252
399
  licenses:
253
400
  - Apache-2.0
@@ -263,12 +410,56 @@ required_ruby_version: !ruby/object:Gem::Requirement
263
410
  version: '1.9'
264
411
  required_rubygems_version: !ruby/object:Gem::Requirement
265
412
  requirements:
266
- - - ">"
413
+ - - ">="
267
414
  - !ruby/object:Gem::Version
268
- version: 1.3.1
415
+ version: '0'
269
416
  requirements: []
270
417
  rubygems_version: 3.2.33
271
418
  signing_key:
272
419
  specification_version: 4
273
420
  summary: Conjur API
274
- test_files: []
421
+ test_files:
422
+ - features/authenticators.feature
423
+ - features/authn.feature
424
+ - features/authn_local.feature
425
+ - features/exists.feature
426
+ - features/group.feature
427
+ - features/host.feature
428
+ - features/host_factory_create_host.feature
429
+ - features/host_factory_token.feature
430
+ - features/load_policy.feature
431
+ - features/members.feature
432
+ - features/new_api.feature
433
+ - features/permitted.feature
434
+ - features/permitted_roles.feature
435
+ - features/public_keys.feature
436
+ - features/resource_fields.feature
437
+ - features/role_fields.feature
438
+ - features/rotate_api_key.feature
439
+ - features/step_definitions/api_steps.rb
440
+ - features/step_definitions/policy_steps.rb
441
+ - features/step_definitions/result_steps.rb
442
+ - features/support/env.rb
443
+ - features/support/hooks.rb
444
+ - features/support/world.rb
445
+ - features/update_password.feature
446
+ - features/user.feature
447
+ - features/variable_fields.feature
448
+ - features/variable_value.feature
449
+ - spec/api/host_factories_spec.rb
450
+ - spec/api_spec.rb
451
+ - spec/base_object_spec.rb
452
+ - spec/cert_utils_spec.rb
453
+ - spec/cidr_spec.rb
454
+ - spec/configuration_spec.rb
455
+ - spec/has_attributes_spec.rb
456
+ - spec/helpers/errors_matcher.rb
457
+ - spec/helpers/request_helpers.rb
458
+ - spec/id_spec.rb
459
+ - spec/ldap_sync_spec.rb
460
+ - spec/log_source_spec.rb
461
+ - spec/log_spec.rb
462
+ - spec/roles_spec.rb
463
+ - spec/spec_helper.rb
464
+ - spec/ssl_spec.rb
465
+ - spec/uri_escape_spec.rb