wiki:Ru:Help/Dialog/OAuthAuthorisationWizard

Version 5 (modified by ak099, 6 years ago) ( diff )

--

Перевод пока не завершён

Другие языки:

Мастер авторизации OAuth

Что такое OAuth

OAuth — это открытый протокол, обеспечивающий API для безопасной авторизации простым и стандартным методом как с персонального компьютера, так и из веб-приложений.

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

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

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

  1. Пароль к OSM не хранится в виде открытого текста в файле настроек JOSM.
  2. Ваш пароль передаётся через Интернет только один раз через защищённое соединение, в то время, как при обычной аутентификации пароль передаётся открытым текстом как часть каждого запроса из JOSM к серверу OSM.

В терминологии OAuth, пользователь JOSM авторизует (санкционирует) JOSM получать доступ к серверу OSM в интересах пользователя. Во время процесса авторизации пароль OSM не нужно вводить в диалоговом окне JOSM, если пользователь не полностью доверяет JOSM (разве что из соображений удобства см. здесь). Вместо этого, сервер OSM выпускает маркер доступа (токен), который JOSM будет предъявлять серверу OSM при отправке данных. Маркер доступа не раскрывает пароль пользователя и его можно отозвать в любое время.

Более сложный случай использования — делегирование доступа другим картографам

Более сложное использование OAuth — для делегирования доступа к вашей учетной записи в OSM другим пользователям. OAuth позволяет при необходимости предоставлять другому пользователю ограниченный доступ к вашему аккаунту.

Пример: картограф A может доверить картографу Б право скачивать его приватные GPS-треки с веб-сайта OSM. Картограф A генерирует маркер доступа OAuth и ограничивает его права до "Разрешить загружать свои GPS-треки". Затем он отправляет по электронной почте свой маркер картографу Б. Тот вводит маркер доступа в JOSM и после этого получает право скачивать приватные треки картографа A с сервера OSM. Но он не может отправлять данные от имени A и не знает его пароль к OSM. В любое время A может отозвать (аннулировать) маркер доступа, выпущенный для Б.

Мастер авторизации OAuth

Мастер авторизации Oauth расположен в секции Параметры соединения настроек JOSM.

Что означает аутентификация/авторизация?

Когда вы отправляете геоданные на сервер OSM, вы сообщаете серверу, кто вы такой. Сервер OSM идентифицирует каждого присылающего данные картографа, запрашивая его имя пользователя OSM. Затем серверу OSM необходимо аутентифицировать его личность, т.е. надёжно определить — тот ли он, за кого себя выдаёт. Для этой цели он запрашивает пароль в дополнение к имени пользователя. Сервер подразумевает, что тот, кто знает секретный пароль для имени пользователя xyz — это и есть xyz. Картографу, вошедшему с аутентифицированным именем пользователя и паролем, предоставляются весьма широкий круг действий на сервере. Ему авторизовано право присылать данные, создавать пакеты правок, закрывать пакеты правок, присылать GPS-треки, читать и изменять персональные настройки на сервере, приглашать других людей в качестве друзей, отправлять почтовые сообщения другим учётным записям, и т.п. В настоящее время невозможно создать учётную запись OSM с именем пользователя и паролем, права которой были бы ограниченными, например, чтобы пользователь мог только загружать GPS-треки, но не отправлять данные. Тот, кто успешно аутентифицировался, указав имя пользователя и пароль OSM, тот полностью авторизован выполнять любые доступные любому пользователю OSM действия на сервере.

Именно здесь вступает в игру OAuth: OAuth позволяет вам авторизовать кого-то ещё для выполнения ограниченного круга действий в ваших интересах. Вместо разглашения вашего имени пользователя и пароля OSM, которые бы позволили выполнять их получателю любые действия на сервер OSM, вы просто выдаёте ему «билет», на котором перечислены предоставляемые права. Этот «билет» и называется маркером доступа. К маркеру доступа применимы следующие ограничения:

  • маркер действителен лишь для определённого клиента (в терминологии OAuth — потребителя (consumer)), т.е. только для JOSM, а не для OpenStreetBugs
  • маркер действителен лишь для определённых операций, например, только для отправки GPS-треков, но не для отправки картографических данных
  • маркер действует лишь в течение определённого периода времени, например, только сегодня (но это пока не поддерживается сервером OSM)

В дополнение к парам имя пользователя/пароль, сервер OSM принимает также маркеры доступа OAuth для аутентификации и авторизации пользователей. Точнее, он принимает запросы подписанные этими маркерами, но эти тонкости уже выходят за пределы данной онлайн-справки.

