Compartilhar via


Tópicos de segurança do ASP.NET Core

O ASP.NET Core permite que desenvolvedores configurem e gerenciem a segurança. A seguinte lista fornece links para tópicos de segurança:

Esses recursos de segurança permitem que você crie aplicativos ASP.NET Core robustos e seguros.

Para obter a cobertura de segurança Blazor, que adiciona ou sobrepõe as diretrizes neste nó, consulte autenticação e autorização ASP.NET Core Blazor e os outros artigos no nó Segurança e Identity do Blazor.

Recursos de segurança do ASP.NET Core

O ASP.NET Core fornece várias ferramentas e bibliotecas para proteger aplicativos ASP.NET Core, incluindo provedores de identity internos e serviços de identity de terceiros, como Facebook, Twitter e LinkedIn. O ASP.NET Core fornece várias abordagens para armazenar segredos de aplicativo.

Autenticação versus autorização

A autenticação é um processo em que um usuário fornece credenciais que são comparadas àquelas armazenadas em um sistema operacional, num banco de dados, no aplicativo ou no recurso. Se elas corresponderem, os usuários se autenticarão com êxito e, assim, poderão realizar ações para as quais são autorizados, durante um processo de autorização. A autorização é o processo que determina o que um usuário pode fazer.

Outra forma de pensar na autenticação é considerá-la como uma maneira de entrar em um espaço, como um servidor, um banco de dados, um aplicativo ou um recurso, ao passo que a autorização refere-se a quais ações o usuário poderá executar em que objetos dentro desse espaço (servidor, banco de dados ou aplicativo).

Vulnerabilidades comuns no software

O ASP.NET Core e o EF contêm recursos que ajudam a proteger seus aplicativos e impedir violações de segurança. A seguinte lista de links leva à documentação com detalhe de técnicas para evitar as vulnerabilidades de segurança mais comuns em aplicativos Web:

Há mais vulnerabilidades sobre as quais você deve estar atento. Para obter mais informações, veja os outros artigos na seção Segurança e Identity do sumário.

Fluxos de autenticação seguros

Recomendamos usar a opção de autenticação mais segura. Para os serviços do Azure, a autenticação mais segura são as identidades gerenciadas.

Evite conceder credenciais de senha do proprietário do recurso porque isso:

  • Expõe a senha do usuário ao cliente.
  • É um risco de segurança significativo.
  • Só deve ser usado quando outros fluxos de autenticação não forem possíveis.

As identidades gerenciadas são uma maneira segura de se autenticar em serviços sem a necessidade de armazenar credenciais em código, variáveis de ambiente ou arquivos de configuração. As identidades gerenciadas estão disponíveis para serviços do Azure e podem ser usadas com o SQL do Azure, o Armazenamento do Azure e outros serviços do Azure:

Quando o aplicativo é implantado em um servidor de teste, uma variável de ambiente pode ser usada para definir a cadeia de caracteres de conexão para um servidor de banco de dados de teste. Para obter mais informações, confira Configuração. Uma variável de ambiente NUNCA deve ser usada para armazenar uma cadeia de conexão de produção.

Para saber mais, veja:

Recursos adicionais