Esta é a documentação do Apigee Edge.
Acesse
Documentação da Apigee X. informações
Refatorado e redirecionado para Proteger uma API ao sem precisar de chaves de API.
Um desenvolvedor cria um app que faz solicitações às suas APIs para acessar os serviços de back-end. Para controlar o acesso às APIs, é possível exigir que o desenvolvedor transmitir uma chave de API em cada solicitação. Se a chave estiver ausente ou for inválida, a solicitação falhará.
A publicação é o processo de disponibilizar as APIs aos desenvolvedores de apps para e consumo. As APIs de publicação podem ser amplamente definidas pelas seguintes tarefas:
- Crie produtos de API no Apigee Edge que agrupem suas APIs.
- Registrar desenvolvedores de apps no Edge. Somente um desenvolvedor de aplicativos registrado pode registrar um aplicativo.
- Os desenvolvedores registram apps no Edge para acessar produtos de API. Em resposta, o desenvolvedor recebe uma chave de API. Agora que o desenvolvedor tem uma chave de API, pode fazer solicitações para sua APIs de terceiros.
Para mais informações, consulte Introdução à publicação.
A tabela a seguir define alguns dos termos usados para registrar apps e gerar chaves:
Termo | Definição |
---|---|
Produto de API | Um pacote de proxies de API combinado com um plano de serviços que define limites de acesso a essas APIs. Os produtos de API são o mecanismo central usado pelo Apigee Edge para autorização e controle de acesso às APIs. |
Desenvolvedor | O consumidor de API. Os desenvolvedores escrevem aplicativos que fazem solicitações às APIs. |
App | Um app do lado do cliente que um desenvolvedor registra para acessar um produto de API. O registro do com o produto de API gera a chave de API para acessar as APIs desse produto. |
Chave de API | Uma string com informações de autorização que um aplicativo do lado do cliente usa para acessar o recursos expostos pelo produto da API. A chave de API é gerada quando um app registrado associados a um produto da API. |
Pré-requisitos para este tutorial
Este tutorial pressupõe que você tenha concluído o primeiro tutorial, em que você cria uma API para acessar a API Yahoo Weather. Se você ainda não concluiu o primeiro tutorial, consulte Proteja um a API exigindo chaves de API.
Etapa 1: criar um produto de API
- Na IU de gerenciamento, clique na guia Publicar e Produtos.
- Clique em (+) Produto.
- Digite ou selecione o seguinte nos campos da caixa de diálogo "Adicionar produto":
Campo Valor Nome Produto de API sem custo financeiro Nome de exibição Produto de API sem custo financeiro Descrição Produto de API sem custo financeiro Ambiente teste Acesso Somente uso interno Tipo de aprovação da chave Automático
(a chave de API é aprovada automaticamente depois de ser gerada)Cota 10 solicitações por 1 hora
(limita o número de solicitações a 10 por hora)Escopos do OAuth permitidos deixe em branco A caixa de diálogo preenchida deve ser semelhante a esta:
- Na seção Recursos, escolha:
- Proxy da API: weatherapikey
- Revisão: 1
- Caminho do recurso: /predictrss**
Resource Path especifica os URIs de recursos permitidos pelo produto um app acessar. Neste exemplo, um app só pode acessar /forecastrss recurso no proxy weatherapikey usando este produto de API. Tente usar produto da API para acessar qualquer outro recurso no proxy weatherapiproxy ou qualquer outro proxy, é proibido.
Caracteres curinga são permitidos no Caminho do recurso. O caractere curinga "/**" indica que todos os sub-URIs estão incluídos, o que significa que um recurso no formato /forecastrss/foo/bar. O caractere curinga "/" indica que apenas URIs um nível abaixo estão incluída. Consulte Criar API produtos para saber mais.
A lista suspensa Caminho do recurso mostra todas as definidos no proxy de API especificado. O fluxo condicional de um proxy de API define lógica ou etapas de processamento, associadas a um caminho de recurso. Um produto de API controla o acesso para esses caminhos de recursos.
- Clique em Importar recurso. O caminho do recurso é adicionado, proxy de API weatherapikey é adicionado automaticamente aos proxies de API para Product.
- Clique em Salvar. O novo item é listado na página "Produtos".
Saiba mais:
Etapa 2: registrar um desenvolvedor
Para gerar uma chave de API, registre um app e associe-o a um produto de API. No entanto, não podem registrar um aplicativo sem primeiro registrar o desenvolvedor do aplicativo.
- Na IU de gerenciamento, clique na guia Publicar e Desenvolvedores.
- Clique em Desenvolvedor(+).
- Na caixa de diálogo "Novo desenvolvedor", insira os seguintes valores:
- Nome: Jane
- Sobrenome: tutorial
- Endereço de e-mail: janetutorial@example.com
- Nome de usuário: jtutorial
- Clique em Salvar. O novo desenvolvedor aparece na lista de desenvolvedores do página "Desenvolvedores".
Saiba mais:
Etapa 3: registrar o app
Agora que você tem um produto de API e um desenvolvedor, pode registrar um app com a API produto. O registro do app gera a chave de API para os produtos de API associados ao app. Depois disso, é possível distribuir a chave para que os desenvolvedores de apps possam acessar os recursos na API. produtos do app.
- Na interface da plataforma de APIs, clique na guia Publish e depois em Developer Apps.
- Clique em App do desenvolvedor(+).
- Na caixa de diálogo "Add an App", insira os seguintes valores:
- Nome de exibição: App Weather Key
- Desenvolvedor: Jane Tutorial (janetutorial@example.com)
- Callback URL: deixe em branco
- Associe o app a um produto:
- Na seção Produtos, clique em + Produto.
- Selecione Produto de API sem custo financeiro.
- Clique no ícone de marca de seleção para aceitar as alterações.
- Clique em Salvar. O novo app aparece na lista da página "Desenvolvedor" página "Apps".
- Selecione App Weather Key. na lista de apps. A página de detalhes do app será aberta.
- Porque você selecionou Tipo de aprovação da chave: automática quando criou a API a chave de API será aprovada de forma automática e poderá ser visualizada imediatamente. Se você tivesse estiver selecionado Approval Type: Manual, você precisa clicar em Aprovar na coluna "Ações" para que o produto sem custo financeiro de API aprove a API. key.)
- Na seção "Produtos", ao lado da entrada Produto de API sem custo financeiro, clique em
Mostrar em Consumer Key e Consumer Secret
para exibir as chaves geradas.
A chave do cliente é outro nome para a chave de API e é a única chave de que um aplicativo precisa acessar o recurso prediction por meio do seu proxy de API . O segredo do cliente é necessário (junto com a chave do cliente) nos proteger uma API com o OAuth 2.0; Consulte, por exemplo, OAuth 2.0: Como configurar um novo proxy de API
Saiba mais:
Etapa 4: usar a chave de API em uma solicitação
Para garantir que a política VerifyAPIKey esteja funcionando corretamente, é necessário testá-la criando uma chamada para o proxy de API com uma chave de API válida. Você pode solicitar o proxy de API em um navegador, no Página de trace do proxy de API, no console da Apigee ou usando cURL. O URL a ser solicitado está no o formulário:
http://{org-name}-test.apigee.net/v1/weatherapikey/forecastrss?w=12797282&apikey=IEYRtW2cb7A5Gs54A1wKElECBL65GVls
Substitua o nome da sua organização da Apigee por {org-name} e pelo valor correto de apikey.
Procure o seguinte conteúdo na resposta:
<rss xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" version="2.0"> <channel> <title>Yahoo! Weather - Palo Alto, CA</title> <link>http://us.rd.yahoo.com/dailynews/rss/weather/Palo_Alto__CA/*http://weather.yahoo.com/forecast/USCA1093_f.html</link> <description>Yahoo! Weather for Palo Alto, CA</description> <language>en-us</language>
Se você omitir a chave de API da solicitação ou especificar um uma chave-valor inválida, você receberá uma resposta de erro no formulário:
{"fault":{"faultstring":"Failed to resolve API Key variable null","detail":{"errorcode":"steps.oauth.v2.FailedToResolveAPIKey"}}}
Etapa 5: qual é o próximo passo?
Agora que você fez uma solicitação à API usando um parâmetro de consulta para transmitir a chave de API, modifique a API para passar a chave como cabeçalho.
Prossiga para Proteger uma API ao exigir chaves de API.