Мастер авторизации OAuth позволяет вам получить действующий маркер доступа OAuth, указав своё имя пользователя и пароль OSM, или же ввести и использовать маркер доступа, предоставленный вам кем-то ещё, кто имеет имя пользователя и пароль OSM.

Полностью автоматический процесс авторизации

Самый простой способ получения маркера доступа — позволить JOSM автоматически получить его с сервера OSM.

  1. Шаг 1/3 - откройте диалоговое окно настроек

Щёлкните на кнопке Открыть диалог настроек в панели инструментов. Выберите вкладку Параметры соединения.

  1. Шаг 2/3 - получите маркер доступа

Введите своё имя пользователя и пароль OSM и нажмите Авторизоваться.

updated screenshot

  1. Step 3/3 - примите маркер доступа

JOSM покажет полученный маркер доступа.

  • Снимите флажок «Сохранить маркер доступа в настройках», если не хотите сохранять его в настройках JOSM. Если маркер доступа не сохранён, он будет утерян при закрытии JOSM. При следующем запуске JOSM вам придётся получать новый маркер доступа.
  • Нажмите Тест маркера доступа", чтобы проверить маркер
  • Нажмите Принять маркер доступа, чтобы принять его.

Restricting the granted privileges

When JOSM fully-automatically requests and authorises an Access Token, it grants it five privileges:

  • the right to upload data to the OSM server
  • the right to upload GPS traces to the OSM server
  • the right to download private GPS traces from the OSM server
  • the right to read the preferences stored on the OSM server
  • the right to write preferences stored on the OSM server

These are the default settings. If you want to restrict the granted privileges:

  1. Click the tab Granted rights
  2. Deselect each privilege which should not be granted to the requested Access Token

Advanced OAuth parameters

When JOSM fully-automatically requests and authorises an Access Token, it uses default values for the OAuth parameters. Advanced users may want to change these parameters

  • in order to use a different Consumer Token (consisting of a Consumer Key and a Consumer Secret). This allows you to create your own Consumer Token for JOSM and then use it in JOSM.
  • in order to use it on a different than the standard OSM server. For instance, this allows users to use OAuth with an OSM development server or with a local installation of the OSM server application.

In order to edit the Advanced OAuth parameters

  1. Click the tab Advanced OAuth parameters
  2. Deselect the checkbox Use default settings
  3. Enter your values for the five OAuth parameters

Semi-automatic authorisation process

You can also retrieve an Access Token semi-automatically. If you use this process you have to use both dialogs in JOSM and the OSM website launched in an external browser to create and authorise the Access Token. In contrast to the fully automatic process you never have to enter your OSM username or your OSM password into a JOSM dialog. This process is therefore suitable for a user which - for whatever reason - never wants to use their OSM password outside of the secure login page of the OSM website. The fully automatic process runs exactly the same steps that would run manually in the semi-automatic process, just without your intervention.

  1. Step 1/3 - Get the Request Token

Click on Retrieve Request Token to retrieve an OAuth Request Token.

  1. Step 2/3 - Authorise the Request Token in an external browser

JOSM now launches an external browser with the OSM website. Please login and follow the instructions. Then switch back to the OAuth Authorisation Wizard and click on Retrieve Access Token.

  1. Step 3/3 - Accept the Access Token

JOSM displays the retrieved Access Token. Click on Accept Access Token to accept it.

Advanced OAuth parameters

When JOSM semi-automatically requests and authorises an Access Token, it uses default values for the OAuth parameters. Advanced users may want to change these parameters

  • in order to use a different Consumer Token (consisting of a Consumer Key and a Consumer Secret). This allows you to create your own Consumer Token for JOSM and then use it in JOSM.
  • in order to use it on a different than the standard OSM server. For instance, this allows users to use OAuth with an OSM development server or with a local installation of the OSM server application.

In order to edit the Advanced OAuth parameters

  1. Select the checkbox Display Advanced OAuth Parameters
  2. Enter your values for the five OAuth parameters

Manual authorisation process

The manual authorisation process allows you to enter an arbitrary Access Token. You can use this process

  • to enter an Access Token you have kept in a secure place, for instance in a secure store for credentials
  • to enter an Access Token you have received from somebody else, for instance from another mapper who granted you restricted account access
  1. Step 1/1 - Enter the Access Token and accept it

Enter the Access Token and click on Accept Access Token.

Advanced OAuth parameters

Troubleshooting

  • If you are working on a university or corporate network, a firewall may prevent the OAuth authentification request.
    Please check the corresponding connection with your network engineer.

Back to Connection settings
Back to Main Help

Note: See TracWiki for help on using the wiki.