1
0
mirror of https://github.com/OpenNebula/one.git synced 2025-03-16 22:50:10 +03:00

bug #1142: Check user driver in CloudAuth

This commit is contained in:
Daniel Molina 2012-03-21 17:18:15 +01:00
parent 284d512916
commit cbc622f8b5
5 changed files with 8 additions and 8 deletions

View File

@ -118,9 +118,9 @@ class CloudAuth
@user_pool
end
def get_password(username, non_public_user=false)
if non_public_user == true
xp="USER[NAME=\"#{username}\" and AUTH_DRIVER!=\"public\"]/PASSWORD"
def get_password(username, driver=nil)
if driver
xp="USER[NAME=\"#{username}\" and AUTH_DRIVER=\"#{driver}\"]/PASSWORD"
else
xp="USER[NAME=\"#{username}\"]/PASSWORD"
end

View File

@ -17,7 +17,7 @@
module EC2CloudAuth
def do_auth(env, params={})
username = params['AWSAccessKeyId']
one_pass = get_password(username)
one_pass = get_password(username, 'core')
return nil unless one_pass
signature = case params['SignatureVersion']

View File

@ -21,7 +21,7 @@ module OCCICloudAuth
if auth.provided? && auth.basic?
username, password = auth.credentials
one_pass = get_password(username)
one_pass = get_password(username, 'core')
if one_pass && one_pass == password
return username

View File

@ -14,7 +14,7 @@
# limitations under the License. #
#--------------------------------------------------------------------------- #
module CoreCloudAuth
module OpenNebulaCloudAuth
def do_auth(env, params={})
auth = Rack::Auth::Basic::Request.new(env)
@ -26,7 +26,7 @@ module CoreCloudAuth
rc = user.info
if OpenNebula.is_error?(rc)
logger.error { "User #{username} could not be authenticated"}
logger.error { "User #{username} could not be authenticated" }
logger.error { rc.message }
return nil
end

View File

@ -21,7 +21,7 @@ module SunstoneCloudAuth
if auth.provided? && auth.basic?
username, password = auth.credentials
one_pass = get_password(username, true)
one_pass = get_password(username, 'core')
if one_pass && one_pass == Digest::SHA1.hexdigest(password)
return username