globessl 1.0.2 → 1.0.4

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
  SHA1:
3
- metadata.gz: ce9481d17881fac4d176b48318b2dbe04f5070cb
4
- data.tar.gz: ee95118ef148ba8f0b264139ab816855b9be13a5
3
+ metadata.gz: 8a654041dc608898cc6b1b0aa43f4e70b75236f8
4
+ data.tar.gz: 3f704bcb9936333a013742888de168111e2be071
5
5
  SHA512:
6
- metadata.gz: 5877cca480cbf2b427cc2faf31ff8673d23df8a8d4085072e158417bd092df2d85a16de194599c617583b543658c636fbfa0ebc05f6e24f204cb2480e2640ef8
7
- data.tar.gz: 5084667777101884b8e9f2441b2d31cad51875a85245894fc56d9b379d14f03f9b32442905ad47d7ced56c3131240008ee9bb50676635d80b12164427d257708
6
+ metadata.gz: 10a7ae06544aa1a18b02475446f2bcb8ecea3942cbeb98ae19193caa76494373b6a849242f3839f76d74f8e39f94452e0920aca7baad70ad61d712107c28f808
7
+ data.tar.gz: 65b553f165e5cf232d6e2c2a3f5ddcec782dbeb36c0eecdadfb640217331a3d54760413d6a97467097a741610607cdc332648cdd3299e75f2f5e45179a9f9dd5
data/README.md CHANGED
@@ -4,11 +4,11 @@
4
4
  The **GlobeSSL Client** is a Ruby API client for GlobeSSL CA resellers. This client provides almost all of the functionality exposed by version 2 of their API. To use this client you will need an API key.
5
5
 
6
6
  ## Background
7
- The **GlobeSSL Client** is an opinionated client library for the GlobeSSL CA API. We built this library to provide fully automated provisioning of SSL Certificates for our client's apps and websites using the Brightcommerce API.
7
+ The **GlobeSSL Client** is an opinionated client library for the GlobeSSL CA API. I built this library to provide fully automated provisioning of SSL Certificates for our client's apps and websites using the Brightcommerce API.
8
8
 
9
9
  The **GlobeSSL Client** provides endpoint access to the API methods that fulfill our requirements. It is very important to us that integration with GlobeSSL CA is seamless and provides as few touch-points as possible with the end-user. For instance, for the domain validation method we use the 'http' method which permits us to prove ownership of a domain by providing a specific text file at a specific URL. This means the end-user doesn't have to click a link in an email and punch in a code to validate ownership of a domain. We also use their autocsr method to generate the Certificate Signing Request and Private Key, rather than shell out and use OpenSSL.
10
10
 
11
- The **GlobeSSL Client** has undergone extensive real-world testing with real certificates. We worked closely with the CTO from GlobeSSL CA to address any issues or suggestions we had with their API. The assistance we received was truly excellent, and we're happy to provide this library to the public domain, which we hope will only mean more resellers for them.
11
+ The **GlobeSSL Client** has undergone extensive real-world testing with real certificates. I worked closely with the CTO from GlobeSSL CA to address any issues or suggestions we had with their API. The assistance we received was truly excellent, and I'm happy to provide this library to the public domain, which we hope will only mean more resellers for them.
12
12
 
13
13
  ## About GlobeSSL CA
