示例#1
0
def gen_wss_token(user, passw, method='Digest', nonce=True, created=True):
    """Method generates WSS token

    Args:   
       user (str): username
       passw (str): password
       method (str): token method Text|Digest
       nonce (bool): include nonce
       created (bool): include created      

    Returns:
       dict

    """

    token = UsernameToken(user, passw)
    if (nonce):
        token.setnonce()
    if (created):
        token.setcreated()

    token = {'username': user, 'password': passw, 'nonce': str(
        token.nonce), 'created': str(token.created)}
    if (method == 'Digest'):
        token['created'] = datetime.utcnow().isoformat()[:-3] + 'Z'
        token['password'] = encodestring(
            sha1(token['nonce'] + token['created'] + passw).digest())[:-1]
        token['nonce'] = encodestring(token['nonce'])[:-1]

    return token
def add_security(client, user, passwd):
    sec = Security()
    token = UsernameToken(user, passwd)
    token.setnonce()
    token.setcreated()
    sec.tokens.append(token)
    client.set_options(wsse=sec)
示例#3
0
def setSoapHeader(client, username, password):
    security = Security()
    token = UsernameToken(username, password)
    token.setcreated()
    security.tokens.append(token)
    if debug:
        print security
    client.set_options(wsse=security)
示例#4
0
def setSoapHeader(client, username, password):
    security = Security()
    token = UsernameToken(username, password)
    token.setcreated()
    security.tokens.append(token)
    if debug:
        print security
    client.set_options(wsse=security)
示例#5
0
 def test_wsse_username_nonce(self):
     security = Security()
     token = UsernameToken("username", "password")
     token.setnonce()
     token.setcreated()
     token.setnonceencoding(True)
     token.setpassworddigest("digest")
     security.tokens.append(token)
     assert "<wsu:Created" in str(security.xml())
示例#6
0
def create_tokens(response):
    security = Security()
    token = UsernameToken(AUTHORIZED_NUI)
    token.setcreated(response.Fecha)
    token.nonce_has_encoding = True
    token.setnonce(response.Nonce)
    token.setpassworddigest(response.Digest)
    security.tokens.append(token)

    token_ts = Timestamp()
    token_ts.created = response.Fecha
    token_ts.expires = response.FechaF
    security.tokens.append(token_ts)
    return security
示例#7
0
def add_tokens(response, student_identity):
    """
    Agregar token de seguridad y de tiempo
    en header de WS
    """
    security = Security()
    token = UsernameToken(settings.WS_CONFIG['identity'])
    token.setcreated(response.Fecha)
    token.nonce_has_encoding = True
    token.setnonce(response.Nonce)
    token.setpassworddigest(response.Digest)
    security.tokens.append(token)
    token_ts = Timestamp()
    token_ts.created = response.Fecha
    token_ts.expires = response.FechaF
    security.tokens.append(token_ts)
    return security
    def addWsse(self, username, password, nonce=False, create=False):
        """
		Add WS-Security

		@param username: username
		@type username: string

		@param password: password
		@type password: string

		@param nonce: add nonce element (default=False)
		@type nonce: boolean

		@param create: add create element (default=False)
		@type create: boolean
		"""
        security = Security()
        token = UsernameToken(username, password)
        if nonce: token.setnonce()
        if create: token.setcreated()
        security.tokens.append(token)
        self.LIB_SUDS.set_options(wsse=security)
示例#9
0
 def setcreated(self, *args, **kwargs):
     UsernameToken.setcreated(self, *args, **kwargs)
     if self.created is None:
         self.created = dt.datetime.utcnow()
     self.created = str(DateTime(self.created))
示例#10
0
 def setcreated(self, *args, **kwargs):
     UsernameToken.setcreated(self, *args, **kwargs)
     if is_debian_based:
         self.created = str(self.created.replace(tzinfo=UtcTimezone()))
     else:
         self.created = str(UTC(self.created))
示例#11
0
 def setcreated(self, *args, **kwargs):
     UsernameToken.setcreated(self, *args, **kwargs)
     self.created = str(UTC(self.created))
示例#12
0
	def setcreated(self, *args, **kwargs):
		UsernameToken.setcreated(self, *args, **kwargs)
		if self.created is None :
			self.created = dt.datetime.utcnow()
		self.created = str(DateTime(self.created))
示例#13
0
 def setcreated(self, *args, **kwargs):
     dt_adjusted = None
     if self.dt_diff:
         dt_adjusted = (self.dt_diff + dt.datetime.utcnow())
     UsernameToken.setcreated(self, dt=dt_adjusted, *args, **kwargs)
     self.created = str(UTC(self.created))
示例#14
0
 def setcreated(self, *args, **kwargs):
     UsernameToken.setcreated(self, *args, **kwargs)
     if is_debian_based:
         self.created = str(self.created.replace(tzinfo=UtcTimezone()))
     else:
         self.created = str(UTC(self.created))
示例#15
0
 def setcreated(self, *args, **kwargs):
     dt_adjusted = None
     if self.dt_diff :
         dt_adjusted = (self.dt_diff + dt.datetime.utcnow())
     UsernameToken.setcreated(self, dt=dt_adjusted, *args, **kwargs)
     self.created = str(UTC(self.created))