def METHOD_NAME(self) -> paramiko.SFTPClient:
    """Returns a SFTP connection object.
    Returns: paramiko.SFTPClient.
    """
    ssh = paramiko.SSHClient()
    if self.conn is None:
        if self.rsa_key is None:
            transport = paramiko.Transport((self.hostname, self.port))
            transport.connect(None, self.username, self.password)
            self.conn = paramiko.SFTPClient.from_transport(transport)
        else:
            keyfile = StringIO(self.rsa_key)
            mykey = paramiko.RSAKey.from_private_key(keyfile)
            ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
            ssh.connect(self.hostname, username=self.username, pkey=mykey)
            time.sleep(1)
            self.conn = ssh.open_sftp()
        return self.conn