14
14
  To find out more about GlobeSSL CA please visit their [website](https://www.globessl.com). You can find out more about the API by reading their [documentation](https://api.globessl.com/docs/). To use their API you need to have a reseller account, you can find out more about their reseller plans at the [strategic partners](https://www.globessl.com/strategic-partners/) page on their website.
@@ -26,16 +26,16 @@ gem install globessl
26
26
  ```
27
27
 
28
28
  ## Dependencies
29
- **GlobeSSL Client** has the following runtime dependencies:
29
+ The **GlobeSSL Client** has the following runtime dependencies:
30
30
  - Virtus ~> 1.0.3
31
31
 
32
32
  ## Compatibility
33
- Developed with MRI 2.2, however the `.clientspec` only specifies MRI 2.0. It may work with other flavors, but it hasn't been tested. Please let us know if you encounter any issues.
33
+ Developed with MRI 2.2, however the `.gemspec` only specifies MRI 2.0. It may work with other flavors, but it hasn't been tested. Please let us know if you encounter any issues.
34
34
 
35
35
  ## How To Use
36
36
 
37
37
  ### Prerequisites
38
- **GlobeSSL Client** requires an API key. By default the library will look for your API key in the environment variable `GLOBESSL_API_KEY`. If you'd like to override this and provide the API key directly to the API, setup a configuration initializer as shown below:
38
+ The **GlobeSSL Client** requires an API key. By default the library will look for your API key in the environment variable `GLOBESSL_API_KEY`. If you'd like to override this and provide the API key directly to the API, setup a configuration initializer as shown below:
39
39
  ```ruby
40
40
  GlobeSSL.configure do |config|
41
41
  config.api_key = "b04b4e74c57c37de48863ef9373963e0b496f5e7" # fictional
@@ -64,11 +64,11 @@ The **GlobeSSL Client** provides access to the following GlobeSSL CA API endpoin
64
64
  - [dcv/change](https://api.globessl.com/docs/#api-dcv-change) Change DCV Method for SSL Certificate.
65
65
  - [dcv/resend](https://api.globessl.com/docs/#api-dcv-resend) Re-sends validation email for the SSL Certificate.
66
66
 
67
- **GlobeSSL Client** does not provide access the following GlobeSSL CA API endpoint:
67
+ The **GlobeSSL Client** *does not* provide access the following GlobeSSL CA API endpoint:
68
68
  - [order/quick](https://api.globessl.com/docs/#api-order-quickssl) Order a new SSL Certificate using invite method. The client will receive the URL for completing the SSL generation.
69
69
 
70
70
  ## How To Use
71
- We've attempted to make the **GlobeSSL Client** interface as consistent as possible. The GlobeSSL CA API has the following rules:
71
+ I've attempted to make the **GlobeSSL Client** interface as consistent as possible. The GlobeSSL CA API has the following rules:
72
72
  - `GET` requests require any parameters in the URL.
73
73
  - `POST` requests require any parameters as `x-www-form-urlencoded` and passed in the request body.
74
74
  - The resellers API key is passed in the `X-API-KEY` header.
@@ -79,6 +79,8 @@ The **GlobeSSL Client** breaks the API into consistent logical domain models. Th
79
79
  Following are examples of how to instantiate each class with attributes where necessary, and the properties that can be queried on the class after each API call. All example information including names, addresses and other details are completely fictional and provided to give context.
80
80
 
81
81
  ### Account Balance
82
+ Returns the current account balance and currency.
83
+
82
84
  ```ruby
83
85
  @account = GlobeSSL::AccountBalance.new
84
86
 
@@ -97,6 +99,8 @@ end
97
99
  ```
98
100
 
99
101
  ### Account Details
102
+ Returns the account details such as reseller name, company, address and contact details. It also returns the current balance.
103
+
100
104
  ```ruby
101
105
  @account = GlobeSSL::AccountDetails.new
102
106
 
@@ -125,6 +129,8 @@ end
125
129
  ```
126
130
 
127
131
  ### Products
132
+ Returns a list of SSL products presented as an array of GlobeSSL::Product. You can retrieve a single SSL product given a product id.
133
+
128
134
  ```ruby
129
135
  @products = GlobeSSL::Products.new
130
136
 
@@ -152,9 +158,9 @@ prod.id #=> 106
152
158
  prod.name #=> Globe FREE SSL
153
159
  prod.validation #=> dv
154
160
  prod.wildcard #=> false
155
- prod.mdc #=> false
156
- prod.mdc_min #=> 0
157
- prod.mdc_max #=> 0
161
+ prod.multi_domain #=> false
162
+ prod.min_domains #=> 0
163
+ prod.max_domains #=> 0
158
164
  prod.brand #=> Globe SSL
159
165
 
160
166
  # You can also request a single product like so:
@@ -171,6 +177,8 @@ end
171
177
  ```
172
178
 
173
179
  ### Webservers
180
+ Returns a list of webserver types to be used when ordering an SSL product.
181
+
174
182
  ```ruby
175
183
  @webservers = GlobeSSL::Webservers.new
176
184
 
@@ -199,6 +207,8 @@ webserver.name #=> AOL
199
207
  ```
200
208
 
201
209
  ### Domain Emails
210
+ Returns a list of emails required when validating ownership of a domain using the `dv` method.
211
+
202
212
  ```ruby
203
213
  @domain_emails = GlobeSSL::DomainEmails.new(:domain => "acmecerts.com")
204
214
 
@@ -225,6 +235,8 @@ email.is_a?(String) #=> true
225
235
  ```
226
236
 
227
237
  ### Certificate Signing Request (CSR)
238
+ Used to generate a CSR and Private Key pair. This class uses the GlobeSSL CA API `autocsr` endpoint.
239
+
228
240
  ```ruby
229
241
  @csr = GlobeSSL::CertificateSigningRequest.new(
230
242
  :country_name => "US",
@@ -257,6 +269,8 @@ result = @csr.decode #=> true
257
269
  ```
258
270
 
259
271
  ### Order SSL Certificate
272
+ Place an order for an SSL product.
273
+
260
274
  ```ruby
261
275
  @order = GlobeSSL::OrderSSLCertificate.new(
262
276
  :admin_firstname => "Richard",
@@ -294,6 +308,8 @@ end
294
308
  ```
295
309
 
296
310
  ### SSL Certificate
311
+ Returns an SSL certificate given a certificate id.
312
+
297
313
  ```ruby
298
314
  @cert = GlobeSSL::SSLCertificate.new(
299
315
  :id => @order.certificate_id # from above
@@ -328,6 +344,8 @@ end
328
344
  ```
329
345
 
330
346
  ### Domain Control Validation
347
+ Provides methods to resend a domain control validation email, or change the `dcv_method`.
348
+
331
349
  ```ruby
332
350
  @dcv = GlobeSSL::DomainControlValidation.new(
333
351
  :certificate => cert, # from above
@@ -18,14 +18,14 @@ module GlobeSSL
18
18
 
19
19
  collection.each do |product|
20
20
  @list << Product.new(
21
- :id => product["id"],
22
- :name => product["name"],
23
- :validation => product["validation"],
24
- :wildcard => product["wildcard"],
25
- :mdc => product["mdc"],
26
- :mdc_min => product["mdc_min"],
27
- :mdc_max => product["mdc_max"],
28
- :brand => product["brand"]
21
+ :id => product["id"],
22
+ :name => product["name"],
23
+ :validation => product["validation"],
24
+ :wildcard => product["wildcard"],
25
+ :multi_domain => product["mdc"],
26
+ :min_domains => product["mdc_min"],
27
+ :max_domains => product["mdc_max"],
28
+ :brand => product["brand"]
29
29
  )
30
30
  end
31
31
  return true
@@ -2,7 +2,7 @@ module GlobeSSL
2
2
  module VERSION
3
3
  MAJOR = 1
4
4
  MINOR = 0
5
- TINY = 2
5
+ TINY = 4
6
6
  REVISION = nil
7
7
  STRING = [MAJOR, MINOR, TINY, REVISION].compact.join('.')
8
8
  SUMMARY = "GlobeSSL Ruby Client v#{STRING}"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: globessl
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jurgen Jocubeit
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-13 00:00:00.000000000 Z
11
+ date: 2015-10-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: virtus
@@ -77,6 +77,6 @@ rubyforge_project:
77
77
  rubygems_version: 2.4.5
78
78
  signing_key:
79
79
  specification_version: 4
80
- summary: GlobeSSL Ruby Client v1.0.2
80
+ summary: GlobeSSL Ruby Client v1.0.4
81
81
  test_files: []
82
82
  has_rdoc: