def authenticate(self, key_id=None, secret=None, allow_agent=False):
if key_id and secret:<EOL><INDENT>self.auth = HTTPSignatureAuth(key_id=key_id, secret=secret, <EOL>allow_agent=allow_agent)<EOL><DEDENT>
:param key_id: SmartDC identifier for the ssh key
:type key_id: :py:class:`basestring`

:param secret: path to private rsa key
:type secret: :py:class:`basestring`

:param allow_agent: whether or not to try ssh-agent
:type allow_agent: :py:class:`bool`

If no `key_id` or `secret` were entered on initialization, or there is
a need to change the existing authentication credentials, one may 
authenticate with a `key_id` and `secret`.