Извиняюсь за неполный перевод.
ССР полностью переделывает систему авторизации для доступа к АПИ.
Старые Full Access и Limited Access ключи будут заменены на новый, более гибкий механизм:
- User ID больше не будет использоваться в системе доступа к АПИ. Нет смысла всетить посторонним людям этот идентификатор (по сути, внутренний идентификатор вашего аккаунта).
- User ID будет заменен на уникальный keyID. В самом keyID не содержится какая-либо информация о вашем аккаунте, и количество keyID не ограничено двумя экземплярами.
- API Key будет заменен на код проверки, который будет выглядеть примерно так же, как старые Full/Limited ключи, но в него так же можно будет добавить некоторую пользователькую инфомацию для того, чтобы можно было визуально различать разные коды верификации.
В процессе чуть-чуть уменьшается путаница с названиями:
- Вместо АПИ ключей теперь есть просто ключи доступа или даже просто ключи.
- Система авторизации теперь основана на двух вещах:
-- KeyID - уникальный идентификатор ключа.
-- Verification Code - секретный код проверки, который нельзя никому показывать. Третьи лица могут догадаться, какой у вас KeyID, но без кода проверки они не смогут получить доступ к вашей информации.
- Вы можете использовать один и тот же Verification Code для разных KeyID и даже для разных аккаунтов.
- Не рекомендуется использовать пароль для входа в Еву, как код проверки.
Не рекомендуется раздавать код проверки к тем ключам, которые вы сделаете для своего личного пользования.
- Примеры:
-- старый вариант: userID = 19 & apiKey = c5SS0sxYzfb...
--- Новый вариант: keyID = 157 & verificationCode = c5SS0sxYzfbdE...
или keyID = 157 & verificationCode = m4nIh473Th353L0n9S7rin9s (более короткий код)
или keyID = 157 & verificationCode = corpCheckKeyExpireIn1Hour
- Full/Limited АПИ ключи уходят в небытие, вместо них мы дадим вам возможность настраивать список вызовов, к которым дают доступ ваши ключи.
- Дополнительно, весь доступ к АПи будет осуществляться только по HTTPS протоколу.
Далее:
- У всех ключей будет настраиваемый срок действия, минимум один час, максимум год.
- Будет разделение на корпоративные и персональные ключи, вместо нынешнего способа, при котором личные ключи любого директора заоодно являются и корпоративными.
- Будет возможность создавать ключи, привязанные к персонажу, а не аккаунту. Такой ключ не будет давать доступ к списку персонажей на аккаунте и к информации о других персонажах, кроме одного, непосредственно связанного с этим ключём.
- Количество ключей будет больше двух (максимум не известен), чтобы игроки могли сделать и несколько разных персональных ключей для личного пользования, и еще осталось место под ключи для раздачи посторонним лицам/утилитам/сервисам.
Как это всё будет настраиваться?
АПИ условно делится на три категории:
- связаннное с персонажем
- связанное с корпорацией
- не требующее авторизации (не будет затронуто всеми этими изменениями).
В настоящее время "персонаж" АПИ содержит 25 разных вызовов, и чтобы не перегружать пользователей муками выбора, что разрешить а что запретить при конфигурации ключа, вызовы АПИ будут сгруппированы в тематические группы (состав групп еще обсуждается), например:
* Group: Character sheet
** /char/CharacterSheet.xml.aspx
** /char/Standings.xml.aspx
* Group: Wallet
** /char/WalletTransactions.xml.aspx
** /char/WalletTransactions.csv.aspx
** /char/WalletJournal.xml.aspx
** /char/WalletJournal.csv.aspx
** /char/AccountBalance.xml.aspx
* Group: Science and Industry
** /char/Research.xml.aspx
** /char/IndustryJobs.xml.aspx
и так далее.
Группы не будут пересекаться в плане вызовов АПИ, но возможно некоторое пересение по данным, возвращаемым из АПИ (например, в CharacterSheet есть информация о содержимом кошелька). ССР ожидает, что игроки примут участие в обсеждении того, какая гранулярность настройки и какая группировка вызовов им нужна.
Новая система ключей будет управляться и настраиваться через Eve Gate. Процесс создания нового ключа будет выглядеть примерно так:
- заходите в Еве Гейт на нужный аккаут/персонаж.
- переходите на страницу управления ключами.
- жмете "создать новый ключ"
- даётё ключу имя, чтобы отличать его от других ключей.
- выбираете срок действия ключа, по умолчанию 6 месяцев.
- выбираете тип ключа: корпоративный (если у вас есть роль директора), на весь аккаунт, на одного персонажа.
- указываете группы АПИ вызовов, которые будут доступны посредством этого ключа.
- создаете код верификации (можно будет либо указать свой текст, либо сгенерировать случайную строку).
Можно будет редактировать существующие ключи и менять любые характеристики, кроме непосредственно названия ключа (KeyID). Можно будет удалять ключи.
Когда произойдут эти изменения?
Как только ССР будет удовлетворено резульататми внутреннего тестирования, изменения выкатят на тестовый АПИ сервер, связаный с Сингулярити.
Конкретных сроков по вводу новой системы на тесте и тем более по вводу системы на транке не указанно.
После того, как новая система будет активирована на Транквилити, некоторое время будут параллельно работать и старая и новая системы доступа к АПИ, чтобы дать всем разработчким дополнительное время на адаптацию своих приложений. Старые (Char ID + Full/Limited) ключи не будут автоматически переводиться на новую систему - придётся в обязательно порядке создавать новые KeyID с нуля.