Есть 3 файла используются авторизации пользователя, не знаю как они работают, не могу понять, может кто подскажет:
1 файл. login.html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
'declare fieldEcho, getLanguages in "sapxjutil";'
<!--
Copyright SAP AG 2002
Remark: Example Login Template.
You can write your own scripts by using BHTML and JScript
-->
'if (~extauthtype == "LDAP")'
<!--
// SAP AG 2002
// here an example for LDAP DN string. the complete string for bind must be
// uid=<user>, ou=<organisation unit>, o=<organisation>
// with this jscript example you can build your own distiguished name for
your directory
//
// This example can be used, if no Base DN is set in the service file!
// Remark: All values must not be case sensitive. After ldap_bind the module
searches
// the correct DN in the LDAP directory and set this as ~login.
Therefore you should
// set in USREXTID the correct DNs - USREXITD is case sensitive !
-->
<script language=javascript>
// uncomment the example code
var ou="People";
var o ="jes01.labjes.kz";
function buildDN()
{
// the input text for ~login will be replaced
document.pasform.elements[ 1 ].value = "uid="+document.pasform.elements[ 1 ].value+", ou="+ou+", o="+o;
// after new value, we submit the form --> you can see result by jscript call
alert(document.pasform.elements[ 1 ].value);
pasform.submit();
}
</script>
'end'
<h3>Please log on to the SAP System</h3>
<table>
<tr><td>
<form method="post" name="pasform" action="'wgateURL()'">
'fieldEcho()'
<table>
<tr><td>Service:</td><td>'~Service'</td></tr>
'if (~client=="")'
<tr><td>Client:</td><td><input name="~client"
value="'RSYST-MANDT'"></td></tr>
<tr><td>
<input name="~clientinput" type="hidden" value= "1">
</td></tr>
'end'</tr>
'if (~language=="")'<tr><td>Language:</td>
<td>
<select name="~language">
'if (getLanguages ("langId", "langDesc") == 0)
repeat with i from 1 to langId.dim'
<option value="'langId[i]'">'langDesc[i]'</option>
'end
else'
<option value="en">No allowed languages specified! Using English as
default .</option>
'end'
</select>
</td></tr>
'end'
<!-- for the PAS Types NTLM and HTTP the users dont have to input any things.
for NTPassword and LDAP the Users might have to input settings like
login and password
Remark: Administrator can predefine such things in service file like
~login hasso
~password 1972
-->
'if (~extauthtype == "NTPassword")'
<tr><td>Login:</td><td><input name="~login"
value="'~login'"></td></tr><tr><td>
<input name="~logininput" type="hidden" value="1">
</td></tr>
'if (~password=="")'
<tr><td>Password:</td><td><input type=password name="~password"
value=""></td></tr><tr><td>
<input name="~passwdinput" type="hidden" value="1"></td></tr>
'end'
'if (~extauthtype=="NTPassword")'
<tr><td>NT domain:</td><td><input name="~ntdomain"
value="'~ntdomain'"></td></tr>
'end'
'end'
'if (~extauthtype == "LDAP")'
'if (~login=="")'<tr><td>Login:</td><td><input type=text name="~login"
value="'~login'"></td></tr><tr><td>
<input name="~logininput" type="hidden" value="1">
</td></tr>
'end'
'if (~password=="")'
<tr><td>Password:</td><td><input type=password name="~password"
value=""></td></tr><tr><td>
<input name="~passwdinput" type="hidden" value="1"></td></tr>
'end'
'end'
'if (~extauthtype == "DLL")'
'if (~login=="")'<tr><td>Login:</td><td><input type=text name="~login"
value="'~login'"></td></tr><tr><td>
<input name="~logininput" type="hidden" value="1">
</td></tr>
'end'
'if (~password=="")'
<tr><td>Password:</td><td><input type=password name="~password"
value=""></td></tr><tr><td>
<input name="~passwdinput" type="hidden" value="1"></td></tr>
'end'
'end'
<tr><td></td><td>'~MessageLine'</td></tr>
</table>
</td>
</tr>
<tr>
<td>
<table align=center">
<tr>
<td>
<!--
here again for LDAP we switch the Submit button
-->
'if (~extauthtype == "LDAP")'
<input type=button name="~OkCode=/ 0 " value="Logon" onClick="buildDN()">
'else'
<input type=submit name="~OkCode=/ 0 " value="Logon">
'end'
</td>
</tr>
</table>
</td>
</tr>
</form>
</td>
</tr>
</table>
2 файл: extautherror.html
1.
2.
3.
4.
5.
6.
7.
8.
<H3>Error during authentication process.</H3>
'if (~messageline != "")'
<p>The following error occured:</p>'~messageline'
<p> The trace files might contain more information about the problem.</p>
'else'
<p>The error can't be qualified in more detail.</p>
<p>The trace file may contain further information about this error.</p>
'end'
3 файл: redirect.html
1.
2.
3.
4.
5.
6.
7.
<html>
<head>
<meta http-equiv="refresh" content="0; URL='~ExtAuthRedirectURL'">
</head>
<body>
</body>
</head>
При открытии файла login.html форма кривая, на странице вроде бы компоненты формы отоброжаются но в то же время в некоторых местах условия отображаются, вы сами можете это попробовать.
При нажатии на кнопку logon action ссылается на какую то wgateURL() функцию, не понятно откуда, а нажатие кнопки пишет что нет такой страницы.