web account manager что это

Web account manager что это

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Экономия постоянных
расходов

Получение реальной
статистики

Обеспечиваем конкурентный доступ к веб-сервисам, при котором аккаунт не закрепляется за конкретным пользователем. Пользователь для авторизации в веб-сервисе использует любой свободный аккаунт.

За счет такого подхода существенно сокращается количество требуемых платных аккаунтов, не нарушая при этом лицензионной политики сервис провайдера.

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Было:
• Проблемы доступа к веб-сервису сотрудников из-за нехватки аккаунтов;
• Чтобы получить доступ нужно было искать свободный аккаунт, перебирая огромный список вручную или звонить коллегам;
• Расходы на подписку постоянно растут, но статистики использования аккаунтов никакой нет;
• Ручное администрирования доступа с помощью файлов и электронной почты.

Стало:
• Количество необходимых аккаунтов сократилось почти в 2 раза (экономия несколько млн. руб. в год);
• Чтобы воспользоваться веб-сервисом достаточно кликнуть на расширение, пользователь гарантировано получит доступ;
• Количество пользователей с доступом к веб-сервису увеличилось, более чем в 5 раз;
• Появилась актуальная статистика, проведена инвентаризация всех аккаунтов;
• Администрирование доступа полностью автоматизировано.

Было:
• Много различных веб-сервисов, по 1-2 аккаунта на всех сотрудников;
• Чтобы получить доступ нужно было узнать кто сейчас использует веб-сервис;
• Статистики по тому как часто сотрудники обращаются к веб-сервисам нет;
• Пароли аккаунтов к облачной CRM системе были известны сотрудникам, существовал высокий риск утечки конфиденциальных данных.

Стало:
• Чтобы воспользоваться веб-сервисом достаточно кликнуть на расширение, где сразу видно кто сейчас использует аккаунт (ФИО и телефон);
• Упростилось администрирование всех веб-сервисов;
• Появилась актуальная статистика, в т.ч. по отказам пользователям в доступе;
• Для части сотрудников доступ к облачной CRM системе возможен только из офиса компании.

Источник

Enterprise WebAccountManager

Система обеспечивает централизованное управление доступом к внешним веб-сервисам, собирает статистику использования сотрудниками веб-сервисов, надежно защищает пароли аккаунтов от пользователей, а за счет конкурентного использования имеющихся платных аккаунтов, позволяет снижать расходы на подписки и лицензии на 25-45%.

Похожие на Enterprise WebAccountManager

Описание Enterprise WebAccountManager

Система Enterprise WebAccountManager состоит из сервера приложений, расширения для браузера (Internet Explorer, Google Chrome, Opera, Firefox, Yandex.Browser) и программы для Windows. Все компоненты системы устанавливаются внутри компании. Разворачивание системы максимально автоматизировано и происходит за 10 минут.

Система поддерживает работу со следующими веб-сервисами: СПАРК-Интерфакс, СПАРК-Маркетинг, СКАН-Интерфакс, Casebook, FIRA, FACTIVA, Thomson Reuters, Seldon, Гарант, КонсультантПлюс, Интегрум, Медиалогия, ТАСС-Бизнес, Контур.Фокус, Коммерсантъ Картотека, СКРИН, Elsevier ScienceDirect, Elsevier Scopus, Springer, Cbonds, Crunchbase, AmazingHiring, Bloomberg, Коммерсант, Ведомости, Новости Интерфакса, eIFRS, SalesForce, Adobe Cloud, LF Академия, Система ЮРИСТ, Mergermarket, Practical Law Thomson Reuters, Contract Express, Zendesk, Jira Service Desk и др.

Как правило, все компании, которые используют внешние платные веб-сервисы сталкиваются с проблемами:

С помощью этого решения у сотрудников в любое время будет доступ к веб-сервисам без ожиданий и поиска свободных аккаунтов.

Источник

Диспетчер учетных веб-записей

