Bug 1331627

Summary: Adding an EC2 resource fails with error "AuthFailure => AWS was not able to validate the provided access credential"
Product: Red Hat Satellite Reporter: Dan Macpherson <dmacpher>
Component: Compute ResourcesAssignee: satellite6-bugs <satellite6-bugs>
Status: CLOSED NOTABUG QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.2.0   
Target Milestone: Unspecified   
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-05-16 02:23:01 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Dan Macpherson 2016-04-29 05:14:56 UTC
I'm testing the EC2 Compute Resources in Satellite 6.2. However, I try to add my EC2 account details and click Load Regions. It fails to load the regions and returns the following error:

"AuthFailure => AWS was not able to validate the provided access credentials"

production.log shows the following:

2016-04-29 05:07:59 [app] [I] Started PUT "/compute_resources/test_connection" for 192.168.125.1 at 2016-04-29 05:07:59 +1000
2016-04-29 05:07:59 [app] [I] Processing by ComputeResourcesController#test_connection as */*
2016-04-29 05:07:59 [app] [I]   Parameters: {"utf8"=>"✓", "authenticity_token"=>"tSKnqYsuUAcjsA5Zz7+7A6oGaIbDc/nLHnm50Zt/iYU=", "compute_resource"=>{"name"=>"EC2", "provider"=>"EC2", "description"=>"", "user"=>"AKIAIXCHKTHSDRW7JFWA", "password"=>"[FILTERED]", "location_ids"=>[""], "organization_ids"=>["", "3"]}, "fakepassword"=>"[FILTERED]", "cr_id"=>"null"}
2016-04-29 05:07:59 [app] [I] CR_ID IS null
2016-04-29 05:08:10 [app] [I]   Rendered compute_resources/form/_ec2.html.erb (5482.1ms)
2016-04-29 05:08:10 [app] [I]   Rendered taxonomies/_loc_org_tabs.html.erb (29.8ms)
2016-04-29 05:08:10 [app] [I]   Rendered compute_resources/_form.html.erb (5531.8ms)
2016-04-29 05:08:10 [app] [I] Completed 200 OK in 11318ms (Views: 5529.0ms | ActiveRecord: 17.4ms)

Version-Release number of selected component (if applicable):
foreman-ec2.noarch.1.11.0.17-1.el7sat

How reproducible:
Always

Steps to Reproduce:
1. Add EC2 provider in UI
2. Click "Load Regions"

Actual results:
Error appears

Expected results:
No error appears, region list should appear

Additional info:
foreman-ec2 didn't seem to be install with a default Satellite 6.2 Beta installation, so I installed this package separately.

Comment 1 Dan Macpherson 2016-04-29 05:17:49 UTC
I should also note, I tested out my AWS key pair with the aws command line tool and they seem to work fine. I've tried multiple times re-entering my AWS key pair and it doesn't seem to work. I'm pretty sure this isn't a PEBKAC error.

Comment 2 Dan Macpherson 2016-05-16 02:23:01 UTC
Found out what was causing it. My Satellite Server's time was off by two hours, which screwed up the authentication. After installing and configuring ntpd, the authentication worked!