def change_password(tokenid, user, oldpasswd, newpasswd, ip, port, realm=""): user = user.encode('ascii','ignore') oldpasswd = oldpasswd.encode('ascii','ignore') newpasswd = newpasswd.encode('ascii','ignore') c = pycurl.Curl() content = StringIO.StringIO() if "" == realm: url = 'http://%s:%s/openam/json/users/%s?_action=changePassword' % (ip, port, user) else: url = 'http://%s:%s/openam/json/%s/users/%s?_action=changePassword' % (ip, port, realm, user) post_data_dict = {"currentpassword":oldpasswd,"userpassword":newpasswd} raws = RawSerialize() post_data_dict = raws.serialize(post_data_dict) c.setopt(pycurl.URL, url) c.setopt(pycurl.POST, 1) c.setopt(pycurl.POSTFIELDS, post_data_dict ) c.setopt(pycurl.HTTPHEADER,['iplanetDirectoryPro: %s'%tokenid,'Content-Type: application/json']) c.setopt(pycurl.WRITEFUNCTION, content.write) c.setopt(pycurl.CONNECTTIMEOUT, 30) c.setopt(pycurl.TIMEOUT, 30) ret = "" try: ret = c.perform() except Exception,e: logger.info(e) c.close() return ""
def change_password(tokenid, user, oldpasswd, newpasswd, ip, port, realm=""): user = user.encode('ascii', 'ignore') oldpasswd = oldpasswd.encode('ascii', 'ignore') newpasswd = newpasswd.encode('ascii', 'ignore') c = pycurl.Curl() content = StringIO.StringIO() if "" == realm: url = 'http://%s:%s/openam/json/users/%s?_action=changePassword' % ( ip, port, user) else: url = 'http://%s:%s/openam/json/%s/users/%s?_action=changePassword' % ( ip, port, realm, user) post_data_dict = {"currentpassword": oldpasswd, "userpassword": newpasswd} raws = RawSerialize() post_data_dict = raws.serialize(post_data_dict) c.setopt(pycurl.URL, url) c.setopt(pycurl.POST, 1) c.setopt(pycurl.POSTFIELDS, post_data_dict) c.setopt(pycurl.HTTPHEADER, [ 'iplanetDirectoryPro: %s' % tokenid, 'Content-Type: application/json' ]) c.setopt(pycurl.WRITEFUNCTION, content.write) c.setopt(pycurl.CONNECTTIMEOUT, 30) c.setopt(pycurl.TIMEOUT, 30) ret = "" try: ret = c.perform() except Exception, e: logger.info(e) c.close() return ""