В этой статье описан метод использования AccountsSettingsPane для подключения приложения универсальной платформы Windows (UWP) к внешним поставщикам удостоверений, например Microsoft или Facebook, с помощью API диспетчера учетных веб-записей для Windows 10. Вы узнаете, как запросить разрешение пользователя на использование учетной записи Майкрософт, получить маркер доступа и использовать его для выполнения базовых операций (например, для получения данных профиля или отправки файлов в учетную запись OneDrive). Порядок действий при получении разрешения пользователя и доступа с помощью любого поставщика удостоверений, поддерживающего диспетчер учетных записей в Интернете, практически одинаков.

Подготовка

Сначала создайте новое пустое приложение в Visual Studio.

Затем необходимо связать приложение с Магазином для подключения к поставщикам удостоверений. Для этого щелкните проект правой кнопкой мыши, выберите магазин или опубликовать > приложение связать с магазином и следуйте инструкциям мастера.

Затем создайте простейший пользовательский интерфейс, состоящий из кнопки XAML и двух текстовых полей.

Добавьте прикрепленный к кнопке обработчик событий в выделенном коде:

И наконец, чтобы в дальнейшем не нужно было беспокоиться о проблемах со ссылками, добавьте следующие пространства имен:

Отображение области параметров учетных записей

Система предоставляет встроенный пользовательский интерфейс для управления поставщиками удостоверений и учетными записями в Интернете под названием AccountsSettingsPane. Отобразить интерфейс можно следующим образом:

При запуске приложения и нажатии кнопки входа должно отобразиться пустое окно.

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Панель пуста, поскольку система предоставляет лишь оболочку пользовательского интерфейса, — разработчику необходимо программно добавить в панель поставщиков удостоверений.

При необходимости можно использовать шоваддаккаунтасинк вместо команды » отобразить«, которая возвращает IAsyncAction, чтобы запросить состояние операции.

Регистрация AccountCommandsRequested

Для добавления команд на панель необходимо сначала зарегистрировать обработчик событий AccountCommandsRequested. Это означает, что система должна выполнить нашу логику сборки, когда пользователь выводит панель (например, нажимает на нашу кнопку XAML).

Переопределите события OnNavigatedTo и OnNavigatedFrom в коде программной части и добавьте в них следующий код.

Пользователи не очень часто взаимодействуют с учетными записями, поэтому подобная регистрация и отмена регистрации обработчика событий помогает предотвратить утечку памяти. Таким образом, настроенная вами панель находится в памяти, только когда велик шанс того, что пользователь запросит ее отображение (например, если он находится на странице параметров или входа).

Создание панели параметров учетных записей

Метод BuildPaneAsync вызывается каждый раз при отображении AccountsSettingsPane. Именно в него добавляется код для настройки команд для отображения на панели.

Начните с получения отсроченного объекта. Это сообщает системе о том, что AccountsSettingsPane следует отображать только после ее создания.

Затем получите поставщика с помощью метода WebAuthenticationCoreManager.FindAccountProviderAsync. У каждого поставщика свой URL-адрес, который можно найти в документации поставщика. для учетных записей майкрософт и Azure Active Directory это «https : //login.microsoft.com».

Обратите внимание, что мы также передаем строку «consumers» необязательному параметру authority. Это связано с тем, что Майкрософт предоставляет два различных типа проверки подлинности: учетные записи Майкрософт (MSA) для «потребителей» и Azure Active Directory (AAD) для «организаций». Значение «consumers» означает, что мы хотим использовать учетную запись Майкрософт. Если вы разрабатываете корпоративное приложение, используйте строку «organizations».

Метод GetMsaToken, который мы передавали в новый WebAccountProviderCommand, еще не существует (мы создадим его на следующем шаге). На данном этапе вы можете добавить его в виде пустого метода.

Запустите приведенный выше код. Панель должна выглядеть примерно так:

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Запрос маркера

После добавления учетной записи Майкрософт на AccountsSettingsPane необходимо обработать события, возникающие, когда пользователь выбирает учетную запись. Мы зарегистрировали метод GetMsaToken, который вызывается, когда пользователь выбирает вход с помощью учетной записи Майкрософт, поэтому мы будем запрашивать маркер здесь.

