Клиентская библиотека проверки подлинности Azure Смешанная реальность для JavaScript версии 1.0.0-beta.1
Смешанная реальность службы, такие как Пространственные привязки Azure, Azure Удаленная отрисовка и другие, используют службу маркеров безопасности Смешанная реальность (STS) для проверки подлинности. Этот пакет поддерживает обмен учетными данными Смешанная реальность учетной записи на маркер доступа из службы маркеров безопасности, который можно использовать для доступа к Смешанная реальность службам.
Основные ссылки:
Начало работы
Поддерживаемые в настоящее время среды
Предварительные требования
- Подписка Azure.
- У вас должна быть учетная запись со службой azure Смешанная реальность:
- Знакомство с основными понятиями проверки подлинности и учетных данных из библиотеки удостоверений Azure.
Установите пакет @azure/mixed-reality-authentication
.
Установите клиентскую библиотеку проверки подлинности Azure Смешанная реальность для JavaScript с помощью npm
:
npm install @azure/mixed-reality-authentication
Создание и проверка подлинности MixedRealityStsClient
Чтобы создать клиентский объект для запроса маркера доступа для службы Смешанная реальность, потребуются account identifier
и ресурса account domain
службы Смешанная реальность и credential
.
службы Смешанная реальность поддерживают несколько различных форм проверки подлинности:
- Проверка подлинности с помощью ключа учетной записи
- Ключи учетной записи позволяют быстро приступить к работе с Смешанная реальность службами. Но перед развертыванием приложения в рабочей среде рекомендуется обновить приложение и включить в нем использование проверки подлинности Azure AD.
- Проверка подлинности на основе маркера Azure Active Directory (AD)
- Если вы создаете корпоративное приложение и в вашей компании в качестве системы идентификации используется Azure AD, вы можете применить в своем приложении проверку подлинности Azure AD на основе пользователей. Затем вы предоставляете доступ к учетным записям Смешанная реальность с помощью существующих Azure AD групп безопасности. Вы также можете предоставлять доступ пользователям в вашей организации напрямую.
- В противном случае рекомендуется получать маркеры Azure AD из веб-службы, поддерживающей ваше приложение. Мы рекомендуем использовать этот метод для рабочих приложений, так как он позволяет избежать внедрения учетных данных для доступа к службе Смешанная реальность в клиентском приложении.
Подробные инструкции и сведения см. здесь .
Использование проверки подлинности с помощью ключа учетной записи
На портале Azure перейдите к ресурсу службы Смешанная реальность и получите account key
.
Получив ключ учетной записи, вы можете использовать AzureKeyCredential
класс для проверки подлинности клиента следующим образом:
const { AzureKeyCredential } = require("@azure/core-auth");
const { MixedRealityStsClient } = require("@azure/mixed-reality-authentication");
const accountId = "<ACCOUNTD ID>";
const accountDomain = "<ACCOUNT_DOMAIN>";
const accountKey = "<ACCOUNT_KEY>";
const client = new MixedRealityStsClient(
accountId,
accountDomain,
new AzureKeyCredential(accountKey)
);
Примечание. Проверка подлинности с помощью ключа учетной записи не рекомендуется для рабочих приложений.
Использование учетных данных Azure Active Directory
Проверка подлинности с помощью ключа учетной записи используется в большинстве примеров, но вы также можете пройти проверку подлинности в Azure Active Directory с помощью библиотеки удостоверений Azure. Это рекомендуемый метод для рабочих приложений. Чтобы использовать поставщика DefaultAzureCredential, показанного ниже, или других поставщиков учетных данных, предоставляемых пакетом SDK для Azure, установите @azure/identity
пакет :
npm install @azure/identity
Вам также потребуется зарегистрировать новое приложение AAD и предоставить доступ к ресурсу Смешанная реальность, назначив субъекту-службе Смешанная реальность соответствующую роль.
Задайте значения идентификатора клиента, идентификатора клиента и секрета клиента приложения AAD в качестве переменных среды: AZURE_CLIENT_ID
, AZURE_TENANT_ID
, AZURE_CLIENT_SECRET
.
const { MixedRealityStsClient } = require("@azure/mixed-reality-authentication");
const { DefaultAzureCredential } = require("@azure/identity");
const client = new MixedRealityStsClient(accountId, accountDomain, new DefaultAzureCredential());
Основные понятия
MixedRealityStsClient
— MixedRealityStsClient
это клиентская библиотека, используемая для доступа к Смешанная реальность STS для получения маркера доступа.
Срок действия маркеров, полученных из Смешанная реальность STS, составляет 24 часа.
Возвращаемое значение
Возвращаемым значением для успешного вызова getToken
является GetTokenResponse
, который является значением AccessToken
из @azure/core-http.
Примеры
Получение маркера доступа
const { AzureKeyCredential } = require("@azure/core-auth");
const { MixedRealityStsClient } = require("@azure/mixed-reality-authentication");
const accountId = "<ACCOUNTD ID>";
const accountDomain = "<ACCOUNT_DOMAIN>";
const accountKey = "<ACCOUNT_KEY>";
const client = new MixedRealityStsClient(
accountId,
accountDomain,
new AzureKeyCredential(accountKey)
);
const token = await client.getToken();
Более сложные сценарии проверки подлинности см. в приведенных выше примерах проверки подлинности или в удостоверении Azure .
Использование маркера доступа в клиентской библиотеке Смешанная реальность
Некоторые Смешанная реальность клиентские библиотеки могут принимать маркер доступа вместо учетных данных. Пример:
// GetMixedRealityAccessTokenFromWebService is a hypothetical method that retrieves
// a Mixed Reality access token from a web service. The web service would use the
// MixedRealityStsClient and credentials to obtain an access token to be returned
// to the client.
const accessToken = await GetMixedRealityAccessTokenFromWebService();
const account = new SpatialAnchorsAccount(accountId, accountDomain);
const client = new SpatialAnchorsClient(account, accessToken);
Примечание. Приведенное SpatialAnchorsClient
выше использование является гипотетичным и может не отражать фактическую библиотеку. Ознакомьтесь с документацией по клиентской библиотеке, которую вы используете, чтобы определить, поддерживается ли эта библиотека и как.
Устранение неполадок
Ведение журнала
Включение ведения журнала может помочь выявить полезные сведения о сбоях. Чтобы просмотреть журнал HTTP-запросов и ответов, задайте для переменной среды AZURE_LOG_LEVEL
значение info
. Кроме того, ведение журнала можно включить во время выполнения, вызвав setLogLevel
в @azure/logger
:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Более подробные инструкции по включению журналов см. в документации по пакету @azure и средству ведения журнала.
Дальнейшие действия
Подробные примеры использования этой библиотеки см. в каталоге примеров .
Участие
На этом проекте приветствуются публикации и предложения. Для участия в большинстве процессов по разработке документации необходимо принять лицензионное соглашение участника (CLA), в котором указывается, что вы предоставляете нам права на использование ваших публикаций. Для получения подробных сведений посетите веб-страницу https://cla.microsoft.com.
При отправке запроса на включение внесенных изменений CLA-бот автоматически определит необходимость предоставления соглашения CLA и соответствующего оформления запроса на включение внесенных изменений (например, добавление метки, комментария). Просто следуйте инструкциям бота. Будет достаточно выполнить их один раз для всех репозиториев, поддерживающих соглашение CLA.
В рамках этого проекта действуют правила поведения в отношении продуктов с открытым исходным кодом Майкрософт. Дополнительные сведения см. в разделе часто задаваемых вопросов о правилах поведения или обратитесь к opencode@microsoft.com с любыми дополнительными вопросами или комментариями.
Если вы хотите вносить изменения в эту библиотеку, ознакомьтесь с руководством по внесению изменений, в котором содержатся сведения о создании и тестировании кода.
Связанные проекты
Azure SDK for JavaScript