Безопасный доступ к порталу разработчика "Управление API"
ОБЛАСТЬ ПРИМЕНЕНИЯ: Разработчик | Базовый | Базовая версия 2 | Стандартный | Standard v2 | Премиум
Управление API имеет полностью настраиваемый, автономный, управляемый портал разработчика, который можно использовать внешне (или внутри), чтобы пользователи разработчиков могли обнаруживать и взаимодействовать с API, опубликованными через Управление API. На портале разработчика имеется несколько параметров для упрощения безопасной регистрации и входа пользователей.
Примечание.
По умолчанию портал разработчика включает анонимный доступ. Это означает, что любой пользователь может просматривать портал и содержимое, например API без входа, хотя такие функции, как использование тестовой консоли, ограничены. Вы можете включить параметр, требующий входа пользователей для просмотра портала разработчика. В меню портал Azure в левом меню экземпляра Управление API на портале разработчика выберите удостоверения> Параметры. В разделе "Анонимные пользователи" выберите "Перенаправить анонимных пользователей" на страницу входа.
Варианты проверки подлинности
Внешние пользователи — предпочтительный вариант, когда портал разработчика используется извне, — включить управление доступом "бизнес-потребитель" через Azure Active Directory B2C (Azure AD B2C).
- Azure AD B2C предоставляет возможность использовать собственные учетные записи Azure AD B2C: пользователи регистрируются в Azure AD B2C и используют это удостоверение для доступа к порталу разработчика.
- Azure AD B2C также удобно использовать, если пользователи должны получить доступ к порталу разработчика с помощью существующих учетных записей социальных сетей или федеративных учетных записей организации.
- Azure AD B2C предоставляет множество функций для улучшения процесса регистрации и входа пользователей, включая условный доступ и многофакторную проверку подлинности.
Инструкции по включению проверки подлинности Azure AD B2C на портале разработчика см. в статье Как авторизовать учетные записи разработчиков с помощью Azure Active Directory B2C в службе управления API Azure.
Внутренние пользователи — предпочтительный вариант, когда портал разработчика используется внутренне, — использовать корпоративный идентификатор Microsoft Entra. Идентификатор Microsoft Entra предоставляет простой единый вход (SSO) для корпоративных пользователей, которым требуется доступ и обнаружение API через портал разработчика.
Инструкции по включению проверки подлинности Microsoft Entra на портале разработчика см. в статье "Как авторизовать учетные записи разработчика с помощью идентификатора Microsoft Entra в Azure Управление API".
Обычная проверка подлинности. По умолчанию используется встроенный поставщик имени пользователя и пароля портала разработчика, который позволяет разработчикам регистрироваться непосредственно в Управление API и выполнять вход с помощью учетных записей пользователей Управление API. Регистрация пользователя в этом случае защищена службой CAPTCHA.
Консоль тестирования портала разработчика
Помимо настройки регистрации и входа для пользователей разработчиков, на портале разработчика есть тестовая консоль, в которой разработчики могут отправлять тестовые запросы через службу Управление API на серверный API. Этот тестовый объект также существует для участвующих пользователей службы Управление API, которые управляют службой с помощью портала Azure.
Если API, предоставляемый через Azure Управление API, защищен с помощью OAuth 2.0, то есть вызывающее приложение (носитель) необходимо получить и передать действительный маркер доступа. Вы можете настроить Управление API для создания допустимого маркера от имени пользователя тестовой консоли портал Azure или портала разработчика. Дополнительные сведения см. в статье "Авторизация тестовой консоли портала разработчика", настроив авторизацию пользователя OAuth 2.0.
Чтобы включить тестовую консоль для получения допустимого маркера OAuth 2.0 для тестирования API:
Добавьте в экземпляр сервер авторизации пользователей OAuth 2.0. Вы можете использовать любой поставщик OAuth 2.0, включая идентификатор Microsoft Entra, Azure AD B2C или сторонний поставщик удостоверений.
Затем настройте API с параметрами для этого сервера авторизации. На портале настройте авторизацию OAuth 2.0 на Параметры странице >безопасности> пользователя API.
Эта конфигурация OAuth 2.0 для тестирования API не зависит от конфигурации, необходимой для доступа пользователей к порталу разработчика. Однако поставщик удостоверений и пользователь могут совпадать. Например, приложению интрасети может потребоваться доступ пользователя к порталу разработчика с помощью единого входа с корпоративным удостоверением. Это же корпоративное удостоверение может получить маркер через тестовую консоль для вызываемой серверной службы с тем же контекстом пользователя.
Сценарии
В разных сценариях применяются разные варианты проверки подлинности и авторизации. В следующих разделах рассматриваются высокоуровневые конфигурации для трех примеров сценариев. Дополнительные шаги необходимы для полной защиты и настройки API, предоставляемых через Управление API. Однако в данных сценариях намеренно описываются минимальные конфигурации, рекомендуемые в каждом случае, чтобы обеспечить необходимую проверку подлинности и авторизацию.
Сценарий 1. API интрасети и приложения
- Участник из группы по работе со службой Управление API и разработчик серверного API хочет опубликовать API, защищенный с помощью OAuth 2.0.
- API будет использоваться классическими приложениями, пользователи которых войдите с помощью единого входа с помощью идентификатора Microsoft Entra.
- Разработчики классических приложений также должны обнаруживать и тестировать API с помощью портала разработчиков службы Управление API.
Основные параметры конфигурации:
Настройка | Справочные материалы |
---|---|
Авторизация пользователей разработчика на портале разработчика Управление API с помощью корпоративных удостоверений и идентификатора Microsoft Entra. | Авторизация учетных записей разработчиков через Microsoft Entra ID в службе управления Azure API |
Настройте тестовую консоль на портале разработчика, чтобы получить действительный токен OAuth 2.0 для разработчиков классических приложений и позволить им использовать серверный API. Ту же конфигурацию можно использовать для тестовой консоли на портале Azure, которая доступна для участников и разработчиков серверной части службы Управление API. Маркер можно использовать в сочетании с ключом подписки службы Управление API. |
Авторизация тестовой консоли портала разработчика путем настройки авторизации пользователя с помощью OAuth 2.0 Подписки в службе управления API Azure |
Проверьте токен OAuth 2.0 и утверждения при вызове API через службу Управление API с помощью маркера доступа. | Проверка политики JWT |
Выполните еще одну операцию в рамках данного сценария, переместив службу Управление API в периметр сети и контролируя входящий трафик через обратный прокси-сервер. Эталонную архитектуру см. в разделе Защита API с помощью Шлюза приложений и службы Управление API.
Сценарий 2. Внешний API, партнерское приложение
- Участник службы Управление API и разработчик серверного API хочет получить быстрое подтверждение концепции для предоставления устаревшего API через службу Управление API Azure. API через службу Управление API будет доступен извне (через Интернет).
- API использует проверку подлинности сертификата клиента и будет использоваться новым общедоступным одностраничным приложением (SPA), разработанным партнером.
- Spa использует OAuth 2.0 с openID Подключение (OIDC).
- Разработчики приложений будут получать доступ к API в тестовой среде через портал разработчика, используя тестовую конечную точку серверной части для ускорения разработки внешнего интерфейса.
Основные параметры конфигурации:
Настройка | Справочные материалы |
---|---|
Настройте внешний доступ разработчика к порталу разработчика с помощью проверки подлинности по умолчанию имени пользователя и пароля. Разработчики также могут быть приглашены на портал разработчиков. |
Настройка пользователей портала разработчика для проверки подлинности с использованием имен пользователей и паролей Управление учетными записями пользователей в службе управления API Azure |
Проверьте токен OAuth 2.0 и утверждения, когда SPA вызывает Управление API с помощью маркера доступа. В этом случае аудитория — служба Управление API. | Проверка политики JWT |
Настройте службу Управление API для использования проверки подлинности на основе сертификата клиента в серверной части. | Защита служб серверной части с помощью проверки подлинности сертификата клиента в Azure Управление API |
Вернитесь к этому сценарию с помощью портала разработчика с авторизацией Microsoft Entra и совместной работой Microsoft Entra B2B, чтобы партнеры по доставке могли более тесно сотрудничать. Можно также делегировать доступ к службе Управление API через RBAC в среде разработки или тестирования и включить единый вход на портал разработчика с помощью собственных корпоративных учетных данных.
Сценарий 3. Внешний API, SaaS, открытый для общего доступа
Участник службы Управление API и разработчик серверного API пишет несколько новых API, которые будут доступны разработчикам сообщества.
API-интерфейсы будут общедоступными, при этом полный набор функций будет предоставляться в платной версии, защищенной с помощью OAuth 2.0. После приобретения лицензии разработчику будут предоставлены собственные учетные данные клиента и ключ подписки, действительный для использования в рабочей среде.
Внешние разработчики сообщества будут обнаруживать интерфейсы API с помощью портала разработчика. Разработчики будут регистрироваться и входить на портал разработчиков с помощью учетных записей социальных сетей.
Заинтересованные пользователи портала разработчиков с ключом тестовой подписки могут изучить функциональные возможности API в тестовом контексте без необходимости приобретать лицензию. Тестовая консоль портала разработчика представляет вызывающее приложение и создает маркер доступа по умолчанию для серверного API.
Внимание
При использовании потока учетных данных клиента с тестовой консолью портала разработчика необходимо проявлять повышенную осторожность. См. раздел Вопросы безопасности.
Основные параметры конфигурации:
Настройка | Справочные материалы |
---|---|
Настройте продукты в службе Управление API Azure, представляющие различные API, предоставляемые разработчикам сообщества. Настройте подписки, чтобы разработчики могли использовать интерфейсы API. |
Руководство по создавать и публиковать продукт; Подписки в службе управления API Azure |
Настройте доступ разработчика сообщества к порталу разработчиков с помощью Azure AD B2C. Затем можно настроить Azure AD B2C для работы с одним или несколькими нижестоящими поставщиками удостоверений социальных сетей. | Как авторизовать учетные записи разработчиков с помощью Azure Active Directory B2C в службе управления API Azure |
Настройте тестовую консоль на портале разработчика, чтобы получить действительный маркер OAuth 2.0 для серверного API с помощью потока учетных данных клиента. | Авторизация тестовой консоли портала разработчика путем настройки авторизации пользователя с помощью OAuth 2.0 Настройте шаги конфигурации, описанные в этой статье, чтобы использовать поток предоставления учетных данных клиента вместо потока предоставления кода авторизации. |
Перейдите к следующему шагу, делегировав регистрацию пользователя или подписку на продукт и расширив процесс на основе собственной логики.
Следующие шаги
- Узнайте подробнее о проверке подлинности и авторизации на платформе удостоверений Майкрософт.
- Узнайте, как устранить угрозы безопасности OWASP API с помощью службы Управления API.