Чтобы получить маркер, используйте метод RequestTokenAsync следующим образом.

Если вы разрабатываете корпоративное приложение, то, скорее всего, захотите подключиться к экземпляру Azure Active Directory (AAD) и использовать Microsoft Graph API вместо обычных служб учетной записи Майкрософт. В этом случае используйте следующий код:

В остальной части этой статьи продолжается описание сценария с учетной записью Майкрософт, но код для AAD очень похож на этот пример. Дополнительные сведения о AAD/Graph, включая полный пример в GitHub, см. в документации Microsoft Graph.

Использование маркера

Метод RequestTokenAsync возвращает объект WebTokenRequestResult, содержащий результаты запроса. Если запрос выполнен успешно, он будет содержать маркер.

Если вы получаете ошибку при запросе маркера, убедитесь, что ваше приложение связано со Store, как описано в шаге 1. Ваше приложение не сможет получить маркер, если вы пропустили этот шаг.

После получения маркера можно использовать его для вызова API вашего поставщика. В следующем коде мы вызываем API Microsoft Live информации о пользователе, чтобы получить основную информацию о пользователе и отобразить ее в пользовательском интерфейсе. Обратите внимание, что в большинстве случаев рекомендуется хранить полученный однажды токен и использовать его в отдельном методе.

Способы вызова API REST различаются в зависимости от поставщика; сведения об использовании вашего маркера см. в документации по API поставщика.

Сохранение учетной записи для дальнейшего использования

Маркеры полезны для мгновенного получения сведений о пользователе, но как правило имеют различный срок действия. Маркеры учетной записи Майкрософт, например, действительны в течение всего нескольких часов. К счастью, повторно отображать AccountsSettingsPane каждый раз, когда истекает срок действия маркера, не требуется. Пользователю достаточно разрешить доступ вашему приложению лишь однажды, после чего вы сможете хранить сведения об учетной записи для последующего использования.

Для этого используйте класс WebAccount. Класс WebAccount возвращается тем же методом, который используется для запроса токена:

Получив экземпляр WebAccount, можно с легкостью его сохранить. В следующем примере мы используем LocalSettings. Дополнительные сведения об использовании LocalSettings и других методов сохранения данных пользователя см. в разделе Сохранение и получение параметров и данных приложения.

Затем можно использовать асинхронный метод (например, представленный ниже), чтобы попытаться получить токен в фоновом режиме с помощью сохраненного экземпляра WebAccount.

Разместите метод выше перед кодом, создающим AccountsSettingsPane. Если токен получен в фоновом режиме, отображать область нет необходимости.

Поскольку процесс получения маркера без уведомлений очень прост, необходимо использовать этот процесс для обновления маркера между сеансами, а не помещать существующий маркер в кэш (так как срок действия маркера может истечь в любой момент).

В приведенном выше примере рассматриваются только базовые случаи успеха или отказа. Ваше приложение также должно предусматривать необычные сценарии (например отмену пользователем разрешения для вашего приложения или удаление учетной записи из Windows) и корректно обрабатывать их.

Удаление сохраненной учетной записи

Если вы сохраняете учетную веб-запись, целесообразно предоставить пользователям возможность отвязать их учетную запись от вашего приложения. Таким образом, они могут эффективно выходить из приложения: сведения об учетной записи больше не будут загружаться автоматически при запуске. Для этого сначала удалите все сохраненные сведения об учетной записи и поставщике. Затем вызовите метод SignOutAsync для очистки кэша и аннулируйте все имеющиеся в приложении маркеры.

Добавление поставщиков, не поддерживающих WebAccountManager

Например, если вы хотите интегрировать проверку подлинности из службы в приложение, но эта служба не поддерживает Вебаккаунтманажер-Google + или Twitter, то вы по-прежнему можете вручную добавить этот поставщик в аккаунтссеттингспане. Для этого создайте новый объект WebAccountProvider, укажите собственное имя поставщика и значок с расширением PNG, после чего добавьте объект в список WebAccountProviderCommands. Вот код заглушки:

