Я реализовал GAM (внешняя аутентификация) для моего проекта SmartDevices, который использует «Динамический URL» (в GeneXus).Требование аутентификации: N UserNames - 1 ExternalID
Я только что получил новое требование: - В среде по умолчанию (демонстрационная версия) приложение должно принять ЛЮБОЕ имя пользователя/пароль и присвоить ему внешний идентификатор «200» (этот номер будет использоваться в приложении для извлечения данных для учетной записи DEMO).
В моей демонстрационной среде, используя GamHome, я изменил «внешний веб-сервис», чтобы всегда возвращать «1» (пользователь и пароль в порядке) и «200» (внешний идентификатор). Когда я запускаю приложение и пытаюсь выполнить аутентификацию с любым случайным именем пользователя, я получаю сообщение: «Внешняя идентификация пользователя уже существует» (что-то вроде этого).
Можно ли мне изменить WebService аутентификации для того, чтобы либо:
- Разрешить множественные Usernames разделять один и тот же внешний идентификатор?
- Замените имя пользователя, предоставленное методом LoginExternal (устройство), чтобы обеспечить уникальное «ID-Username»?
- Отмените процедуру входа в систему и создайте новую, автоматическую, с фиксированным пользователем?
Любые другие предложения?
(Я бы хотел изменить службы, чтобы избежать изменения приложений, если это возможно).
(Это требование только для нашей демонстрационной среды - в среде Live, каждый пользователь будет иметь свой собственный идентификатор и будет надлежащим образом аутентифицирован).
Вход с фиксированным пользователем будет решением. Но для этого требуется, чтобы я изменил клиентское событие в приложении, верно? (if & ServerURL = 'DemoEnvir' & User = 'DemoUser') – Jaime
Есть ли что-нибудь, что я могу сделать в своей службе аутентификации WebService для этого, не меняя самого приложения? – Jaime
При использовании External Authentication 2.0 http://wiki.genexus.com/commwiki/servlet/hwikibypageid?21555 вы можете добавить дополнительные параметры, чтобы служба затем идентифицировала пользователя как Демо-пользователя. –