Partilhar via


Portal do programador da Gestão de API – perguntas frequentes

APLICA-SE A: Developer | Básico | Básico v2 | Padrão | Padrão v2 | Prémio

E se eu precisar de funcionalidades que não são suportadas no portal?

Tem as seguintes opções:

  • Para pequenas personalizações, use um widget interno para adicionar HTMLs personalizados. Atualmente, o widget de código HTML personalizado não está disponível nas camadas v2 do Gerenciamento de API.

  • Para personalizações maiores, crie e carregue um widget personalizado no portal do desenvolvedor gerenciado. Atualmente, os widgets personalizados não estão disponíveis nas camadas v2 do Gerenciamento de API.

  • Auto-hospede o portal do desenvolvedor, somente se você precisar fazer modificações no núcleo da base de código do portal do desenvolvedor.

  • Abra uma solicitação de recurso no repositório GitHub.

Saiba mais sobre como personalizar e estender a funcionalidade do portal do desenvolvedor.

Posso ter vários portais de desenvolvedor em um serviço de Gerenciamento de API?

Você pode ter um portal gerenciado e vários portais auto-hospedados. O conteúdo de todos os portais é armazenado no mesmo serviço de Gerenciamento de API, portanto, eles serão idênticos. Se quiser diferenciar a aparência e a funcionalidade dos portais, você pode hospedá-los automaticamente com seus próprios widgets personalizados que personalizam dinamicamente as páginas em tempo de execução, por exemplo, com base na URL.

O portal suporta modelos do Azure Resource Manager e/ou é compatível com o API Management DevOps Resource Kit?

N.º

O conteúdo do portal é salvo com a funcionalidade de backup/restauração no Gerenciamento de API?

N.º

Preciso habilitar a conectividade VNet adicional para as dependências do portal gerenciado?

Na maioria dos casos - não.

Se o serviço de Gerenciamento de API estiver em uma rede virtual interna, o portal do desenvolvedor só poderá ser acessado de dentro da rede. O nome do host do ponto de extremidade de gerenciamento deve ser resolvido para o VIP interno do serviço a partir da máquina que você usa para acessar a interface administrativa do portal. Verifique se o ponto de extremidade de gerenciamento está registrado no DNS. Em caso de configuração incorreta, você verá um erro: Unable to start the portal. See if settings are specified correctly in the configuration (...).

Se o seu serviço de Gerenciamento de API estiver em uma VNet interna e você estiver acessando-o por meio do Application Gateway pela Internet, certifique-se de habilitar a conectividade com o portal do desenvolvedor e os pontos de extremidade de gerenciamento do Gerenciamento de API. Talvez seja necessário desabilitar as regras do Web Application Firewall. Consulte este artigo da documentação para obter mais detalhes.

Atribuí um domínio de Gerenciamento de API personalizado e o portal publicado não funciona

Depois de atualizar o domínio, você precisa publicar novamente o portal para que as alterações entrem em vigor.

Adicionei um provedor de identidade e não consigo vê-lo no portal

Depois de configurar um provedor de identidade (por exemplo, Azure AD, Azure AD B2C), você precisa publicar novamente o portal para que as alterações entrem em vigor. Verifique se as páginas do portal do desenvolvedor incluem o widget de botões OAuth.

Eu configurei a delegação e o portal não a usa

Depois de configurar a delegação, você precisa publicar novamente o portal para que as alterações entrem em vigor.

Minhas outras alterações de configuração do Gerenciamento de API não foram propagadas no portal do desenvolvedor

A maioria das alterações de configuração (por exemplo, rede virtual, início de sessão, termos do produto) requer a republicação do portal.

Estou recebendo um erro CORS ao usar o console interativo

O console interativo faz uma solicitação de API do lado do cliente a partir do navegador. Resolva o problema do CORS adicionando uma política CORS na(s) sua(s) API(s) ou configure o portal para usar um proxy CORS. Para obter mais informações, consulte Habilitar o CORS para console interativo no portal do desenvolvedor do Gerenciamento de API.

Estou recebendo um erro CORS ao usar o widget de código HTML personalizado

Ao usar o widget de código HTML personalizado em seu ambiente, você pode ver um erro CORS ao interagir com o IFrame carregado pelo widget. Esse problema ocorre porque o IFrame é servido conteúdo de uma origem diferente do portal do desenvolvedor. Para evitar esse problema, você pode usar um widget personalizado.

De que permissões necessito para editar o portal do programador?

Se você estiver vendo o Oops. Something went wrong. Please try again later. erro ao abrir o portal no modo administrativo, talvez não tenha as permissões necessárias (RBAC do Azure).

O portal requer a permissão Microsoft.ApiManagement/service/users/token/action no escopo /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<apim-service-name>/users/1.

Você pode usar o seguinte script do PowerShell para criar uma função com a permissão necessária. Lembre-se de alterar o <subscription-id> parâmetro.

