AXForum  
Go Back   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Forgotten Your Password?
Register Forum Rules FAQ Members List Today's Posts Search Mark Forums Read

 
 
Thread Tools Search this Thread Display Modes
Old 12.05.2006, 13:15   #1  
Romb is offline
Romb
Участник
Romb's Avatar
 
79 / 22 (1) +++
Join Date: 06.01.2004
Angry Быстрая авторизация в Web + переход по сформированной ссылке
Озабочен такой проблемой. Если сначала логинишься в Web-портал Axapta, то после этого точные ссылки, типа
Code:
http://axserver/axweb/default.asp?WMFN=RL_ConfirmableInventJournalTable&WMFT=D&WPG=RLt_HomePageOnline&WTID=154&WREC=302668&WKEY=[/url][65534:302668]
работают нормально, т.е. открывается нужный пункт меню с нужными данными и т.д. Если же не залогинен, то номер не проходит, надо ввести имя/пароль, т.е. первый раз инициировать сессию, а потом уже ждать корректной обработки точных ссылок.

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

Первый пункт решился. Т.е. если обратиться на урл портала, то происходит автологин, пользователь "за кадром" логинится соответствующим его сетевому имени Web-пользователем и видит начальную страницу портала. Но если обратиться в первый раз на урл портала с точной ссылкой, то она "теряется" - метод Show() класса WebApplication использует сессию (объект WebSession), с пустым args, хотя он должен содержать распарсенные из урла точной ссылки параметры (WMFN, WKEY и т.д.).

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

Last edited by Romb; 12.05.2006 at 13:17.
Old 12.05.2006, 13:43   #2  
Romb is offline
Romb
Участник
Romb's Avatar
 
79 / 22 (1) +++
Join Date: 06.01.2004
Пока писал сообщение понял, что "ошибка" кроется в WebApplication.Logon(), там есть на 60 строчке есть редирект на переданный url (weblink) и так как он пустой, то происходит редирект на урл домашней страницы (а она конечно "чистая" без параметров в урле) и, в этом случае все параметры теряются.

Code:
webSession.redirect(redirectTo);
Logon вызывается из метода SetUser. Получается, что нужно в SetUser или ранее контролировать наличие точной ссылки и давать на вход Logon-у.

Уф... Надеюсь на правильном пути.
Old 12.05.2006, 16:31   #3  
leshy is offline
leshy
Участник
 
118 / 11 (1) +
Join Date: 23.02.2004
Location: Киев
Quote:
Originally Posted by Romb
Первый пункт решился...
А можете подробнее обьяснить как вам удалось настроить автологин в портале?
Old 15.05.2006, 04:53   #4  
Romb is offline
Romb
Участник
Romb's Avatar
 
79 / 22 (1) +++
Join Date: 06.01.2004
Там проблема в том, что в web-приложении (функция Axapta() в файле i_axaptafunctions.asp) в строках:

Code:
 
        userid = Ws.Call("SwitchAxaptaUser")
        if (Not (userid = "")) then
            password = Ws.Call("switchWebUserPassword")
            weblogin = Ws.Call("SwitchWebUser")
            ...
После того, как Axapta "поняла" с каким доменными userid пользователь пришел к IIS, weblogin приходит пустой, т.е. метод SwitchWebUser у WebSession не возвращает Web-пользователя (переменная _switchWebUser), соответствующего доменному имени.

По идее надо обновлять переменную _switchWebUser, в том же месте, где и устанавливается _switchAxaptaUser (метод WebApplication.Logon()). Но пока я сделал заплатку, она работает. Я изменил метод WebSession.SwitchWebUser().

Code:
WebLogin switchWebUser()
{
    ;

    if (_switchAxaptaUser)
        _switchWebUser = (select firstonly WebLogin from WebUser where WebUser.UserId == _switchAxaptaUser).WebLogin;

    return _switchWebUser;
}
Теперь, если WebUser находится по AxaptaUser, то web-приложение логинится под этим WebUser-ом. Иначе, в моем случае вываливается weblet WebLogin.

Да. Чтобы это все работало IIS должен использовать "Integrated Windows Authentification".

Last edited by Romb; 15.05.2006 at 05:12.
This post has been rated by: leshy (1).
Old 15.05.2006, 04:54   #5  
Romb is offline
Romb
Участник
Romb's Avatar
 
79 / 22 (1) +++
Join Date: 06.01.2004
Это конечно забавно, но я порешал и остальные свои проблемы с Web-порталом, расскажу чуть позже.
Tags
enterprise portal, portal

 

Similar Threads
Thread Thread Starter Forum Replies Last Post
Inside Dynamics AX 4.0: The Web Framework Blog bot DAX Blogs 0 25.10.2007 03:04
Переход между компаниями на web-портале. Lanai DAX: Администрирование 1 30.10.2006 22:49
Pokluda: Outbound web service (AIF) Blog bot DAX Blogs 0 28.10.2006 17:43
Dynamics AX: Web 2.0 Workgroup - A network of Web 2.0 resources Blog bot DAX Blogs 0 28.10.2006 16:40
Solutions Monkey: EP Web Part connection Blog bot DAX Blogs 0 28.10.2006 16:40
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Рейтинг@Mail.ru
All times are GMT +3. The time now is 01:13.
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Contacts E-mail, Advertising.