本文整理汇总了Python中cpc.util.conf.server_conf.ServerConf.getCaChainFile方法的典型用法代码示例。如果您正苦于以下问题:Python ServerConf.getCaChainFile方法的具体用法?Python ServerConf.getCaChainFile怎么用?Python ServerConf.getCaChainFile使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cpc.util.conf.server_conf.ServerConf
的用法示例。
在下文中一共展示了ServerConf.getCaChainFile方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: RawServerMessage
# 需要导入模块: from cpc.util.conf.server_conf import ServerConf [as 别名]
# 或者: from cpc.util.conf.server_conf.ServerConf import getCaChainFile [as 别名]
class RawServerMessage(ClientBase):
"""Raw named server-to-server messages for messages to servers that are not
yet in the topology.
These messages should all communicate on the client port
"""
def __init__(self,host=None,port=None):
self.conf = ServerConf()
self.host = host
self.port = port
if self.host == None:
self.host = self.conf.getServerHost()
if self.port == None:
self.port = self.conf.getServerSecurePort()
self.privateKey = self.conf.getPrivateKey()
self.keychain = self.conf.getCaChainFile()
def sendAddNodeRequest(self,host):
"""
"""
conf = ServerConf()
cmdstring ='connect-server-request'
fields = []
input=Input('cmd',cmdstring)
inf = open(conf.getCACertFile(), "r")
key = inf.read()
nodeConnectRequest = NodeConnectRequest(conf.getServerId()
,conf.getClientSecurePort()
,conf.getServerSecurePort()
,key
,conf.getFqdn()
,conf.getHostName())
input2=Input('nodeConnectRequest',
json.dumps(nodeConnectRequest,
default=json_serializer.toJson,
indent=4))
input3=Input('unqalifiedDomainName',host)
fields.append(input)
fields.append(input2)
fields.append(input3)
fields.append(Input('version', "1"))
# this goes over the client Secure Port, and we don't want the server to use
# cookies
response= self.postRequest(ServerRequest.prepareRequest(fields),
require_certificate_authentication=False,
disable_cookies=True)
return response
def addNodeAccepted(self):
conf = ServerConf()
inf = open(conf.getCACertFile(), "r")
key = inf.read()
#only sending fqdn the requesting should already know the unqualified
# hostname
node = NodeConnectRequest(conf.getServerId(),
conf.getClientSecurePort(),
conf.getServerSecurePort(),
key,
conf.getFqdn(),
None)
cmdstring ='node-connection-accepted'
fields = []
input=Input('cmd',cmdstring)
input2=Input('connectRequest',
json.dumps(node,default=json_serializer.toJson,indent=4))
fields.append(input)
fields.append(input2)
fields.append(Input('version', "1"))
# this goes over client secure port , and we don't want the server to use
# cookies
response= self.postRequest(ServerRequest.prepareRequest(fields),
require_certificate_authentication=False,
disable_cookies=True)
return response
示例2: OpenSSL
# 需要导入模块: from cpc.util.conf.server_conf import ServerConf [as 别名]
# 或者: from cpc.util.conf.server_conf.ServerConf import getCaChainFile [as 别名]
#.........这里部分代码省略.........
return connectionBundle
def setupServer(self):
if (not os.path.isdir(self.conf.getKeyDir())):
os.makedirs(self.conf.getKeyDir())
self._generateKeyPair()
self._generateCertReqConf(
distinguished_cn=self.cn + "_" + self.conf.CN_ID,
certReqConfigFile=self.conf.getCertReqConfigFile())
self._generateCert(self.conf.getPrivateKey(),
self.conf.getCertFile(),
certReqConfigFile=self.conf.getCertReqConfigFile())
self._createDefaultLogConfig()
def _generateCA(self):
'''set up a CA configuration'''
if (not os.path.isfile(self.conf.getCASerialFile())):
f = open(self.conf.getCASerialFile(), 'w')
f.write('01')
f.close()
if (not os.path.isfile(self.conf.getCAIndexFile())):
f = open(self.conf.getCAIndexFile(), 'w')
f.close()
self._generateCaConf()
def _generateCaChainFile(self):
file = open(self.conf.getCaChainFile(), "w")
shutil.copyfile(self.conf.getCACertFile(), self.conf.getCaChainFile())
def _generateCert(self, privateKeyFile, certFile, certReqConfigFile):
'''
generates and cert request based on the provided private key
writes a cert to the provided certFile path
@input String privateKeyFile: path to the private key
@Input String certFile: path to the cert file
@Input String certReqConfigFile: path to the certificate configuration file
'''
args = ["openssl", "req", "-outform", "PEM", "-new", "-key", \
privateKeyFile,
"-config", certReqConfigFile,
"-out", self.conf.getCertRequestFile()]
p = subprocess.Popen(args, stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
(stdout, stderr) = p.communicate()
if p.returncode == 1:
raise SetupError(
"An error occured while generating a certificate request\n openssl returned the following error:\n" % stderr)
args = ["openssl", "ca", "-in",
self.conf.getCertRequestFile(), "-config",
self.conf.getCaConfigFile(), "-keyfile", \
self.conf.getCAPrivateKey(),
"-out", certFile]
p = subprocess.Popen(args, stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)