Данный код лишь добавляет значок в AccountsSettingsPane и при нажатии на значок запускает определенный вами метод (в данном случае — GetTwitterTokenAsync). Вам необходимо написать код, который будет обрабатывать сам процесс проверки подлинности. Дополнительные сведения см. в разделе посредник веб-проверки подлинности, который предоставляет вспомогательные методы для проверки подлинности с помощью служб RESTful.

Добавление настраиваемого заголовка

Панель параметров учетных записей можно настроить с помощью свойства HeaderText следующим образом:

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Не делайте текст заголовка слишком длинным, пусть он будет лаконичным и понятным. Если процесс входа усложнен и вам необходимо отобразить дополнительные сведения, добавьте пользовательскую ссылку на отдельную страницу.

Добавление настраиваемых ссылок

На AccountsSettingsPane можно добавлять пользовательские команды, которые отображаются в виде ссылок под списком поддерживаемых WebAccountProviders. Пользовательские команды прекрасно подходят для выполнения простых задач, связанных с учетной записью пользователя, таких как отображение политики конфиденциальности или переход на страницу поддержки пользователей, столкнувшихся с проблемами.

Ниже приведен пример:

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Теоретически команды параметров можно использовать для любых целей. Однако мы рекомендуем ограничить их использование простыми сценариями, связанными с учетными записями, такими как описанные выше.

Источник

Web Account Manager

This article describes how to use the AccountsSettingsPane to connect your Universal Windows Platform (UWP) app to external identity providers, like Microsoft or Facebook, using the Windows 10 Web Account Manager APIs. You’ll learn how to request a user’s permission to use their Microsoft account, obtain an access token, and use it to perform basic operations (like get profile data or upload files to their OneDrive account). The steps are similar for getting user permission and access with any identity provider that supports the Web Account Manager.

Get set up

First, create a new, blank app in Visual Studio.

Second, in order to connect to identity providers, you’ll need to associate your app with the Store. To do this, right click your project, choose Store/Publish > Associate app with the store, and follow the wizard’s instructions.

Third, create a very basic UI consisting of a simple XAML button and two text boxes.

And an event handler attached to your button in the code-behind:

Lastly, add the following namespaces so you don’t have to worry about any reference issues later:

Show the accounts settings pane

The system provides a built-in user interface for managing identity providers and web accounts called AccountsSettingsPane. You can show it like this:

If you run your app and click the «Log in» button, it should display an empty window.

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Optionally, you can use ShowAddAccountAsync instead of Show, which will return an IAsyncAction, to query for the status of the operation.

Register for AccountCommandsRequested

To add commands to the pane, we start by registering for the AccountCommandsRequested event handler. This tells the system to run our build logic when the user asks to see the pane (for example, clicks our XAML button).

In your code behind, override the OnNavigatedTo and OnNavigatedFrom events and add the following code to them:

Users don’t interact with accounts very often, so registering and deregistering your event handler in this fashion helps prevent memory leaks. This way, your customized pane is only in memory when there’s a high chance a user is going to ask for it (because they’re on a «settings» or «login» page, for example).

Build the account settings pane

The BuildPaneAsync method is called whenever the AccountsSettingsPane is shown. This is where we’ll put the code to customize the commands shown in the pane.

Start by obtaining a deferral. This tells the system to delay showing the AccountsSettingsPane until we’re finished building it.

Next, get a provider using the WebAuthenticationCoreManager.FindAccountProviderAsync method. The URL for the provider varies based on the provider and can be found in the provider’s documentation. For Microsoft Accounts and Azure Active Directory, it’s «https://login.microsoft.com».

Finally, add the provider to the AccountsSettingsPane by creating a new WebAccountProviderCommand like this:

The GetMsaToken method we passed to our new WebAccountProviderCommand doesn’t exist yet (we’ll build that in the next step), so feel free to add it as an empty method for now.