#New Portals Admin Role 
Import-Module Az 
Connect-AzAccount 
$contributorRole = Get-AzRoleDefinition "API Management Service Contributor" 
$customRole = $contributorRole 
$customRole.Id = $null
$customRole.Name = "APIM New Portal Admin" 
$customRole.Description = "This role gives the user ability to log in to the new Developer portal as administrator" 
$customRole.Actions = "Microsoft.ApiManagement/service/users/token/action" 
$customRole.IsCustom = $true 
$customRole.AssignableScopes.Clear() 
$customRole.AssignableScopes.Add('/subscriptions/<subscription-id>') 
New-AzRoleDefinition -Role $customRole 

Depois que a função for criada, ela poderá ser concedida a qualquer usuário na seção Controle de Acesso (IAM) no portal do Azure. Atribuir essa função a um usuário atribuirá a permissão no escopo do serviço. O usuário poderá gerar tokens SAS em nome de qualquer usuário no serviço. No mínimo, essa função precisa ser atribuída ao administrador do serviço. O comando PowerShell a seguir demonstra como atribuir a função a um usuário user1 no escopo mais baixo para evitar conceder permissões desnecessárias ao usuário:

New-AzRoleAssignment -SignInName "user1@contoso.com" -RoleDefinitionName "APIM New Portal Admin" -Scope "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<apim-service-name>/users/1" 

Depois que as permissões forem concedidas a um usuário, o usuário deverá sair e entrar novamente no portal do Azure para que as novas permissões entrem em vigor.

Estou vendo o Unable to start the portal. See if settings are specified correctly (...) erro

Este erro é mostrado quando uma GET chamada para https://<management-endpoint-hostname>/subscriptions/xxx/resourceGroups/xxx/providers/Microsoft.ApiManagement/service/xxx/contentTypes/document/contentItems/configuration?api-version=2018-06-01-preview falha. A chamada é emitida a partir do navegador pela interface administrativa do portal.

Se o serviço de Gerenciamento de API estiver em uma rede virtual, consulte a pergunta de conectividade da rede virtual.

A falha na chamada também pode ser causada por um certificado TLS/SSL, que é atribuído a um domínio personalizado e não é confiável pelo navegador. Como atenuação, você pode remover o domínio personalizado do ponto de extremidade de gerenciamento. O Gerenciamento de API retornará ao ponto de extremidade padrão com um certificado confiável.

Qual é o suporte do navegador para o portal?

Browser Suportado
Apple Safari Sim1
Google Chrome Sim1
Microsoft Edge Sim1
Microsoft Internet Explorer No
Mozilla Firefox Sim1

1 Suportado nas duas versões de produção mais recentes.

O desenvolvimento local do meu portal auto-hospedado não está mais funcionando

Se sua versão local do portal do desenvolvedor não puder salvar ou recuperar informações da conta de armazenamento ou da instância de Gerenciamento de API, os tokens SAS podem ter expirado. Você pode corrigir isso gerando novos tokens. Para obter instruções, consulte o tutorial para hospedar automaticamente o portal do desenvolvedor.

Como faço para desativar a inscrição no portal do desenvolvedor?

Se você não precisar da funcionalidade de inscrição habilitada por padrão no portal do desenvolvedor, poderá desativá-la com estas etapas:

  1. No portal do Azure, navegue até sua instância de Gerenciamento de API.

  2. Em Portal do desenvolvedor no menu, selecione Identidades.

  3. Exclua cada provedor de identidade que aparece na lista. Selecione cada provedor, selecione o menu de contexto (...) e selecione Excluir.

    Excluir provedores de identidade

  4. Navegue até a interface administrativa do portal do desenvolvedor.

  5. Remova os links de inscrição e os itens de navegação no conteúdo do portal. Para obter informações sobre como personalizar o conteúdo do portal, consulte Tutorial: Acessar e personalizar o portal do desenvolvedor.

  6. Modifique o conteúdo da página Inscrever-se para remover os campos usados para inserir dados de identidade, caso os usuários naveguem diretamente para ela.

    Opcionalmente, exclua a página Inscrever-se . Atualmente, você usa as APIs REST contentItem para listar e excluir esta página.

  7. Salve as alterações e publique novamente o portal.

Como posso remover o conteúdo do portal do desenvolvedor provisionado para meu serviço de Gerenciamento de API?

Forneça os parâmetros necessários no scripts.v3/cleanup.bat script no repositório GitHub do portal do desenvolvedor e execute o script

cd scripts.v3
.\cleanup.bat
cd ..

Como faço para habilitar a autenticação de logon único (SSO) no portal do desenvolvedor auto-hospedado?

Entre outros métodos de autenticação, o portal do desenvolvedor oferece suporte ao logon único (SSO). Para autenticar com esse método, você precisa fazer uma chamada para /signin-sso com o token no parâmetro query:

https://contoso.com/signin-sso?token=[user-specific token]

Gerar tokens de usuário

Você pode gerar tokens específicos do usuário (incluindo tokens de administrador) usando a operação Obter Token de Acesso Compartilhado da API REST de Gerenciamento de API.

Nota

O token deve ser codificado por URL.

Saiba mais sobre o portal do desenvolvedor:

Procurar outros recursos: