Visão geral do Quarkus Security
Quarkus Security is a framework that provides the architecture, multiple authentication and authorization mechanisms, and other tools for you to build secure and production-quality Java applications.
Before building security into your Quarkus applications, learn about the Quarkus Security architecture and the different authentication mechanisms and features that you can use.
Principais recursos do Quarkus Security
O framework Quarkus Security fornece mecanismos de autenticação de segurança nativos para autenticação Básica, baseada em Formulário e TLS mútua (mTLS). Você também pode utilizar outros mecanismos de autenticação conhecidos como: o OpenID Connect (OIDC) e o WebAuthn.
Authentication mechanisms depend on Identity providers to verify the authentication credentials and map them to a SecurityIdentity instance, which has the username, roles, original authentication credentials, and other attributes.
Quarkus also includes built-in security to allow for role-based access control (RBAC) based on the common security annotations @RolesAllowed, @DenyAll, @PermitAll on REST endpoints, and CDI beans. For more information, see the Quarkus Authorization of web endpoints guide.
O Quarkus Security também oferece suporte aos seguintes recursos:
O Quarkus Security também é altamente personalizável. Para obter mais informações, consulte o guia de dicas e técnicas do Quarkus Security .
Primeiros passos com o Quarkus Security
To get started with security in Quarkus, consider combining the Quarkus built-in Basic authentication with the Jakarta Persistence identity provider to enable role-based access control (RBAC). Complete the steps in the Secure a Quarkus application with Basic authentication tutorial.
Após garantir com sucesso a segurança da sua aplicação Quarkus com a Basic authentication, você pode aumentar ainda mais a segurança adicionando mecanismos de autenticação mais avançados, por exemplo, consulte o guia Mecanismo de fluxo de autorização Quarkus OpenID Connect (OIDC) .
Teste com Quarkus Security
Guidance for testing Quarkus Security features and ensuring that your Quarkus applications are securely protected is provided in the Quarkus Security testing guide.
Mais informações sobre os recursos de segurança do Quarkus
Compartilhamento de recursos entre origens
To make your Quarkus application accessible to another application running on a different domain, you need to configure cross-origin resource sharing (CORS). For more information about the CORS filter that Quarkus provides, see the Quarkus CORS filter section of the "HTTP reference" guide.
Prevenção de Cross-Site Request Forgery (CSRF)
O Quarkus Security fornece um filtro RESTEasy Reactive que pode proteger seus aplicativos contra um ataque Cross-Site Request Forgery. Para obter mais informações, consulte o guia Quarkus Prevenção contra Cross-Site Request Forgery .
Cookies do SameSite
Você pode adicionar a propriedade de cookie SameSite a qualquer um dos cookies definidos por um Quarkus endpoint. Para obter mais informações, consulte a seção de cookies SameSite do guia "Referência HTTP" do Quarkus.
Mecanismos de segredos
Secrets engines are components that store, generate, or encrypt data.
O Quarkus fornece extensões adicionais no Quarkiverse para armazenar credenciais de forma segura, por exemplo, Quarkus e HashiCorp Vault .
Serialização segura
If your Quarkus Security architecture includes RESTEasy Reactive and Jackson, Quarkus can limit the fields that are included in JSON serialization based on the configured security. For more information, see the JSON serialisation section of the Quarkus “Writing REST services with RESTEasy Reactive” guide.
Proteja os recursos gerados automaticamente por REST Data com Panache
Se você utilizar a extensão REST Data com Panache para auto-gerar seus recursos, você ainda pode utilizar anotações de segurança dentro do pacote jakarta.annotation.security .
Para mais informações, consulte a seção Securing endpoints do guia "Gerando recursos REST Jakarta com Panache" do Quarkus.
Security vulnerability detection
A maioria das tags do Quarkus são relatadas no de US National Vulnerability Database (NVD ). Para obter informações sobre vulnerabilidades de segurança, consulte o guia Security vulnerability detection and reporting no Quarkus.