Como uma especificação independente de linguagem, o OpenAPI permite que os clientes entendam e consumam serviços sem precisar acessar o código-fonte do servidor ou o conhecimento da implementação do servidor.
Os documentos OpenAPI geralmente são escritos em JSON ou YAML e podem ser facilmente compreendidos por humanos e máquinas. Com o OpenAPI, as equipes de DevOps podem automatizar a documentação e garantir que suas APIs estejam em conformidade com os padrões do setor, permitindo que seus aplicativos se integrem facilmente a outros softwares e serviços.
Isso também melhora a segurança, permitindo que os desenvolvedores estabeleçam esquemas de segurança, uma definição de segurança global que designa um método de autenticação de credenciais de clientes e concessão de permissões para a API.
O que é uma API?
Uma interface de programação de aplicativos (API) é um conjunto de protocolos e definições que permite que diferentes programas de software e componentes comuniquem, troquem dados e compartilhem funcionalidades. Ao definir as formas como os aplicativos podem solicitar e trocar informações, as APIs permitem que os sistemas de software interajam de maneiras que suportem uma ampla variedade de funções e transações, desde comércio eletrônico e pagamentos móveis até mídias sociais e serviços de nuvem.
O que é API Security?
As APIs são essenciais para as funções da computação moderna, incluindo serviços em nuvem, microsserviços e estruturas sem servidor. Como eles expõem a lógica e os recursos do aplicativo e podem envolver a transferência de informações confidenciais e valiosas, as APIs são um alvo altamente atraente para agentes mal-intencionados. As soluções de segurança de API ajudam a impedir que hackers explorem vulnerabilidades em APIs e usem APIs para obter acesso não autorizado a ativos e sistemas de TI. A segurança da API requer uma abordagem multicamadas que pode incluir autenticação, proteção baseada em assinatura, limitação de taxa e limitação, um web application firewalle aplicação da diretiva de segurança.
O que são ameaças à segurança de APIs?
Há vários tipos de grandes ameaças à segurança de API.
- Explorações de vulnerabilidade aproveitam falhas em uma API para permitir que hackers obtenham acesso não autorizado à API.
- Os processos de autenticação podem ser comprometidos por invasores, fazendo com que as APIs aceitem solicitações de fontes ilegítimas ou mal-intencionadas.
- Erros de autorização permitem que os clientes que interagem com uma API acessem informações confidenciais, o que pode resultar em uma violação de dados.
Ataques de negação de serviço ou de negação de serviço distribuída ocorrem quando os agentes de ameaça sobrecarregam operações de API com muitas solicitações simultâneas, fazendo com que a API se torne lenta ou não responda.
O que é API Security?
A Especificação OpenAPI (OAS) é uma estrutura que os desenvolvedores de software usam para criar aplicativos que podem interagir com APIs REST. Anteriormente conhecida como Especificação Swagger, a Especificação OpenAPI descreve como se comunicar com uma API, que tipo de informação pode ser solicitada e quais informações serão retornadas. Os documentos OpenAPI geralmente são escritos em JSON ou YAML e podem ser facilmente compreendidos por humanos e máquinas. Com o OpenAPI, as equipes de DevOps podem automatizar a documentação e garantir que suas APIs estejam em conformidade com os padrões do setor, permitindo que seus aplicativos se integrem facilmente a outros softwares e serviços.
Um documento OpenAPI permite que os desenvolvedores definam os fundamentos de uma API, incluindo:
- A presença e as operações de cada endpoint
- Os parâmetros de entrada e saída de cada operação
- Técnicas de autenticação
- Uma lista de contatos, metadados, informações sobre termos de uso, licenciamento, documentos disponíveis e muito mais
Como uma estrutura de código-fonte aberto, o OpenAPI é independente da linguagem usada para criar uma API. Isso permite que computadores e usuários identifiquem e compreendam facilmente os recursos que uma API oferece sem precisar de documentação adicional ou acesso ao código-fonte. Por fim, a Especificação OpenAPI simplifica os processos de desenvolvimento em que vários protocolos, ambientes e interfaces estão envolvidos.
O que é segurança de OpenAPI?
O OpenAPI pode ajudar a melhorar a proteção de API e a segurança de gateway de API, fornecendo uma documentação de API facilmente acessível e legível para cada API. Quando as equipes de DevOps podem entender cada endpoint de API e seus recursos, elas podem antecipar melhor os riscos de segurança e impedir que vulnerabilidades sejam ativas. A documentação de segurança de OpenAPI também ajuda as equipes de segurança a determinar se uma API está em conformidade ou viola a política de segurança interna.
O OpenAPI melhora a segurança ao permitir que os desenvolvedores estabeleçam esquemas de segurança, uma definição de segurança global que designa um método de autenticação de credenciais de clientes e concessão de permissões para a API.
Embora o OpenAPI ajude a documentar e comunicar os requisitos de segurança, a tarefa de aplicar e implementar medidas de segurança é responsabilidade do servidor e da infraestrutura da API.
Quais são os cinco tipos de segurança de OpenAPI?
O OpenAPI 3.0 permite cinco tipos de esquemas de segurança:
- O esquema de segurança de Chave API usa um token de acesso fornecido por um cliente ao fazer chamadas de API.
- A autenticação HTTP oferece dois tipos de esquemas de autenticação. A autenticação básica usa o cabeçalho de autorização HTTP padrão. A autenticação do portador usa um token de segurança chamado de "token do portador", uma string criptográfica gerada pelo servidor em resposta a uma solicitação de login.
- O esquema de segurança de OAuth2 é um protocolo de autorização que fornece a um cliente de API acesso limitado aos dados do usuário em um servidor da Web. Este esquema de segurança de OpenAPI é usado por organizações como Facebook, Google e GitHub.
- O TLS mutual é um esquema de segurança que usa autenticação bidirecional ou mútua ou código de autorização entre servidores e clientes, em que o cliente apresenta um certificado confiável para solicitações de API.
- O OpenID Connect é criado sobre o protocolo OAuth 2.0 e define um fluxo de entrada que permite que um aplicativo cliente autentique e obtenha informações sobre um usuário. As informações de identidade do usuário são codificadas em um token JSON Web Token (JWT) ou ID seguro.
Quais são os desafios da segurança de OpenAPI?
As organizações e as equipes de segurança que dependem exclusivamente da segurança de OpenAPI provavelmente perderão uma parte significativa dos riscos e ameaças que as APIs criam.
- A segurança de OpenAPI não pode proteger contra muitas ameaças comuns. Não é possível em um arquivo de definição OpenAPI criar políticas que impeçam ataques direcionados à lógica de API, que inclui muitas das ameaças definidas no OWASP API Security Top 10.
- As ferramentas de segurança de OpenAPI podem não reconhecer ou bloquear um invasor que faz tentativas sucessivas de ignorar a validação do esquema de segurança de OpenAPI.
- A documentação de segurança de OpenAPI pode negar o acesso a tráfego legítimo ao aplicar uma técnica de validação rigorosa que bloqueia qualquer chamada anormal de API.
- As ferramentas de segurança de OpenAPI podem permitir que muitos tipos diferentes de chamadas de API mal-intencionadas passem pela validação quando técnicas de validação soltas são usadas.
Perguntas frequentes (FAQ)
O OpenAPI inicialmente fazia parte da estrutura Swagger. Ele se tornou um projeto separado em 2016.
A Especificação OpenAPI é suportada por um grande número de líderes do setor e uma comunidade de dezenas de milhares de desenvolvedores. Esse amplo suporte do setor representa estabilidade em uma base de código substancial. O OpenAPI é amplamente reconhecido como a estrutura de código-fonte aberto mais popular para definir e criar APIs RESTful.
Por que os clientes escolhem a Akamai
A Akamai é uma empresa de cibersegurança e cloud que potencializa e protege negócios online. Nossas soluções de segurança líderes de mercado, inteligência avançada contra ameaças e equipe de operações globais oferecem defesa em profundidade para garantir a segurança de dados e aplicativos empresariais em todos os lugares. As abrangentes soluções de computação em nuvem da Akamai oferecem desempenho e acessibilidade na plataforma mais distribuída do mundo. Empresas globais confiam na Akamai para obter a confiabilidade, escala e experiência líderes do setor de que precisam para expandir seus negócios com confiança.