letsencrypt_http_challenge 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +5 -0
- data/letsencrypt_http_challenge.gemspec +3 -2
- data/lib/letsencrypt_http_challenge/version.rb +1 -1
- data/test/controllers/application_controller_test.rb +3 -3
- data/test/dummy/config/environments/test.rb +2 -2
- data/test/dummy/config/initializers/assets.rb +1 -1
- data/test/dummy/log/test.log +316 -0
- metadata +23 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4860de285f787d7e65f000e84e93104b5b6aa75f
|
4
|
+
data.tar.gz: 7b52fb18f691b43edc808720f7a34a7aa0727731
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f237b0ae352a0047e97446491bf0b88d194bcfcb6f26196a3c8c09ab6b5658ce3b1fb21026a2a9e7833ac22692a7d5d2aba17eb481b58a64294d2ce054aa7bd1
|
7
|
+
data.tar.gz: 9080344002ffb221c6a8e75eb4d70b972c2954026139293b70c628398e44f5609a301a6c2581fe9c589bb65fed3f395b31664bfef67f7d92b2879aacac5b53d7
|
data/README.md
CHANGED
@@ -40,6 +40,11 @@ This will interact with the staging server. To obtain certificates from the prod
|
|
40
40
|
|
41
41
|
When prompted by the script, update the LE_HTTP_CHALLENGE_RESPONSE variable on the web server and restart it. This could be further automated depending on the features of the web server hosting environment. The initial release require manual updates for each domain that needs to be verified.
|
42
42
|
|
43
|
+
Run the test suite with:
|
44
|
+
```bash
|
45
|
+
bundle exec rake
|
46
|
+
```
|
47
|
+
|
43
48
|
A sample interaction could be as follow:
|
44
49
|
```bash
|
45
50
|
LE_HTTP_CHALLENGE_CONTACT_EMAIL=admin@example.com LE_HTTP_CHALLENGE_CERTIFICATE_DOMAINS="www.example.com example.com" bundle exec rake generate_letsencrypt_cert
|
@@ -17,7 +17,8 @@ Gem::Specification.new do |s|
|
|
17
17
|
s.files = Dir["{app,bin,config,lib}/**/*", "Gemfile", "LICENSE", "README.md", "Rakefile", "letsencrypt_http_challenge.gemspec"]
|
18
18
|
s.test_files = Dir["test/**/*"]
|
19
19
|
|
20
|
-
s.add_dependency "rails", "~> 4.1"
|
21
|
-
|
22
20
|
s.add_dependency "acme-client", "~> 0.3.0"
|
21
|
+
|
22
|
+
s.add_development_dependency "byebug"
|
23
|
+
s.add_development_dependency "rails", "~> 5.0"
|
23
24
|
end
|
@@ -7,19 +7,19 @@ module LetsencryptHttpChallenge
|
|
7
7
|
end
|
8
8
|
|
9
9
|
test "matching challenge token returns the challenge response" do
|
10
|
-
get :index, challenge: '58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU'
|
10
|
+
get :index, params: { challenge: '58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU' }
|
11
11
|
assert_response :success
|
12
12
|
assert_match('58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU.VDnmZ7G7W4pPpHL_rTLA9SUPSN0qTwe876q2C2gpLLs', response.body)
|
13
13
|
end
|
14
14
|
|
15
15
|
test "token must match" do
|
16
|
-
get :index, challenge: '58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token'
|
16
|
+
get :index, params: { challenge: '58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token' }
|
17
17
|
assert_response :bad_request
|
18
18
|
assert_match('token must match between', response.body)
|
19
19
|
end
|
20
20
|
|
21
21
|
test "token must be longer than 128 bits" do
|
22
|
-
get :index, challenge: '58u1GLEG'
|
22
|
+
get :index, params: { challenge: '58u1GLEG' }
|
23
23
|
assert_response :bad_request
|
24
24
|
assert_match('token must have at least 128 bits', response.body)
|
25
25
|
end
|
@@ -13,8 +13,8 @@ Rails.application.configure do
|
|
13
13
|
config.eager_load = false
|
14
14
|
|
15
15
|
# Configure static file server for tests with Cache-Control for performance.
|
16
|
-
config.
|
17
|
-
config.
|
16
|
+
config.public_file_server.enabled = true
|
17
|
+
config.public_file_server.headers = { 'Cache-Control' => 'public, max-age=3600' }
|
18
18
|
|
19
19
|
# Show full error reports and disable caching.
|
20
20
|
config.consider_all_requests_local = true
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# Be sure to restart your server when you modify this file.
|
2
2
|
|
3
3
|
# Version of your assets, change this if you want to expire all your assets.
|
4
|
-
Rails.application.config.assets.version = '1.0'
|
4
|
+
# Rails.application.config.assets.version = '1.0'
|
5
5
|
|
6
6
|
# Add additional assets to the asset load path
|
7
7
|
# Rails.application.config.assets.paths << Emoji.images_path
|
data/test/dummy/log/test.log
CHANGED
@@ -267,3 +267,319 @@ Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
|
267
267
|
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
268
268
|
Rendered text template (0.0ms)
|
269
269
|
Completed 200 OK in 0ms (Views: 0.2ms)
|
270
|
+
--------------------------------------------------------------------------
|
271
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
272
|
+
--------------------------------------------------------------------------
|
273
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
274
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
275
|
+
Challenge failed - The token must match between the challenge and the response
|
276
|
+
Rendered text template (0.0ms)
|
277
|
+
Completed 400 Bad Request in 30ms (Views: 29.4ms)
|
278
|
+
--------------------------------------------------------------------------------------------
|
279
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
280
|
+
--------------------------------------------------------------------------------------------
|
281
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
282
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
283
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
284
|
+
Rendered text template (0.0ms)
|
285
|
+
Completed 400 Bad Request in 0ms (Views: 0.3ms)
|
286
|
+
-----------------------------------------------------------------------------------------------------------------
|
287
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
288
|
+
-----------------------------------------------------------------------------------------------------------------
|
289
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
290
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
291
|
+
Rendered text template (0.0ms)
|
292
|
+
Completed 200 OK in 0ms (Views: 0.2ms)
|
293
|
+
----------------------------------------
|
294
|
+
LetsencryptHttpChallengeTest: test_truth
|
295
|
+
----------------------------------------
|
296
|
+
----------------------------------------
|
297
|
+
LetsencryptHttpChallengeTest: test_truth
|
298
|
+
----------------------------------------
|
299
|
+
-----------------------------------------------------------------------------------------------------------------
|
300
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
301
|
+
-----------------------------------------------------------------------------------------------------------------
|
302
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
303
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
304
|
+
Rendering text template
|
305
|
+
Rendered text template (0.0ms)
|
306
|
+
Completed 200 OK in 31ms (Views: 30.8ms)
|
307
|
+
--------------------------------------------------------------------------------------------
|
308
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
309
|
+
--------------------------------------------------------------------------------------------
|
310
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
311
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
312
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
313
|
+
Rendering text template
|
314
|
+
Rendered text template (0.0ms)
|
315
|
+
Completed 400 Bad Request in 1ms (Views: 0.4ms)
|
316
|
+
--------------------------------------------------------------------------
|
317
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
318
|
+
--------------------------------------------------------------------------
|
319
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
320
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
321
|
+
Challenge failed - The token must match between the challenge and the response
|
322
|
+
Rendering text template
|
323
|
+
Rendered text template (0.0ms)
|
324
|
+
Completed 400 Bad Request in 0ms (Views: 0.3ms)
|
325
|
+
----------------------------------------
|
326
|
+
LetsencryptHttpChallengeTest: test_truth
|
327
|
+
----------------------------------------
|
328
|
+
--------------------------------------------------------------------------
|
329
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
330
|
+
--------------------------------------------------------------------------
|
331
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
332
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
333
|
+
Challenge failed - The token must match between the challenge and the response
|
334
|
+
Rendering text template
|
335
|
+
Rendered text template (0.0ms)
|
336
|
+
Completed 400 Bad Request in 5ms (Views: 5.0ms)
|
337
|
+
--------------------------------------------------------------------------------------------
|
338
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
339
|
+
--------------------------------------------------------------------------------------------
|
340
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
341
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
342
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
343
|
+
Rendering text template
|
344
|
+
Rendered text template (0.0ms)
|
345
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
346
|
+
-----------------------------------------------------------------------------------------------------------------
|
347
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
348
|
+
-----------------------------------------------------------------------------------------------------------------
|
349
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
350
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
351
|
+
Rendering text template
|
352
|
+
Rendered text template (0.0ms)
|
353
|
+
Completed 200 OK in 0ms (Views: 0.2ms)
|
354
|
+
----------------------------------------
|
355
|
+
LetsencryptHttpChallengeTest: test_truth
|
356
|
+
----------------------------------------
|
357
|
+
-----------------------------------------------------------------------------------------------------------------
|
358
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
359
|
+
-----------------------------------------------------------------------------------------------------------------
|
360
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
361
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
362
|
+
Rendering text template
|
363
|
+
Rendered text template (0.0ms)
|
364
|
+
Completed 200 OK in 4ms (Views: 3.5ms)
|
365
|
+
--------------------------------------------------------------------------------------------
|
366
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
367
|
+
--------------------------------------------------------------------------------------------
|
368
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
369
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
370
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
371
|
+
Rendering text template
|
372
|
+
Rendered text template (0.0ms)
|
373
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
374
|
+
--------------------------------------------------------------------------
|
375
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
376
|
+
--------------------------------------------------------------------------
|
377
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
378
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
379
|
+
Challenge failed - The token must match between the challenge and the response
|
380
|
+
Rendering text template
|
381
|
+
Rendered text template (0.0ms)
|
382
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
383
|
+
----------------------------------------
|
384
|
+
LetsencryptHttpChallengeTest: test_truth
|
385
|
+
----------------------------------------
|
386
|
+
-----------------------------------------------------------------------------------------------------------------
|
387
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
388
|
+
-----------------------------------------------------------------------------------------------------------------
|
389
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
390
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
391
|
+
Rendering text template
|
392
|
+
Rendered text template (0.0ms)
|
393
|
+
Completed 200 OK in 14ms (Views: 13.5ms)
|
394
|
+
--------------------------------------------------------------------------------------------
|
395
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
396
|
+
--------------------------------------------------------------------------------------------
|
397
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
398
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
399
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
400
|
+
Rendering text template
|
401
|
+
Rendered text template (0.0ms)
|
402
|
+
Completed 400 Bad Request in 0ms (Views: 0.3ms)
|
403
|
+
--------------------------------------------------------------------------
|
404
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
405
|
+
--------------------------------------------------------------------------
|
406
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
407
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
408
|
+
Challenge failed - The token must match between the challenge and the response
|
409
|
+
Rendering text template
|
410
|
+
Rendered text template (0.0ms)
|
411
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
412
|
+
----------------------------------------
|
413
|
+
LetsencryptHttpChallengeTest: test_truth
|
414
|
+
----------------------------------------
|
415
|
+
-----------------------------------------------------------------------------------------------------------------
|
416
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
417
|
+
-----------------------------------------------------------------------------------------------------------------
|
418
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
419
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
420
|
+
Rendering text template
|
421
|
+
Rendered text template (0.0ms)
|
422
|
+
Completed 200 OK in 3ms (Views: 3.3ms)
|
423
|
+
--------------------------------------------------------------------------------------------
|
424
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
425
|
+
--------------------------------------------------------------------------------------------
|
426
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
427
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
428
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
429
|
+
Rendering text template
|
430
|
+
Rendered text template (0.0ms)
|
431
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
432
|
+
--------------------------------------------------------------------------
|
433
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
434
|
+
--------------------------------------------------------------------------
|
435
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
436
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
437
|
+
Challenge failed - The token must match between the challenge and the response
|
438
|
+
Rendering text template
|
439
|
+
Rendered text template (0.0ms)
|
440
|
+
Completed 400 Bad Request in 0ms (Views: 0.1ms)
|
441
|
+
-----------------------------------------------------------------------------------------------------------------
|
442
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
443
|
+
-----------------------------------------------------------------------------------------------------------------
|
444
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
445
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
446
|
+
Rendering text template
|
447
|
+
Rendered text template (0.0ms)
|
448
|
+
Completed 200 OK in 19ms (Views: 18.4ms)
|
449
|
+
--------------------------------------------------------------------------
|
450
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
451
|
+
--------------------------------------------------------------------------
|
452
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
453
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
454
|
+
Challenge failed - The token must match between the challenge and the response
|
455
|
+
Rendering text template
|
456
|
+
Rendered text template (0.0ms)
|
457
|
+
Completed 400 Bad Request in 1ms (Views: 0.4ms)
|
458
|
+
--------------------------------------------------------------------------------------------
|
459
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
460
|
+
--------------------------------------------------------------------------------------------
|
461
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
462
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
463
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
464
|
+
Rendering text template
|
465
|
+
Rendered text template (0.0ms)
|
466
|
+
Completed 400 Bad Request in 1ms (Views: 0.4ms)
|
467
|
+
----------------------------------------
|
468
|
+
LetsencryptHttpChallengeTest: test_truth
|
469
|
+
----------------------------------------
|
470
|
+
-----------------------------------------------------------------------------------------------------------------
|
471
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
472
|
+
-----------------------------------------------------------------------------------------------------------------
|
473
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
474
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
475
|
+
Rendering text template
|
476
|
+
Rendered text template (0.0ms)
|
477
|
+
Completed 200 OK in 11ms (Views: 10.9ms)
|
478
|
+
--------------------------------------------------------------------------------------------
|
479
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
480
|
+
--------------------------------------------------------------------------------------------
|
481
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
482
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
483
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
484
|
+
Rendering text template
|
485
|
+
Rendered text template (0.0ms)
|
486
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
487
|
+
--------------------------------------------------------------------------
|
488
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
489
|
+
--------------------------------------------------------------------------
|
490
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
491
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
492
|
+
Challenge failed - The token must match between the challenge and the response
|
493
|
+
Rendering text template
|
494
|
+
Rendered text template (0.0ms)
|
495
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
496
|
+
----------------------------------------
|
497
|
+
LetsencryptHttpChallengeTest: test_truth
|
498
|
+
----------------------------------------
|
499
|
+
----------------------------------------
|
500
|
+
LetsencryptHttpChallengeTest: test_truth
|
501
|
+
----------------------------------------
|
502
|
+
-----------------------------------------------------------------------------------------------------------------
|
503
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
504
|
+
-----------------------------------------------------------------------------------------------------------------
|
505
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
506
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
507
|
+
Rendering text template
|
508
|
+
Rendered text template (0.0ms)
|
509
|
+
Completed 200 OK in 17ms (Views: 17.3ms)
|
510
|
+
--------------------------------------------------------------------------------------------
|
511
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
512
|
+
--------------------------------------------------------------------------------------------
|
513
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
514
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
515
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
516
|
+
Rendering text template
|
517
|
+
Rendered text template (0.0ms)
|
518
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
519
|
+
--------------------------------------------------------------------------
|
520
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
521
|
+
--------------------------------------------------------------------------
|
522
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
523
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
524
|
+
Challenge failed - The token must match between the challenge and the response
|
525
|
+
Rendering text template
|
526
|
+
Rendered text template (0.0ms)
|
527
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
528
|
+
----------------------------------------
|
529
|
+
LetsencryptHttpChallengeTest: test_truth
|
530
|
+
----------------------------------------
|
531
|
+
--------------------------------------------------------------------------
|
532
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
533
|
+
--------------------------------------------------------------------------
|
534
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
535
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
536
|
+
Challenge failed - The token must match between the challenge and the response
|
537
|
+
Rendering text template
|
538
|
+
Rendered text template (0.0ms)
|
539
|
+
Completed 400 Bad Request in 13ms (Views: 12.4ms)
|
540
|
+
--------------------------------------------------------------------------------------------
|
541
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
542
|
+
--------------------------------------------------------------------------------------------
|
543
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
544
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
545
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
546
|
+
Rendering text template
|
547
|
+
Rendered text template (0.0ms)
|
548
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
549
|
+
-----------------------------------------------------------------------------------------------------------------
|
550
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
551
|
+
-----------------------------------------------------------------------------------------------------------------
|
552
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
553
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
554
|
+
Rendering text template
|
555
|
+
Rendered text template (0.0ms)
|
556
|
+
Completed 200 OK in 0ms (Views: 0.1ms)
|
557
|
+
----------------------------------------
|
558
|
+
LetsencryptHttpChallengeTest: test_truth
|
559
|
+
----------------------------------------
|
560
|
+
--------------------------------------------------------------------------
|
561
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_match
|
562
|
+
--------------------------------------------------------------------------
|
563
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
564
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU_wrong_token"}
|
565
|
+
Challenge failed - The token must match between the challenge and the response
|
566
|
+
Rendering text template
|
567
|
+
Rendered text template (0.0ms)
|
568
|
+
Completed 400 Bad Request in 3ms (Views: 3.0ms)
|
569
|
+
--------------------------------------------------------------------------------------------
|
570
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_token_must_be_longer_than_128_bits
|
571
|
+
--------------------------------------------------------------------------------------------
|
572
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
573
|
+
Parameters: {"challenge"=>"58u1GLEG"}
|
574
|
+
Challenge failed - The token must have at least 128 bits of entropy
|
575
|
+
Rendering text template
|
576
|
+
Rendered text template (0.0ms)
|
577
|
+
Completed 400 Bad Request in 0ms (Views: 0.2ms)
|
578
|
+
-----------------------------------------------------------------------------------------------------------------
|
579
|
+
LetsencryptHttpChallenge::ApplicationControllerTest: test_matching_challenge_token_returns_the_challenge_response
|
580
|
+
-----------------------------------------------------------------------------------------------------------------
|
581
|
+
Processing by LetsencryptHttpChallenge::ApplicationController#index as HTML
|
582
|
+
Parameters: {"challenge"=>"58u1GLEGwgSbK-3LnTYUDwZySN3FmTxE4CuqAf8IpAU"}
|
583
|
+
Rendering text template
|
584
|
+
Rendered text template (0.0ms)
|
585
|
+
Completed 200 OK in 0ms (Views: 0.1ms)
|
metadata
CHANGED
@@ -1,43 +1,57 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: letsencrypt_http_challenge
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luc Lussier
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-08-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: acme-client
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 0.3.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
26
|
+
version: 0.3.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: byebug
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rails
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
30
44
|
requirements:
|
31
45
|
- - "~>"
|
32
46
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
34
|
-
type: :
|
47
|
+
version: '5.0'
|
48
|
+
type: :development
|
35
49
|
prerelease: false
|
36
50
|
version_requirements: !ruby/object:Gem::Requirement
|
37
51
|
requirements:
|
38
52
|
- - "~>"
|
39
53
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
54
|
+
version: '5.0'
|
41
55
|
description: A Rails engine that provides a response mechanism for Let's Encrypt ACME
|
42
56
|
- Simple HTTP - Identifier Validation Challenges on 12 factor apps like those deployed
|
43
57
|
on Heroku as well as the rake task to generate the certificate from your local machine.
|