PublicClientApplication class
Этот класс используется для получения маркеров для общедоступных клиентских приложений (классических, мобильных устройств). Общедоступные клиентские приложения не являются доверенными для безопасного хранения секретов приложений и поэтому могут запрашивать только маркеры в имени пользователя.
- Extends
Конструкторы
| Public |
Важные атрибуты в объекте Configuration для проверки подлинности:
Органы AAD имеют форму
Azure центры B2C имеют форму https://{instance}/{tenant}/{policy}. Каждая политика считается собственной властью. Во время создания клиентского приложения необходимо задать все известные функцииAuthorities. Центры ADFS представляют собой форму https://{instance}/adfs. |
Методы
| acquire |
Получает маркер от центра с помощью потока кода устройства OAuth2.0. Этот поток предназначен для устройств, которые не имеют доступа к браузеру или имеют ограничения ввода. Сервер авторизации выдает объект DeviceCode с кодом проверки, кодом конечного пользователя и универсальным кодом проверки пользователя. Объект DeviceCode предоставляется с помощью обратного вызова, а конечный пользователь должен использовать другое устройство для перехода к URI проверки для ввода учетных данных. Так как клиент не может получать входящие запросы, он повторно опрашивает сервер авторизации до тех пор, пока конечный пользователь не завершит ввод учетных данных. |
| acquire |
Получает маркер в интерактивном режиме через браузер, запрашивая код авторизации, а затем обменивая его маркером. |
| acquire |
Возвращает маркер, полученный из кэша, или путем обмена маркером обновления для нового маркера доступа. Если брокер включен, запрос маркера будет обслуживаться брокером. |
| get |
Возвращает все кэшированные учетные записи для этого приложения. Если брокер включен, этот запрос будет обслуживаться брокером. |
| sign |
Удаляет артефакты кэша, связанные с данной учетной записью |
Наследуемые методы
| acquire |
Получает токен, обмениваясь кодом авторизации, полученным на первом шаге потока кода авторизации OAuth2.0.
|
| acquire |
Получает маркер, обмениваясь маркером обновления, предоставленным для нового набора маркеров. Этот API предоставляется только для сценариев, в которых требуется выполнить миграцию из ADAL в MSAL. В противном случае рекомендуется использовать |
| acquire |
Получает маркеры с предоставлением пароля, обмениваясь именем пользователя и паролем клиентских приложений для учетных данных Последняя политика безопасности OAuth 2.0 рекомендуется полностью запретить предоставление пароля. Дополнительные сведения об этой рекомендации см. в https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 документации и рекомендациях Microsoft:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword |
| clear |
Очистите кэш |
| get |
Создает URL-адрес запроса авторизации, позволяя пользователю вводить учетные данные и давать согласие приложению. URL-адрес предназначен для конечной точки /authorize центра, настроенного в объекте приложения. После ввода учетными данными и согласия пользователя центр отправит ответ на URI перенаправления, отправленный в запросе, и должен содержать код авторизации, который затем можно использовать для получения маркеров с помощью |
| get |
Возвращает экземпляр средства ведения журнала |
| get |
Возвращает кэш маркеров для приложения. |
| set |
Заменяет набор средств ведения журнала по умолчанию в конфигурациях новым средство ведения журнала новыми конфигурациями. |
Сведения о конструкторе
PublicClientApplication(Configuration)
Важные атрибуты в объекте Configuration для проверки подлинности:
- clientID: идентификатор приложения приложения. Вы можете получить его, зарегистрируя приложение на портале регистрации приложений.
- центр: URL-адрес центра для приложения.
Органы AAD имеют форму https://login.microsoftonline.com/{Enter_the_Tenant_Info_Here}.
- Если приложение поддерживает учетные записи в одном каталоге организации, замените значение "Enter_the_Tenant_Info_Here" именем идентификатора клиента или клиента (например, contoso.microsoft.com).
- Если приложение поддерживает учетные записи в любом каталоге организации, замените значение "Enter_the_Tenant_Info_Here" организациями.
- Если приложение поддерживает учетные записи в любом каталоге организации и личных учетных записях Microsoft, замените значение "Enter_the_Tenant_Info_Here" общим значением.
- Чтобы ограничить поддержку только личными учетными записями Microsoft, замените значение "Enter_the_Tenant_Info_Here" потребителями.
Azure центры B2C имеют форму https://{instance}/{tenant}/{policy}. Каждая политика считается собственной властью. Во время создания клиентского приложения необходимо задать все известные функцииAuthorities.
Центры ADFS представляют собой форму https://{instance}/adfs.
new PublicClientApplication(configuration: Configuration)
Параметры
- configuration
- Configuration
Сведения о методе
acquireTokenByDeviceCode(DeviceCodeRequest)
Получает маркер от центра с помощью потока кода устройства OAuth2.0. Этот поток предназначен для устройств, которые не имеют доступа к браузеру или имеют ограничения ввода. Сервер авторизации выдает объект DeviceCode с кодом проверки, кодом конечного пользователя и универсальным кодом проверки пользователя. Объект DeviceCode предоставляется с помощью обратного вызова, а конечный пользователь должен использовать другое устройство для перехода к URI проверки для ввода учетных данных. Так как клиент не может получать входящие запросы, он повторно опрашивает сервер авторизации до тех пор, пока конечный пользователь не завершит ввод учетных данных.
function acquireTokenByDeviceCode(request: DeviceCodeRequest): Promise<null | AuthenticationResult>
Параметры
- request
- DeviceCodeRequest
Возвращаемое значение
Promise<null | AuthenticationResult>
acquireTokenInteractive(InteractiveRequest)
Получает маркер в интерактивном режиме через браузер, запрашивая код авторизации, а затем обменивая его маркером.
function acquireTokenInteractive(request: InteractiveRequest): Promise<AuthenticationResult>
Параметры
- request
- InteractiveRequest
Возвращаемое значение
Promise<AuthenticationResult>
acquireTokenSilent(SilentFlowRequest)
Возвращает маркер, полученный из кэша, или путем обмена маркером обновления для нового маркера доступа. Если брокер включен, запрос маркера будет обслуживаться брокером.
function acquireTokenSilent(request: SilentFlowRequest): Promise<AuthenticationResult>
Параметры
- request
- SilentFlowRequest
разработчик предоставил SilentFlowRequest
Возвращаемое значение
Promise<AuthenticationResult>
getAllAccounts()
Возвращает все кэшированные учетные записи для этого приложения. Если брокер включен, этот запрос будет обслуживаться брокером.
function getAllAccounts(): Promise<AccountInfo[]>
Возвращаемое значение
Promise<AccountInfo[]>
signOut(SignOutRequest)
Удаляет артефакты кэша, связанные с данной учетной записью
function signOut(request: SignOutRequest): Promise<void>
Параметры
- request
- SignOutRequest
разработчик предоставил SignOutRequest
Возвращаемое значение
Promise<void>
Сведения о наследуемом методе
acquireTokenByCode(AuthorizationCodeRequest, AuthorizationCodePayload)
Получает токен, обмениваясь кодом авторизации, полученным на первом шаге потока кода авторизации OAuth2.0.
getAuthCodeUrl(AuthorizationCodeUrlRequest) можно использовать для создания URL-адреса для первого шага потока кода авторизации OAuth2.0. Убедитесь, что значения перенаправления и области в AuthorizationCodeUrlRequest и AuthorizationCodeRequest совпадают.
function acquireTokenByCode(request: AuthorizationCodeRequest, authCodePayLoad?: AuthorizationCodePayload): Promise<AuthenticationResult>
Параметры
- request
- AuthorizationCodeRequest
- authCodePayLoad
- AuthorizationCodePayload
Возвращаемое значение
Promise<AuthenticationResult>
Наследуется отClientApplication.acquireTokenByCode
acquireTokenByRefreshToken(RefreshTokenRequest)
Получает маркер, обмениваясь маркером обновления, предоставленным для нового набора маркеров.
Этот API предоставляется только для сценариев, в которых требуется выполнить миграцию из ADAL в MSAL. В противном случае рекомендуется использовать acquireTokenSilent() для автоматических сценариев. При использовании acquireTokenSilent()MSAL будет обрабатывать кэширование и обновление маркеров автоматически.
function acquireTokenByRefreshToken(request: RefreshTokenRequest): Promise<null | AuthenticationResult>
Параметры
- request
- RefreshTokenRequest
Возвращаемое значение
Promise<null | AuthenticationResult>
Наследуется отClientApplication.acquireTokenByRefreshToken
acquireTokenByUsernamePassword(UsernamePasswordRequest)
Предупреждение
Теперь этот API является нерекомендуемым.
- Use a more secure flow instead
Получает маркеры с предоставлением пароля, обмениваясь именем пользователя и паролем клиентских приложений для учетных данных
Последняя политика безопасности OAuth 2.0 рекомендуется полностью запретить предоставление пароля. Дополнительные сведения об этой рекомендации см. в https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13#section-3.4 документации и рекомендациях Microsoft:https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-authentication-flows#usernamepassword
function acquireTokenByUsernamePassword(request: UsernamePasswordRequest): Promise<null | AuthenticationResult>
Параметры
- request
- UsernamePasswordRequest
UsenamePasswordRequest
Возвращаемое значение
Promise<null | AuthenticationResult>
Наследуется отClientApplication.acquireTokenByUsernamePassword
clearCache()
getAuthCodeUrl(AuthorizationUrlRequest)
Создает URL-адрес запроса авторизации, позволяя пользователю вводить учетные данные и давать согласие приложению. URL-адрес предназначен для конечной точки /authorize центра, настроенного в объекте приложения.
После ввода учетными данными и согласия пользователя центр отправит ответ на URI перенаправления, отправленный в запросе, и должен содержать код авторизации, который затем можно использовать для получения маркеров с помощью acquireTokenByCode(AuthorizationCodeRequest).
function getAuthCodeUrl(request: AuthorizationUrlRequest): Promise<string>
Параметры
- request
- AuthorizationUrlRequest
Возвращаемое значение
Promise<string>
Наследуется отClientApplication.getAuthCodeUrl
getLogger()
Возвращает экземпляр средства ведения журнала
function getLogger(): Logger
Возвращаемое значение
Наследуется отClientApplication.getLogger
getTokenCache()
Возвращает кэш маркеров для приложения.
function getTokenCache(): TokenCache
Возвращаемое значение
Наследуется отClientApplication.getTokenCache
setLogger(Logger)
Заменяет набор средств ведения журнала по умолчанию в конфигурациях новым средство ведения журнала новыми конфигурациями.
function setLogger(logger: Logger)
Параметры
- logger
- Logger
Экземпляр средства ведения журнала
Наследуется отClientApplication.setLogger