Run the above code and your pane should look something like this:

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Request a token

Once we have the Microsoft Account option displaying in the AccountsSettingsPane, we need to handle what happens when the user selects it. We registered our GetMsaToken method to fire when the user chooses to log in with their Microsoft Account, so we’ll obtain the token there.

To obtain a token, use the RequestTokenAsync method like this:

In this example, we pass the string «wl.basic» to the scope parameter. Scope represents the type of information you are requesting from the providing service on a specific user. Certain scopes provide access only to a user’s basic information, like name and email address, while other scopes might grant access to sensitive information such as the user’s photos or email inbox. Generally, your app should use the least permissive scope necessary to achieve its function. Service providers will provide documentation on which scopes are needed to get tokens for use with their services.

Optionally, if your app uses a login hint (to populate the user field with a default email address) or other special property related to the sign-in experience, list it in the WebTokenRequest.AppProperties property. This will cause the system to ignore the property when caching the web account, which prevents account mismatches in the cache.

If you’re developing an enterprise app, you’ll likely want to connect to an Azure Active Directory (AAD) instance and use the Microsoft Graph API instead of regular MSA services. In this scenario, use the following code instead:

The rest of this article continues describing the MSA scenario, but the code for AAD is very similar. For more info on AAD/Graph, including a full sample on GitHub, see the Microsoft Graph documentation.

Use the token

The RequestTokenAsync method returns a WebTokenRequestResult object, which contains the results of your request. If your request was successful, it will contain a token.

If you receive an error when requesting a token, make sure you’ve associated your app with the Store as described in step one. Your app won’t be able to get a token if you skipped this step.

Once you have a token, you can use it to call your provider’s API. In the code below, we’ll call the user info Microsoft Live API to obtain basic information about the user and display it in our UI. Note however that in most cases it is recommended that you store the token once obtained and then use it in a separate method.

How you call various REST APIs varies between providers; see the provider’s API documentation for information on how to use your token.

Store the account for future use

To do this, use the WebAccount class. A WebAccount is returned by the same method you used to request the token:

Once you have a WebAccount instance, you can easily store it. In the following example, we use LocalSettings. For more information on using LocalSettings and other methods to store user data, see Store and retrieve app settings and data.

Then, we can use an asynchronous method like the following to attempt to obtain a token in the background with the stored WebAccount.

Place the above method just before the code that builds the AccountsSettingsPane. If the token is obtained in the background, there is no need to show the pane.

Because obtaining a token silently is very simple, you should use this process to refresh your token between sessions rather than caching an existing token (since that token might expire at any time).

The example above only covers basic success and fail cases. Your app should also account for unusual scenarios (like a user revoking your app’s permission or removing their account from Windows, for example) and handle them gracefully.

Remove a stored account

If you persist a web account, you may want to give your users the ability to disassociate their account with your app. This way, they can effectively «log out» of the app: their account information will no longer be loaded automatically upon launch. To do this, first remove any saved account and provider information from storage. Then call SignOutAsync to clear the cache and invalidate any existing tokens your app may have.

Add providers that don’t support WebAccountManager

This only adds an icon to the AccountsSettingsPane and runs the method you specify when the icon is clicked (GetTwitterTokenAsync, in this case). You must provide the code that handles the actual authentication. For more information, see Web authentication broker, which provides helper methods for authenticating using REST services.

Add a custom header

You can customize the account settings pane using the HeaderText property, like this:

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Don’t go overboard with header text; keep it short and sweet. If your login process is complicated and you need to display more information, link the user to a separate page using a custom link.

Add custom links

You can add custom commands to the AccountsSettingsPane, which appear as links below your supported WebAccountProviders. Custom commands are great for simple tasks related to user accounts, like displaying a privacy policy or launching a support page for users having trouble.

web account manager что это. Смотреть фото web account manager что это. Смотреть картинку web account manager что это. Картинка про web account manager что это. Фото web account manager что это

Theoretically, you can use settings commands for anything. However, we suggest limiting their use to intuitive, account-related scenarios like those described above.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *