def getAccessToken()

in aws-cloudknox-config/configrule/CLOUDKNOX_PCI.py [0:0]


def getAccessToken(serviceId,timestamp,accessKey,secretKey,url,port):
    conn = http.client.HTTPSConnection(url, port)
    content_type = "application/json"
    print('serviceId-accessToken: '+ serviceId )
    print('timestamp-accessToken: '+ timestamp )
    print('accessKey-accessToken: '+ accessKey )
    print('secretKey-accessToken: '+ secretKey )
    print('url-accessToken: ' + url)

    headers = {
      'X-CloudKnox-Service-Account-Id': serviceId,
      'X-CloudKnox-Timestamp-Millis': timestamp,
      'Content-Type': content_type
    }

    cloudknoxDict = {}
    cloudknoxDict['serviceAccountId'] = serviceId
    cloudknoxDict['accessKey'] = accessKey
    cloudknoxDict['secretKey'] = secretKey

    payload = json.dumps(cloudknoxDict)
    print('payload-accessToken: ' + payload)
    
    conn.request("POST", "/api/v2/service-account/authenticate", payload, headers)
    res = conn.getresponse()
    data = res.read()
    data_raw = data.decode()
    print('data_raw: ' + data_raw)
    dataResponse = json.loads(data.decode("utf-8"))
    print('accessToken: ' + dataResponse['accessToken'])
    return dataResponse['accessToken']