fog/fog — Issue #587: TypeError when trying to get_object_https?_url when credentials not configured
Author: nate
Created: 2011-11-04 18:49:05+00:00
State: open

These errors happen in the signing step of these methods (hmac.rb).

```ruby
connection = Fog::Storage.new(:provider => "AWS", :aws_access_key_id => nil, :aws_secret_access_key => nil)
connection.get_object_https_url("bucket", "key", Time.now) # => TypeError: can't convert nil into String
connection.get_object_http_url("bucket", "key", Time.now) # => TypeError: can't convert nil into String
```

Since it's acceptable to pass nil for aws_access_key_id and aws_secret_access_key, these methods should return a Fog::Errors::Error and not a TypeError error. Libraries should return predictable errors wherever possible. It looks like this particular issue has been around for a while.