Limitações e problemas conhecidos com o suporte para protocolo SFTP SSH no Armazenamento de Blobs do Azure
Este artigo descreve as limitações e problemas conhecidos do suporte ao SFTP no Armazenamento de Blobs do Azure.
Importante
Como você precisa habilitar o namespace hierárquico da sua conta para usar o SFTP, todos os problemas conhecidos descritos no artigo Problemas conhecidos com o Azure Data Lake Storage também se aplicam à sua conta.
Clientes conhecidos sem suporte
Os clientes a seguir são conhecidos por serem incompatíveis com o SFTP para Armazenamento de Blobs do Azure. Para obter mais informações, consulte Algoritmos com suporte.
- Kemp
- paramiko 1.16.0
- SSH.NET 2016.1.0
Essa lista não é completa e pode mudar ao longo do tempo.
Configurações de cliente
Para transferir arquivos de ou para o Armazenamento de Blobs do Azure por meio de clientes SFTP, confira as configurações recomendadas a seguir.
WinSCP
- No diálogo Preferências, em Transferência - Resistência, selecione Desabilitar para desabilitar a opção Habilitar retomada/transferência de transferência para nome de arquivo temporário.
Cuidado
Deixar essa opção habilitada pode causar falhas ou desempenho degradado durante uploads de arquivos grandes.
Operações sem suporte
Categoria | Operações sem suporte |
---|---|
Gravações aleatórias | Operações que incluem sinalizadores READ e WRITE. Por exemplo: SSH.NET criar API |
Links | symlink - criando links simbólicosln - criando links rígidos |
Informações de capacidade | df - informações de uso para o sistema de arquivos |
Extensões | As extensões sem suporte incluem, mas não se limitam a: fsync@openssh.com, limits@openssh.com, lsetstat@openssh.com, statvfs@openssh.com |
Comandos SSH | O SFTP é o único subsistema com suporte. As solicitações do Shell após a conclusão da troca de chaves falharão. |
Gravações de vários protocolos | Gravações aleatórias e acréscimos (PutBlock ,PutBlockList , GetBlockList , AppendBlock , AppendFile ) não são permitidos de outros protocolos (NFS, REST de Blob, REST do Data Lake Storage) em blobs criados usando SFTP. Substituições completas são permitidas. |
Operações de renomeação | As operações de renomeação quando o nome do arquivo de destino já existe são uma violação de protocolo. A tentativa de tal operação retornará um erro. Confira Remover e renomear arquivos para obter mais informações. |
Operações entre contêineres | Não há suporte para a passagem entre contêineres ou a execução de operações em vários contêineres da mesma conexão. |
Restaurar | Não há como restaurar um blob excluído de forma reversível com SFTP. A Undelete API REST deve ser usada. |
Autenticação e autorização
Os usuários locais são a única forma de gerenciamento de identidade com suporte no momento para o ponto de extremidade SFTP.
Não há suporte para o Microsoft Entra ID no ponto de extremidade SFTP.
Para obter mais informações, confira Modelo de permissão SFTP e Controle de acesso no Azure Data Lake Storage.
Rede
Para acessar a conta de armazenamento usando o SFTP, sua rede deve permitir o tráfego na porta 22.
Não há suporte para endereços IP estáticos em contas de armazenamento. Essa não é uma limitação específica do SFTP.
Há um tempo limite de dois minutos para conexões ociosas ou inativas. O OpenSSH parecerá ter deixado de responder e, em seguida, se desconectará. Alguns clientes se reconectam automaticamente.
Outro
Para problemas de desempenho e considerações, consulte Considerações de desempenho do SFTP (Protocolo de Transferência de Arquivo SSH) no Armazenamento de Blobs do Azure.
As operações de retomada e acréscimo exigem a ativação do recurso de visualização
SFTP Resumable Uploads
em sua assinatura. Para obter mais informações sobre como ativar funcionalidades de pré-visualização, veja Configurar funcionalidades de pré-visualização na subscrição do Azure.Por padrão, a propriedade Content-MD5 dos blobs carregados usando o SFTP é definida como nula. Portanto, se você quiser que a propriedade Content-MD5 desses blobs contenha um hash MD5, seu cliente deverá calcular esse valor e, em seguida, definir a propriedade Content-MD5 do blob antes de fazer o upload do blob.
O tamanho máximo de upload de arquivo por meio do ponto de extremidade SFTP é de 500 GB.
Há suporte para failover de conta gerenciada pelo cliente no nível de visualização em regiões selecionadas. Para obter mais informações, consulte planejamento e o failover da recuperação de desastres do armazenamento do Azure.
Para alterar as configurações de redundância/replicação da conta de armazenamento, o SFTP deve ser desabilitado. O SFTP pode ser habilitado novamente depois que a conversão for concluída.
Os contêineres especiais, como $logs, $blobchangefeed, $root e $web, não são acessíveis por meio do ponto de extremidade SFTP.
Não há suporte para links simbólicos.
Não há suporte para comandos SSH e SCP que não são SFTP.
Não há suporte para FTPS e FTP.
TLS e SSL não estão relacionados ao SFTP.
Há suporte apenas para a versão 2 do SSH.
Evite nomes de blobs ou diretórios que terminem com um ponto (.), uma barra (/), uma barra invertida () ou uma sequência ou combinação dos dois. Nenhum segmento de linha deve terminar com um ponto (.). Para obter mais informações, veja Nomeando e referenciando contêineres, blobs e metadados.
Recursos de Armazenamento de Blobs
Quando você habilitar o suporte ao SFTP, alguns recursos do Armazenamento de Blobs terão suporte total, mas alguns recursos podem ter suporte apenas no nível de visualização ou ainda não têm suporte.
Para ver como cada recurso de Armazenamento de Blobs tem suporte em contas que têm suporte de SFTP habilitado, consulte o suporte a recursos de Armazenamento de Blobs para contas de Armazenamento do Azure.
Solução de problemas
Para resolver o erro
Failed to update SFTP settings for account 'accountname'. Error: The value 'True' isn't allowed for property isSftpEnabled.
, verifique se os seguintes pré-requisitos são atendidos no nível da conta de armazenamento:A conta precisa ser do tipo de uso geral V2 e de blob de blocos premium.
A conta precisa ter o namespace hierárquico habilitado.
Para resolver o erro
Home Directory not accessible error.
, verifique se:O usuário recebeu permissões apropriadas para o contêiner.
O nome do contêiner está especificado na cadeia de conexão para os usuários locais que não têm um diretório base.
O nome do contêiner está especificado na cadeia de conexão para os usuários locais que têm um diretório base que não existe.
Para resolver
Received disconnect from XX.XXX.XX.XXX port 22:11:
ao conectar, verifique se:O acesso à rede pública é
Enabled from all networks
ouEnabled from selected virtual networks and IP addresses
.O endereço IP do cliente é permitido pelo firewall.
Confira também
- Suporte ao SFTP (protocolo FTP SSH) para Armazenamento de Blobs do Azure
- Conectar-se ao Armazenamento de Blobs do Azure usando o SFTP (protocolo FTP SSH)
- Chaves de Host para suporte ao SFTP (Protocolo FTP SSH) no Armazenamento de Blobs do Azure
- Considerações sobre desempenho do protocolo SFTP do SSH no Armazenamento de Blobs do Azure