예제 #1
0
def register_secret_key():
    """
    Register a user's API key and secret key.

    @return: Response.
    @raise Ec2stackError: API key already registered.
    """
    require_parameters({'AWSAccessKeyId', 'AWSSecretKey'})
    found_user = USERS.get(get('AWSAccessKeyId'))
    if found_user is None:
        USERS.create(
            apikey=get('AWSAccessKeyId'),
            secretkey=get('AWSSecretKey')
        )
        return {
            'template_name_or_list': 'secretkey.xml',
            'response_type': 'RegisterSecretKeyResponse',
            'AWSAccessKeyId': get('AWSAccessKeyId'),
            'AWSSecretKey': get('AWSSecretKey'),
            'Message': 'Successfully Registered!'
        }
    else:
        raise Ec2stackError(
            '400',
            'DuplicateUser',
            'The given AWSAccessKeyId is already registered'
        )
예제 #2
0
def remove_secret_key():
    """
    Remove a user's API key and secret key

    @return: Response.
    @raise Ec2stackError: API key doesn't exist.
    """
    require_parameters({'AWSAccessKeyId', 'AWSSecretKey'})
    accesskey = get('AWSAccessKeyId')
    secretkey = get('AWSSecretKey')

    found_user = USERS.get(accesskey)
    if found_user is not None and found_user.secretkey == secretkey:
        USERS.delete(found_user)
        return {
            'template_name_or_list': 'secretkey.xml',
            'response_type': 'RemoveSecretKeyResponse',
            'AWSAccessKeyId': get('AWSAccessKeyId'),
            'AWSSecretKey': get('AWSSecretKey'),
            'Message': 'Successfully removed!'
        }
    else:
        raise Ec2stackError(
            '400', 'NoSuchUser',
            'The no matching AWSAccessKeyId and AWSSecretKey was not found')
예제 #3
0
def remove_secret_key():
    """
    Remove a user's API key and secret key

    @return: Response.
    @raise Ec2stackError: API key doesn't exist.
    """
    require_parameters({'AWSAccessKeyId', 'AWSSecretKey'})
    accesskey = get('AWSAccessKeyId')
    secretkey = get('AWSSecretKey')

    found_user = USERS.get(accesskey)
    if found_user is not None and found_user.secretkey == secretkey:
        USERS.delete(found_user)
        return {
            'template_name_or_list': 'secretkey.xml',
            'response_type': 'RemoveSecretKeyResponse',
            'AWSAccessKeyId': get('AWSAccessKeyId'),
            'AWSSecretKey': get('AWSSecretKey'),
            'Message': 'Successfully removed!'
        }
    else:
        raise Ec2stackError(
            '400',
            'NoSuchUser',
            'The no matching AWSAccessKeyId and AWSSecretKey was not found'
        )
예제 #4
0
def register_secret_key():
    require_parameters({'AWSAccessKeyId', 'AWSSecretKey'})
    found_user = USERS.get(get('AWSAccessKeyId'))
    if found_user is None:
        USERS.create(apikey=get('AWSAccessKeyId'),
                     secretkey=get('AWSSecretKey'))
        return {
            'template_name_or_list': 'secretkey.xml',
            'response_type': 'RegisterSecretKeyResponse',
            'AWSAccessKeyId': get('AWSAccessKeyId'),
            'AWSSecretKey': get('AWSSecretKey'),
            'Message': 'Successfully Registered!'
        }
    else:
        raise Ec2stackError('400', 'DuplicateUser',
                            'The given AWSAccessKeyId is already registered')
def register_secret_key():
    """
    Register a user's API key and secret key.

    @return: Response.
    @raise Ec2stackError: API key already registered.
    """
    require_parameters({"AWSAccessKeyId", "AWSSecretKey"})
    found_user = USERS.get(get("AWSAccessKeyId"))
    if found_user is None:
        USERS.create(apikey=get("AWSAccessKeyId"), secretkey=get("AWSSecretKey"))
        return {
            "template_name_or_list": "secretkey.xml",
            "response_type": "RegisterSecretKeyResponse",
            "AWSAccessKeyId": get("AWSAccessKeyId"),
            "AWSSecretKey": get("AWSSecretKey"),
            "Message": "Successfully Registered!",
        }
    else:
        raise Ec2stackError("400", "DuplicateUser", "The given AWSAccessKeyId is already registered")
예제 #6
0
파일: helpers.py 프로젝트: maduhu/ec2stack
def get_secretkey(data=None):
    if data is None:
        data = request.form

    apikey = get('AWSAccessKeyId', data)
    user = USERS.get(apikey)

    if user is None:
        raise Ec2stackError(
            '401', 'AuthFailure',
            'Unable to find a secret key for %s, please insure you registered'
            % apikey)

    return user.secretkey.encode('utf-8')
def remove_secret_key():
    """
    Remove a user's API key and secret key

    @return: Response.
    @raise Ec2stackError: API key doesn't exist.
    """
    require_parameters({"AWSAccessKeyId", "AWSSecretKey"})
    accesskey = get("AWSAccessKeyId")
    secretkey = get("AWSSecretKey")

    found_user = USERS.get(accesskey)
    if found_user is not None and found_user.secretkey == secretkey:
        USERS.delete(found_user)
        return {
            "template_name_or_list": "secretkey.xml",
            "response_type": "RemoveSecretKeyResponse",
            "AWSAccessKeyId": get("AWSAccessKeyId"),
            "AWSSecretKey": get("AWSSecretKey"),
            "Message": "Successfully removed!",
        }
    else:
        raise Ec2stackError("400", "NoSuchUser", "The no matching AWSAccessKeyId and AWSSecretKey was not found")
예제 #8
0
파일: helpers.py 프로젝트: vogxn/ec2stack
def get_secretkey(data=None):
    if data is None:
        data = request.form

    apikey = get('AWSAccessKeyId', data)
    user = USERS.get(apikey)

    if user is None:
        raise Ec2stackError(
            '401',
            'AuthFailure',
            'Unable to find a secret key for %s, please insure you registered'
            % apikey
        )

    return user.secretkey.encode('utf-8')
예제 #9
0
def get_secretkey(data=None):
    """
    Get the secret key from the database.

    @param data: Data to get the API KEY from.
    @return: The users secret key.
    @raise Ec2stackError: if the secretkey is not found.
    """
    if data is None:
        data = request.form

    apikey = get('AWSAccessKeyId', data)
    user = USERS.get(apikey)

    if user is None:
        errors.apikey_not_found(apikey)

    return user.secretkey.encode('utf-8')