Wiki source code of org.clazzes.login.adapter.http

Version 14.1 by wolfgang_glas@iteg_at on 2019-03-06 11.43:29

Show last authors
1 === {{id name="org.clazzes.login.adapter.http-HTTPLoginAdapter"/}}HTTP Login Adapter ===
2
3 The login-service-adapter {{code language="none"}}org.clazzes.login.adapter.http{{/code}} listens for providers of the ##[[DomainPasswordLoginService>>doc:LOGIN.DomainPasswordLoginService implementations and backends.WebHome]]## interface and exports them adapted as a ##[[HttpLoginService>>doc:GWTBASICS.GWT implementations of http-util HttpLoginService.HTTP login service.WebHome]]## (see [[https:~~/~~/svn.clazzes.org/svn/util/trunk/http-util/src/main/java/org/clazzes/util/http/sec/HttpLoginService.java>>url:https://svn.clazzes.org/svn/util/trunk/http-util/src/main/java/org/clazzes/util/http/sec/HttpLoginService.java||shape="rect"]]).
4
5 It is provided as an OSGi bundle, which may be activated by
6
7 (% class="code" %)
8 (((
9 obr:addurl http:~/~/maven.clazzes.org/repository.xml
10 obr:deploy http-login-adapter
11 )))
12
13 The maven artifact is:
14
15 (% class="code" %)
16 (((
17 <groupId>org.clazzes.login</groupId>
18 <artifactId>http-login-adapter</artifactId>
19 )))
20
21 URL of exported {{code language="none"}}DomainPasswordLoginService{{/code}}: {{code language="none"}}/http-login/<login.mechanism>/login{{/code}}
22 <login.mechanism> beeing i.e. {{code language="none"}}jaas{{/code}} from [[doc:LOGIN.DomainPasswordLoginService implementations and backends.org\.clazzes\.login\.jaas.WebHome]], {{code language="none"}}ldap{{/code}} from [[doc:LOGIN.DomainPasswordLoginService implementations and backends.org\.clazzes\.login\.ldap.WebHome]], {{code language="none"}}http{{/code}} from [[doc:LOGIN.DomainPasswordLoginService implementations and backends.org\.clazzes\.login\.http.WebHome]].
23
24 Starting with version 1.2.0 of http-login-adapter, the timezone of the user logging in is determined via javascript and propagated to the server as the login time zone, when the configuration parameter {{code language="none"}}doTimeZoneDetection=true{{/code}} is set. The login timezone may be queried using HttpLoginServer.getTimeZone() or ThreadLocalManager.getLoginTimeZone() when using HttpCheckLoginInterceptor of http-aop-util-1.2.0 or later
25
26 === {{id name="org.clazzes.login.adapter.http-URLschemeandparameters"/}}URL scheme and parameters ===
27
28 The login time zone and/or login local may be overwritten using URL parameters to the login service like in the following examples:
29
30 (% class="wrapped" %)
31 |=(((
32 login URL
33 )))|=(((
34 remarks
35 )))
36 |(((
37 (% class="code" %)
38 (((
39 /http-login/<login.mechanism>/login?tz=America/Los_Angeles
40 )))
41 )))|(((
42 login with the browser's default locale and Los Angeles time zone
43 )))
44 |(((
45 (% class="code" %)
46 (((
47 /http-login/<login.mechanism>/login?tz=GMT+01:00&locale=fr
48 )))
49 )))|(((
50 login with a timezone with fixed offset and a french locale.
51 )))
52 |(((
53 (% class="code" %)
54 (((
55 /http-login/<login.mechanism>/login?locale=fr-CA
56 )))
57 )))|(((
58 login with a french canadian locale.
59 )))
60
61 === {{id name="org.clazzes.login.adapter.http-Testpad"/}}(% style="color: rgb(0,0,0);font-size: 16.0px;line-height: 1.5625;" %)Testpad(%%) ===
62
63 There is a small testpad application to play with this adapter.
64
65 It is provided as an OSGi bundle, which may be activated by
66
67 (% class="code" %)
68 (((
69 obr:addurl http:~/~/maven.clazzes.org/repository.xml
70 obr:deploy http-login-testpad
71 )))
72
73 The maven artifact is:
74
75 (% class="code" %)
76 (((
77 <groupId>org.clazzes.login</groupId>
78 <artifactId>http-login-testpad</artifactId>
79 )))
80
81 === {{id name="org.clazzes.login.adapter.http-Configuration"/}}Configuration ===
82
83 The following configuration overview is valid as of version 1.3.0, which will be released around 2013-10-28.
84
85 (% class="wrapped" %)
86 |=(((
87 Name
88 )))|=(((
89 Description
90 )))
91 |(((
92 doTimeZoneDetection
93 )))|(((
94 Set to {{code language="none"}}true{{/code}} for multi-time-zone applications. Defaults to {{code language="none"}}false{{/code}}.
95 )))
96 |(((
97 failureTimeout
98 )))|(((
99 Delay penalty after bad login attempts, in {{code language="none"}}ms{{/code}}. Default to 500.
100 )))
101 |(((
102 secureCookie
103 )))|(((
104 Wether to flag the session cookie as secure. Defaults to {{code language="none"}}false{{/code}}.
105 Set to {{code language="none"}}true{{/code}} for {{code language="none"}}https{{/code}}-only operations, which is highly recommended.
106 )))
107 |(((
108 sessionCookie
109 )))|(((
110 Name of session cookie. Defaults to {{code language="none"}}LOGIN_SESSION_ID{{/code}}.
111 )))
112 |(((
113 sessionTimeout
114 )))|(((
115 Session timeout in minutes. Defaults to {{code language="none"}}180{{/code}} (=3 hours).
116 )))
117 |(((
118 (% class="p1" %)
119 (% class="s1" %)mailSender
120 )))|(((
121 Mail address of the sender of mails for two-factor authentication containing an ephemeral token.
122 )))
123 |(((
124 (% class="p1" %)
125 (% class="s1" %)smsSender
126 )))|(((
127 SMS sender number of SMSes for two-factor authentication containing an ephemeral token.
128 )))
129 |(((
130 (% class="p1" %)
131 (% class="s1" %)ephemeralOtpSeconds
132 )))|(((
133 The lifetime of ephemeral tokens in seconds.
134 )))