def getUnscopedToken(keystoneEndpoint, idpResponse, realm = None):
    if realm is None:
	data = {'idpResponse' : idpResponse}
    else:
    	data = {'idpResponse' : idpResponse, 'realm' : realm}
    resp = futils.middlewareRequest(keystoneEndpoint, data, 'POST')
    info = json.loads(resp.read())
    return info
def swapTokens(keystoneEndpoint, unscopedToken, type, tenantId):
    data = {'auth' : {'token' : {'id' : unscopedToken}, type : tenantId}}
    if "v3" in keystoneEndpoint:
       keystoneEndpoint+="auth/"
       data = {"auth": {"identity": {"methods": ["token"],"token": {"id": unscopedToken}, "scope":{}}}}
       if type == 'domainId':
           data["auth"]["identity"]["scope"]["domain"] = {"id": tenantId}
       else:
           data["auth"]["identity"]["scope"]["project"] = {"id": tenantId}
    resp = futils.middlewareRequest(keystoneEndpoint + "tokens", data,'POST', withheader = False)
    return json.loads(resp.read())
def getUnscopedToken(keystoneEndpoint, idpResponse, realm = None):
    if realm is None:
	data = {'idpResponse' : idpResponse}
    else:
    	data = {'idpResponse' : idpResponse, 'realm' : realm}

#    print(keystoneEndpoint)
#    print(data)
#    x = raw_input("ENTER")

    resp = futils.middlewareRequest(keystoneEndpoint, data, 'POST')

    info = json.loads(resp.read())

#    print(info)
#    x = raw_input("ENTER")

    return info
def getIdPRequest(keystoneEndpoint, realm):
    data = {'realm': realm}
    resp = futils.middlewareRequest(keystoneEndpoint, data, 'POST')
    info = json.loads(resp.read())
    return info
def getRealmList(keystoneEndpoint):
    data = {}
    resp = futils.middlewareRequest(keystoneEndpoint, data, 'POST')
    info = json.loads(resp.read())
    return info