Turn eval test into normal test case
[mono.git] / mcs / class / System.Web / System.Web.Security / ChangeLog
1 2010-04-28  Marek Habersack  <mhabersack@novell.com>
2
3         * RolePrincipal.cs: class is not sealed in 4.0
4
5         * MembershipUser.cs: type forwarded to
6         System.Web.ApplicationServices in 4.0.
7         In the 4.0 profile, a MembershipHelper instance is created using
8         reflection, so that the Membership class and password
9         encryption/decryption services can be accessed without referencing
10         System.Web
11
12         * MembershipProvider.cs: type forwarded to
13         System.Web.ApplicationServices in 4.0.
14         {Encrypt,Decrypt}Password implementations moved to
15         MembershipHelper.
16         Added new EncryptPassword overload for 4.0
17
18         * MembershipHelper.cs: a helper class to handle password
19         encryption/decryption and to forward requests for certain
20         Membership properties in 4.0. It is used also in 2.0 to keep code
21         cleaner. System.Web.ApplicationServices uses it to access the
22         Membership class without having to reference System.Web
23
24         * MembershipCreateStatus.cs, MembershipCreateUserException.cs,
25         MembershipPasswordException.cs, MembershipPasswordFormat.cs,
26         MembershipProviderCollection.cs, MembershipUserCollection.cs,
27         MembershipValidatePasswordEventHandler.cs, RoleProvider.cs,
28         ValidatePasswordEventArgs.cs:
29         types forwarded to System.Web.ApplicationServices in 4.0
30
31         * FormsIdentity.cs: class is not sealed in 4.0
32
33 2010-02-11  Marek Habersack  <mhabersack@novell.com>
34
35         * Roles.cs: IsUserInRole checks if username is null or empty
36         before attempting to use it. Patch from Tiaan Geldenhuys
37         <tagdev@gmail.com>. thanks!
38
39 2009-09-22  Sebastien Pouliot  <sebastien@ximian.com>
40
41         * MembershipProvider.cs: Ensure password decryption is always
42         possible.
43         [Fix bug #538406]
44
45 2009-07-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
46
47         * SqliteMembershipProvider.cs:
48         * UrlAuthorizationModule.cs: use GetSection instead of
49         OpenWebConfiguration+GetSection.
50
51 2009-05-28  Marek Habersack  <mhabersack@novell.com>
52
53         * FormsAuthenticationModule.cs: if forms authentication login URL
54         is not rooted, make it relative to the application root, so that
55         MapPath maps it correctly.
56         Use String.Compare for checking whether requested URL matches the
57         login URL - be case-insensitive when running on Windows or with
58         IOMAP in effect.
59
60 2009-03-10  Marek Habersack  <mhabersack@novell.com>
61
62         * UrlAuthorizationModule.cs: OnAuthorizeRequest must use the
63         configuration from <location> elements in the config. Fixes bug
64         #467221
65
66 2009-02-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
67
68         * FormsAuthentication.cs: use GetWebApplication instead of GetSection
69         for application level configuration.
70
71 2009-01-12  Marek Habersack  <mhabersack@novell.com>
72
73         * MembershipUserCollection.cs: CopyTo overloads use store.Values
74         as the copy source. Fixes bug #464783. Patch from Christian
75         Prochnow <cproch@seculogix.de>
76
77 2008-12-25 Gonzalo Paniagua Javier <gonzalo@novell.com>
78
79         * SqlRoleProvider.cs:
80         * SqlMembershipProvider.cs: use IndexOf (char) instead of
81         IndexOf (string).
82
83 2008-08-20  Marek Habersack  <mhabersack@novell.com>
84
85         * Membership.cs: implemented the HashAlgorithmType property. Fixes
86         bug #418458
87
88 2008-06-30  Marek Habersack  <mhabersack@novell.com>
89
90         * SqliteMembershipProvider.cs, SqliteRoleProvider.cs: remove
91         unused method
92
93         * SqlRoleProvider.cs, AspNetDBSchemaChecker.cs: hush the warnings
94
95 2008-05-30  Marek Habersack  <mhabersack@novell.com>
96
97         * AnonymousIdentificationModule.cs, FormsAuthenticationModule.cs,
98         DefaultAuthenticationModule.cs, MembershipProvider.cs,
99         WindowsAuthenticationModule.cs, PassportAuthenticationModule.cs,
100         RoleManagerModule.cs: do not use synthetized event accessors (to
101         avoid locks).
102
103 2008-05-07  Marek Habersack  <mhabersack@novell.com>
104
105         * RolePrincipal.cs: fix:
106                 - Reloading the roles cache from the provider when expired
107                 - Update issue & expiry date for expired tickets
108                 - Incrementing the cookie expiry date
109                 - Obey Roles.MaxCachedResults
110           Fixes bug #385877. Patch from Ivan Hamilton
111                 <ivan@chimerical.com.au>, thanks!
112
113 2008-03-10  Marek Habersack  <mhabersack@novell.com>
114
115         * RoleManagerModule.cs: initialize _config before adding event
116         handlers and account for the fact that _config might still be null
117         in the methods that use it.
118
119 2007-12-30  Vladimir Krasnov  <vladimirk@mainsoft.com>
120
121         * SqliteMembershipProvider.cs, SqlRoleProvider.cs: added chema checking
122         * added AspNetDBSchemaChecker.cs: schema checker helper class
123
124 2007-12-11  Vladimir Krasnov  <vladimirk@mainsoft.com>
125
126         * Roles.cs: fixed Providers property to be thread safe
127
128 2007-12-08  Marek Habersack  <mhabersack@novell.com>
129
130         * SqliteRoleProvider.cs: added - a Role Provider for
131         Sqlite, based on PostgreSQL Role Provider code from Daniel
132         Nauck <dna@informatik.uni-kiel.de>
133
134         * SqliteMembershipProvider.cs: added - a Membership Provider for
135         Sqlite, based on PostgreSQL Membership Provider code from Daniel
136         Nauck <dna@informatik.uni-kiel.de>
137
138 2007-11-28  Marek Habersack  <mhabersack@novell.com>
139
140         * SqlMembershipProvider.cs: handle situation when there is no
141         connection string configured for the SQL Membership Provider.
142
143 2007-11-01  Marek Habersack  <mhabersack@novell.com>
144
145         * RolePrincipal.cs, MembershipProvider.cs: use the new
146         MachineKeySectionUtils class wherever necessary.
147
148         * FormsAuthentication.cs: use the new MachineKeySectionUtils class
149         wherever necessary.
150         GetHexString is a private method again.
151
152 2007-10-31  Marek Habersack  <mhabersack@novell.com>
153
154         * FormsAuthentication.cs: made GetHexString an internal method -
155         it is used in the AssemblyResourceLoader.cs
156
157 2007-08-14  Marek Habersack  <mhabersack@novell.com>
158
159         * Roles.cs: remove unused field.
160
161         * SqlMembershipProvider.cs: remove unused variable.
162
163 2007-08-13 Vladimir Krasnov <vladimirk@mainsoft.com>
164
165         * SqlRoleProvider.cs: fixed ApplicationName initialization
166
167 2007-06-24 Vladimir Krasnov <vladimirk@mainsoft.com>
168
169         * FormsAuthentication.cs: improved performance of GetHexString()
170
171 2007-05-17 Vladimir Krasnov <vladimirk@mainsoft.com>
172
173         * SqlMembershipProvider.cs: fixed DeleteUser, fixed parameter name
174
175 2007-05-14 Igor Zelmanovich <igorz@mainsoft.com>
176
177         * SqlMembershipProvider.cs: Fix parameter binding to stored procedures.
178
179 2007-05-09 Igor Zelmanovich <igorz@mainsoft.com>
180
181         * PassportIdentity.cs:
182         added MonoNotSupported attribute.       
183
184 2007-05-02  Marek Habersack  <mhabersack@novell.com>
185
186         * FormsAuthentication.cs: user names are stored in lowercase in
187         the credentials database.
188
189 2007-04-29 Igor Zelmanovich <igorz@mainsoft.com>
190
191         * FormsAuthenticationModule.cs: 
192         Redirect to login page doesn't cause thread abort.      
193
194 2007-04-19 Igor Zelmanovich <igorz@mainsoft.com>
195
196         * SqlMembershipProvider.cs:
197         ChangePassword throws exception if new password has invalid format.     
198
199 2007-04-17 Igor Zelmanovich <igorz@mainsoft.com>
200
201         * Membership.cs:
202         * Roles.cs:
203         if default provider was not found ConfigurationErrorsException is thrown.
204
205 2007-04-12  Marek Habersack  <mhabersack@novell.com>
206
207         * RoleManagerModule.cs: do not try to decrypt encryption tickets
208         from cookies with empty values.
209
210 2007-04-04 Juraj Skripsky <js@hotfeet.ch>
211
212         * FormsAuthenticationModule.cs: Move initialization of _config out
213         of Init() as app.Context is null in that method when a session is
214         about to be terminated.
215
216 2007-03-21 Vladimir Krasnov <vladimirk@mainsoft.com>
217
218         * AnonymousIdentificationModule.cs: optimized Config property
219
220 2007-03-21 Vladimir Krasnov <vladimirk@mainsoft.com>
221
222         * AnonymousIdentificationModule.cs: added configuration section caching
223         to AppDomain for TARGET_JVM
224         * RoleManagerModule.cs:
225         * UrlAuthorizationModule.cs:
226         * FormsAuthenticationModule.cs: refactored configuration section to be
227         a member of a class
228
229 2007-03-20  Marek Habersack  <mhabersack@novell.com>
230
231         * FormsAuthentication.cs, Roles.cs: remove roles cookie on sign
232         out. Fixes bug #81195. Patch from Mike Morano <mmorano@mikeandwan.us>.
233
234 2007-03-12  Marek Habersack  <mhabersack@novell.com>
235
236         * RolePrincipal.cs: decrypt the roles ticket properly. Makes role
237         caching in cookies work. Fixes bug #81117. Patch from Mike Morano
238         <mmorano@mikeandwan.us>
239
240 2007-03-02  Marek Habersack  <mhabersack@novell.com>
241
242         * SqlMembershipProvider.cs: cast PasswordFormat to int, so that
243         the parameter code can infer the sql type. Makes user creation,
244         password reset etc. work.
245
246 2007-02-28  Andreia Gaita  <avidigal@novell.com>
247
248         * SqlRoleProvider.cs: Fix parameter binding to stored procedures.
249         * SqlMembershipProvider.cs: Fix parameter binding to stored procedures.
250         CreateUser() doesn't use transactions in MS asp.net, so removed the 
251         transaction calls.
252
253 2007-02-19 Vladimir Krasnov <vladimirk@mainsoft.com>
254
255         * RoleManagerModule.cs: fixed role chaching in OnEndRequest and
256         OnPostAuthenticateRequest
257         * RolePrincipal.cs: implemented ToEncryptedTicket, implemented caching
258         role functionality
259         * Roles.cs: implemented DeleteCookie, fixed CookieProtectionValue to
260         get it's value from configuration
261
262 2007-02-08  Marek Habersack  <grendello@gmail.com>
263
264         * FormsAuthenticationModule.cs: Expire auth tickets properly.
265
266         * MembershipProvider.cs: Do not clear the password before
267         encrypting it. 
268
269 2007-01-20  Miguel de Icaza  <miguel@novell.com>
270
271         * SqlRoleProvider.cs: comment out unused code.
272
273         * SqlMembershipProvider.cs: Removed unused variables.
274         Remove unused variable.
275
276         * AnonymousIdentificationModule.cs (ClearAnonymousIdentifier):
277         remove unused variable.   This might be a real bug.
278
279 2007-01-16 Vladimir Krasnov <vladimirk@mainsoft.com>
280
281         * RoleManagerModule.cs: fixed OnPostAuthenticateRequest,
282         CacheRolesInCookie not supported yet
283         * Roles.cs: fixed DeleteCookie, CacheRolesInCookie not supported yet
284
285 2007-01-11 Adar Wesley <adarw@mainsoft.com>
286
287         * MembershipProvider.cs: fixed EncryptPassword to use password buffer length
288
289 2007-01-04 Vladimir Krasnov <vladimirk@mainsoft.com>
290
291         * AnonymousIdentificationModule.cs: fixed OnEnter, fixed failure on
292         incorrect cookie value that browser may hold
293
294 2006-12-27 Vladimir Krasnov <vladimirk@mainsoft.com>
295
296         * FormsAuthentication.cs: added internal ReturnUrl property,
297         GetRedirectUrl added usage of ReturnUrl
298
299 2006-12-12 Vladimir Krasnov <vladimirk@mainsoft.com>
300
301         * FormsAuthentication.cs: TARGET_J2EE define for static members
302
303 2006-12-06 Vladimir Krasnov <vladimirk@mainsoft.com>
304
305         * FormsAuthenticationModule.cs: fixed OnAuthenticateRequest, suppress
306         exception on wrong ticket
307
308 2006-12-03 Igor Zelmanovich <igorz@mainsoft.com>
309
310         * FormsAuthenticationModule.cs: 
311         set SkipAuthorization=true for WebResource.axd
312
313 2006-11-27 Vladimir Krasnov <vladimirk@mainsoft.com>
314
315         * SqlMembershipProvider.cs: typo bug
316
317 2006-11-21 Vladimir Krasnov <vladimirk@mainsoft.com>
318
319         * SqlMembershipProvider.cs: fixed fixed exception type in GetPassword
320         checks user lockout
321
322 2006-11-20 Igor Zelmanovich <igorz@mainsoft.com>
323
324         * SqlMembershipProvider.cs: fixed: UpdateUser works properly.
325
326 2006-11-15 Igor Zelmanovich <igorz@mainsoft.com>
327
328         * SqlMembershipProvider.cs: fixed: name is used for ReturnValue parameter.
329
330 2006-11-05 Vladimir Krasnov <vladimirk@mainsoft.com>
331
332         * AnonymousIdentificationModule.cs: fixed anonymous id cookie
333
334 2006-11-05 Vladimir Krasnov <vladimirk@mainsoft.com>
335
336         * MembershipProvider.cs, SqlMembershipProvider.cs:
337         refactoring of DecryptPassword and EncryptPassword methods according
338         to documentation
339
340 2006-09-10 Konstantin Triger <kostat@mainsoft.com>
341
342         * SqlRoleProvider.cs: throw on empty connection string.
343
344 2006-09-26 Vladimir Krasnov <vladimirk@mainsoft.com>
345
346         * Membership.cs: fixed GetAllUsers, typo bug
347         * SqlRoleProvider.cs, SqlMembershipProvider.cs: refactored to use
348         aspnetdb built in stored procedures,
349         fixed application name and membership relation,
350         improved exception handling
351
352 2006-09-03 Igor Zelmanovich <igorz@mainsoft.com>
353
354         * RolePrincipal.cs: refactoring: instance can be serialized.
355
356 2006-09-03 Igor Zelmanovich <igorz@mainsoft.com>
357
358         * SqlMembershipProvider.cs: fixed GetUser,
359         when username is String.Empty methods returns null.
360
361 2006-08-31 Konstantin Triger <kostat@mainsoft.com>
362
363         * SqlRoleProvider.cs: fixed initialization.
364
365 2006-08-31 Igor Zelmanovich <igorz@mainsoft.com>
366
367         * SqlMembershipProvider.cs: fixed CreateUser,
368         password is checked, properties MinRequiredPasswordLength and 
369         MinRequiredNonAlphanumericCharacters are considered.
370
371 2006-08-29 Konstantin Triger <kostat@mainsoft.com>
372
373         * SqlMembershipProvider.cs: fix dispose order of reader vs connection.
374
375 2006-08-28 Igor Zelmanovich <igorz@mainsoft.com>
376
377         * SqlMembershipProvider.cs: fixed CreateUser, parameter isApproved is
378                 considered.
379
380 2006-08-28 Konstantin Triger <kostat@mainsoft.com>
381
382         * SqlMembershipProvider.cs: ensure GetUser() returns null if it cannot
383                 retrieve user information.
384
385 2006-08-28 Konstantin Triger <kostat@mainsoft.com>
386
387         * SqlRoleProvider.cs, SqlMembershipProvider.cs:
388                 "use SqlClientFactory in case the ProviderName is not specified.
389
390 2006-08-27 Konstantin Triger <kostat@mainsoft.com>
391
392         * SqlRoleProvider.cs: enable concurrent usage, refactoring.
393
394 2006-08-27 Konstantin Triger <kostat@mainsoft.com>
395
396         * SqlMembershipProvider.cs: enable concurrent usage, refactoring.
397
398 2006-08-27 Vladimir Krasnov <vladimirk@mainsoft.com>
399
400         * SqlMembershipProvider.cs: fixed ValidateUser, bug when user
401         not exists
402
403 2006-08-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
404
405         * FormsAuthentication.cs: set the Secure attribute of the authentication
406         cookie when required.
407
408 2006-07-06      Konstantin Triger <kostat@mainsoft.com>
409
410         * FormsAuthentication.cs: Ensure initialized, fix url mapping.
411
412 2006-05-03  Chris Toshok  <toshok@ximian.com>
413
414         * SqlMembershipProvider.cs (GetAlg): move this here for the time
415         being, as it's the only class that uses it.
416         (HashAndBase64Encode): nuke.
417         (EncryptAndBase64Encode): nuke.
418         (Base64DecodeAndDecrypt): nuke.
419         (DecryptPassword): new function.
420         (EncryptPassword): new function.
421         (ChangePassword): replace the switch with a call to
422         EncodePassword.
423         (ChangePasswordQuestionAndAnswer): same.
424         (CreateUser): same.
425         (ResetPassword): same.
426         (ValidateUsingPassword): same.
427         (ValidateUsingPasswordAnswer): same.
428         (GetPassword): same, and throw MembershipPasswordException if the
429         password answer is incorrect.
430
431         * MembershipProvider.cs (InitVector): nuke this.  it's actually
432         the salt from the database (for the sql provider, anyway).
433         (EncodePassword): based on the password format, password, and
434         salt, encode it.  Makes use of EncryptPassword.
435         (DecodePassword): likewise for decoding, makes use of
436         DecryptPassword.
437         (DecryptPassword): revert this to throwing
438         NotImplementedException, as the sql provideroverrides it to
439         perform the actual decryption.
440         (EncryptPassword): same.
441
442 2006-05-02  Chris Toshok  <toshok@ximian.com>
443
444         * SqlMembershipProvider.cs: 85% complete, maybe more.  The major
445         functionality should work.  Password retrieval (and encrypted
446         passwords in general) is untested.
447
448 2006-05-01  Chris Toshok  <toshok@ximian.com>
449
450         * Membership.cs (GeneratePassword): don't include quotes (',",`)
451         in the set of characters in the generated passwords.
452
453 2006-05-01  Chris Toshok  <toshok@ximian.com>
454
455         * MembershipProvider.cs (GetAlg): switch from Exception to
456         ProviderException to match MS behavior (and fix the unit test.)
457
458         * Membership.cs (GeneratePassword): implement.
459
460 2006-05-01  Chris Toshok  <toshok@ximian.com>
461
462         * SqlMembershipProvider.cs: lots more work.  checking this in in
463         its present state because I don't want to lose it.  It still needs
464         work.
465         
466         * Membership.cs (.cctor): remove the fallback.
467         (ValidatingPassword): remove the MonoTODO.
468
469         * MembershipProvider.cs (DecryptPassword): implement.
470         (EncryptPassword): implement.
471         (GetAlg): helper function for Decrypt/EncryptPassword.
472         (InitVector): same.
473
474 2006-04-27  Chris Toshok  <toshok@ximian.com>
475
476         * SqlMembershipProvider.cs (GeneratePassword): call
477         Membership.GeneratePassword with the configured minimum strength
478         requirements.
479
480 2006-04-27  Chris Toshok  <toshok@ximian.com>
481
482         * SqlMembershipProvider.cs (UnlockUser): fix sql query, and move
483         the CheckPararm call to the top of the method.
484
485 2006-04-12  Chris Toshok  <toshok@ximian.com>
486
487         * SqlMembershipProvider.cs: commit initial pass at
488         SqlMembershipProvider work.  lots of stuff untested in here.
489
490 2006-04-11  Chris Toshok  <toshok@ximian.com>
491
492         * MembershipUser.cs (.ctor): per Shackow's book, all DateTime's
493         are converted using ToUniversalTime when passed into this class.
494         (UpdateSelf): update ourselves from the passed in MembershipUser,
495         swallowing NotSupportedExceptions.
496         (UpdateUser): fetch a new MembershipUser from the db and call
497         UpdateSelf with it.
498         (ChangePassword): call UpdateUser after changing the password.
499         (ChangePasswordQuestionAndAnswer): same.
500         (ResetPassword): same.
501         (UnlockUser): same.  Also, don't explicitly set isLockedOut.
502         It'll be updated in UpdateSelf.
503         (CreationDate): getter calls ToLocalTime, setter calls
504         ToUniversalTime.
505         (LastActivityDate): same.
506         (LastLoginDate): same.
507         (LastPasswordChangedDate): same.
508         (LastLockoutDate): same.
509         
510         * Membership.cs (.cctor): use
511         ProvidersHelper.InstantitateProviders, and remove some unnecessary
512         #if NET_2_0's.
513
514 2006-03-29  Chris Toshok  <toshok@ximian.com>
515
516         * SqlRoleProvider.cs: do the LOWER's in SQL, not in C#.
517
518 2006-03-23  Chris Toshok  <toshok@ximian.com>
519
520         * Roles.cs: make this 2.0 configuration aware.
521
522         * SqlRoleProvider.cs: flesh out all the operations.  the only
523         things that need dealing with are the Initialize method's handling
524         of a few parameters, and the ApplicationName property.
525
526 2006-03-23  Chris Toshok  <toshok@ximian.com>
527
528         * DefaultAuthenticationModule.cs (OnDefaultAuthentication): always
529         set Thread.CurrentPrincipal, not just if we set it to the
530         GenericPrincipal.
531
532 2006-03-22  Chris Toshok  <toshok@ximian.com>
533
534         * RoleManagerModule.cs: implement using info in Shackow's book.
535
536         * RolePrincipal.cs: flesh this out a bit more.
537
538         * DefaultAuthenticationModule.cs (OnDefaultAuthentication):
539         according to Shackow's book, this sets Thread.CurrentPrincipal as
540         well as HttpContext.Current.User.
541
542 2006-02-28  Chris Toshok  <toshok@ximian.com>
543
544         * FormsAuthentication.cs: corcompare work.
545
546         * MembershipCreateUserException.cs: same.
547
548         * MembershipPasswordException.cs: same.
549
550         * AnonymousIdentificationModule.cs: same.
551
552 2006-02-01  Chris Toshok  <toshok@ximian.com>
553
554         * FormsAuthentication.cs, Membership.cs,
555         FormsAuthenticationModule.cs, UrlAuthorizationModule.cs: oops,
556         replace GetWebApplicationSection with GetSection.
557         
558 2006-02-01  Chris Toshok  <toshok@ximian.com>
559
560         * FormsAuthentication.cs: CONFIGURATION_2_0 => NET_2_0.
561         simplifies the ifdef mess quite a bit.
562
563         * Membership.cs: same.
564
565         * FormsAuthenticationModule.cs: same.
566
567         * UrlAuthorizationModule.cs: same.
568
569 2006-01-04  Chris Toshok  <toshok@ximian.com>
570
571         * FormsAuthentication.cs (Authenticate): add CONFIGURATION_2_0
572         code.
573         (Decrypt2): same.
574         (Decrypt): same.
575         (Encrypt): same.
576         (Initialize): same.
577
578 2006-01-04  Chris Toshok  <toshok@ximian.com>
579
580         * Membership.cs (.cctor): enable the code here under
581         CONFIGURATION_2_0.
582
583 2006-01-03  Chris Toshok  <toshok@ximian.com>
584
585         * UrlAuthorizationModule.cs (OnAuthorizeRequest): add
586         CONFIGURATION_2_0 code here.
587
588 2005-12-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
589
590         * FormsAuthentication.cs: don't end the request in
591         RedirectFromLoginPage.
592
593 2005-12-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
594
595         * FormsAuthenticationModule.cs: expire the cookie. Fixes bug #77043.
596         Patch by Cyrille Colin.
597
598 2005-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
599
600         * FormsAuthenticationModule.cs: ignore any exception thrown when mapping
601         the provided virtual path to the physical one. Patch by Cyrille Colin.
602
603 2005-11-28  Chris Toshok  <toshok@ximian.com>
604
605         * FormsAuthenticationModule.cs (OnAuthenticateRequest):
606         CONFIGURATION_2_0 work.
607         (OnEndRequest): same.
608
609 2005-09-09  Sebastien Pouliot  <sebastien@ximian.com>
610
611         * DefaultAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
612         * DefaultAuthenticationModule.cs: Added LinkDemand for Minimal. Added
613         Demand for UnmanagedCode on constructor.
614         * FileAuthorizationModule.cs: Added LinkDemand for Minimal. Added 
615         Demand for UnmanagedCode on constructor.
616         * FormsAuthentication.cs: Added LinkDemand for Minimal.
617         * FormsAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
618         * FormsAuthenticationModule.cs: Added LinkDemand for Minimal. Added 
619         Demand for UnmanagedCode on constructor.
620         * FormsAuthenticationTicket.cs: Added LinkDemand for Minimal.
621         * FormsIdentity.cs: Added LinkDemand for Minimal.
622         * PassportAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
623         * PassportAuthenticationModule.cs: Added LinkDemand for Minimal. Added
624         Demand for UnmanagedCode on constructor.
625         * PassportIdentity.cs: Added LinkDemand for Minimal. Added Demand for
626         UnmanagedCode on constructor.
627         * UrlAuthorizationModule.cs: Added LinkDemand for Minimal. Added 
628         Demand for UnmanagedCode on constructor.
629         * WindowsAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
630         * WindowsAuthenticationModule.cs: Added LinkDemand for Minimal. Added
631         Demand for UnmanagedCode on constructor.
632
633 2005-09-01  Sebastien Pouliot  <sebastien@ximian.com>
634
635         * FormsAuthenticationEventArgs.cs: Ensure the setter for User is 
636         protected by a demand for ControlPrincipal.
637         * PassportAuthenticationEventArgs.cs: Ensure the setter for User is
638         protected by a demand for ControlPrincipal.
639         * WindowsAuthenticationEventArgs.cs: Ensure the setter for User is 
640         protected by a demand for ControlPrincipal.
641
642 2005-08-25  Sebastien Pouliot  <sebastien@ximian.com> 
643  
644         * FormsAuthentication.cs: With 2.0 we can get the default properties 
645         and call Initialize without a NRE.
646
647 2005-08-25  Sebastien Pouliot  <sebastien@ximian.com>
648
649         * ActiveDirectoryConnectionProtection.cs: New (2.0) enum.
650         * ActiveDirectoryMembershipProvider.cs: Fixed 2.0 API.
651         * AnonymousIdentificationEventArgs.cs: Fixed AnonymousID property case.
652         * AnonymousIdentificationModule.cs: Fixed 2.0 API.
653         * FileAuthorizationModule.cs: Added static CheckFileAccessForUser in 
654         2.0 profile (TODO).
655         * FormsAuthentication.cs: Added missing 2.0 properties with their 
656         default values.
657         * MembershipCreateStatus.cs: Fixed enum values/names.
658         * MembershipProvider.cs: Added stub for [Decrypt|Encrypt]Password. Both
659         methods don't seems to work without an active provider.
660         * PassportIdentity.cs: Added IDispose for 2.0 profile.
661         * Roles.cs: Added missing beta2 bits and default values (which are the
662         only things working without a role provider (web.config).
663         * RolePrincipal.cs: Fixed 2.0 API. Implemented a few bits.
664         * SqlRoleProvider.cs: Fixed 2.0 API.
665         * UrlAuthorizationModule.cs: Added static CheckUrlAccessForPrincipal in
666         2.0 profile (TODO).
667
668 2005-08-24  Sebastien Pouliot  <sebastien@ximian.com>
669
670         * MembershipUserCollection.cs: Fix exceptions.
671
672 2005-08-22  Sebastien Pouliot  <sebastien@ximian.com>
673
674         * FormsAuthentication.cs: Add some 2.0 stuff required for Login* 
675         controls to compile.
676
677 2005-08-18  Sebastien Pouliot  <sebastien@ximian.com>
678
679         * Membership.cs: Commented unworking parts of the .cctor to allow 
680         testing the Login control.
681         * MembershipProviderCollection.cs: Fixed exception handling.
682         * SqlMembershipProvider.cs: Don't throw NotImplementedException 
683         everywhere so Membership's .cctor (somewhat) works. Removed 
684         Description property (not in beta2).
685
686 2005-07-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
687
688         * FormsAuthentication.cs: allow hardware acceleration support if
689         available. Sebastien dixit.
690
691 2005-07-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
692
693         * FormsAuthentication.cs: the init_vector must be the same accross
694         restarts, otherwise the cookie does not work even when a decryption
695         key is provided. Initialize it to the bytes of the cookie name. Fixes
696         bug #75635.
697
698 2005-07-25  Eyal Alaluf <eyala@mainsoft.com>
699
700         * FormsAuthenticationModule.cs: Check for null config
701
702 2005-07-25  Miguel de Icaza  <miguel@novell.com>
703
704         * FormsAuthentication.cs (SignOut): Force the cookie to have it
705         expire in the past.
706
707 2005-07-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
708
709         * FormsAuthentication.cs: my previous patch missed a "small" detail: it
710         didn't include the verification key when computing/checking the
711         validation hash. Now this is really a MAC or HMAC or...
712
713 2005-07-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
714
715         * FormsAuthentication.cs:
716         * FormsAuthenticationTicket.cs: added support for validation and
717         encryption of the auth. cookie and improved serialization of the ticket.
718
719 2005-07-01  Lluis Sanchez Gual <lluis@novell.com>
720
721         * Membership.cs: Read provider info from the config file.
722
723 2005-06-10 Lluis Sanchez Gual <lluis@novell.com>
724
725         * MembershipUserCollection.cs:
726         * MembershipPasswordException.cs:
727         * RoleProviderCollection.cs:
728         * ActiveDirectoryMembershipProvider.cs:
729         * SqlMembershipProvider.cs:
730         * MembershipProvider.cs:
731         * SqlRoleProvider.cs:
732         * Membership.cs:
733         * MembershipUser.cs:
734         * MembershipProviderCollection.cs:
735         * Roles.cs:.
736         * RoleProvider.cs: Track api changes in ASP.NET 2.0. Implemented
737         some missing methods.
738         
739         * AccessRoleProvider.cs:
740         * AccessMembershipProvider.cs: Removed.
741         
742         * MembershipCreateUserException.cs:
743         * MembershipValidatePasswordEventHandler.cs:
744         * ValidatePasswordEventArgs.cs: Implemented.
745
746 2005-05-21  Sebastien Pouliot  <sebastien@ximian.com>
747
748         * FormsAuthentication.cs: Hash the UTF8 representation of the password
749         strings (to be compatible with Microsoft implementation).
750
751 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
752
753         * FormsAuthentication.cs:
754         * PassportAuthenticationModule.cs:
755         * WindowsAuthenticationModule.cs: removed warnings.
756
757 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
758
759         * FormsAuthenticationModule.cs: fix for bug 73545, which caused
760         authentication not to work when the cookie was not persistent.
761         Patch by Ilya Kharmatsky (Mainsoft).
762
763 2005-02-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
764
765         * FormsAuthentication.cs: make the string to be stored in a config.
766         file uppercase... See bug #72557.
767
768 2005-02-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
769
770         * FormsAuthentication.cs: fixed typo when getting the hash for the 
771         password in SHA1 and MD5. Thanks to Tadas Dailyda.
772         Lock on a static object instead of typeof(FormsAuthentication).
773
774 2004-11-18 Lluis Sanchez Gual <lluis@novell.com>
775
776         * RoleProvider.cs, Roles.cs, SqlRoleProvider.cs, RoleProviderCollection.cs,
777         AccessRoleProvider.cs: IRoleProvider has been renamed to ProviderBase.
778         * IMembershipProvider.cs: Deleted.
779         * MembershipProvider.cs, AccessMembershipProvider.cs, MembershipUser.cs,
780         Membership.cs, ADMembershipProvider.cs, SqlMembershipProvider.cs
781         MembershipProviderCollection.cs: MembershipProvider has been deleted
782         and replaced by the abstract class MembershipProvider.
783         * MembershipProviderCollection.cs: Minor fixes.
784         * ADMembershipProvider.cs: Renamed to ActiveDirectoryMembershipProvider.cs.
785
786 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
787
788         * RoleProviderCollection.cs, MembershipProviderCollection.cs: 
789         Fixed warnings.
790
791 2004-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
792
793         * FormsAuthentication.cs: patch by Jim Pease to fix the date on renewal.
794
795 2004-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
796
797         * FormsAuthenticationModule.cs: don't renew expired cookies. Only renew
798         the cookie if SlidingExpiration is set. Thanks to Jim Pease.
799
800 2004-08-03  Sanjay Gupta <gsanjay@novell.com>
801
802         * MembershipSortOptions.cs:
803         * MembershipPasswordFormat.cs:
804         * MembershipOnlineStatus.cs:
805         * MembershipCreateStatus.cs:
806         * CookieProtection.cs: minor modifications.
807
808 2004-06-12  Pedro Martnez Juli  <yoros@wanadoo.es>
809
810         * FormsAuthentication.cs: Undo last change.
811
812 2004-06-12  Pedro Martnez Juli  <yoros@wanadoo.es>
813
814         * FormsAuthentication.cs: go to loginUrl from web.config settings
815         before try with the default ones.
816
817 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
818
819         * DefaultAuthenticationModule.cs: set the IPrincipal for this thread
820         once we have a user. Fixes bug #59683.
821
822 2004-04-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
823
824         * FormsAuthenticationModule.cs: re-read configuration files if needed
825         when determining if forms auth. is used.
826
827 2004-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
828
829         * FormsAuthentication.cs: added RequireSSL and SlidingExpiration.
830
831 2004-01-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
832
833         * PassportIdentity.cs: Added v 1.1 members
834
835 2003-11-25 Ben Maurer  <bmaurer@users.sourceforge.net>
836         
837         * AccessMembershipProvider.cs: New v2 file
838         * AccessRoleProvider.cs: New v2 file
839         * ADMembershipProvider.cs: New v2 file
840         * AnonymousIdentificationEventArgs.cs: New v2 file
841         * AnonymousIdentificationEventHandler.cs: New v2 file
842         * AnonymousIdentificationModule.cs: New v2 file
843         * CookieProtection.cs: New v2 file
844         * IMembershipProvider.cs: New v2 file
845         * IRoleProvider.cs: New v2 file
846         * Membership.cs: New v2 file
847         * MembershipCreateStatus.cs: New v2 file
848         * MembershipCreateUserException.cs: New v2 file
849         * MembershipOnlineStatus.cs: New v2 file
850         * MembershipPasswordException.cs: New v2 file
851         * MembershipPasswordFormat.cs: New v2 file
852         * MembershipProviderCollection.cs: New v2 file
853         * MembershipSortOptions.cs: New v2 file
854         * MembershipUser.cs: New v2 file
855         * MembershipUserCollection.cs: New v2 file
856         * RoleManagerEventArgs.cs: New v2 file
857         * RoleManagerEventHandler.cs: New v2 file
858         * RoleManagerModule.cs: New v2 file
859         * RolePrincipal.cs: New v2 file
860         * RoleProviderCollection.cs: New v2 file
861         * Roles.cs: New v2 file
862         * SqlMembershipProvider.cs: New v2 file
863         * SqlRoleProvider.cs: New v2 file
864
865 2003-11-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
866
867         * FormsAuthentication.cs: encoding updates.
868
869 2003-10-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
870
871         * FormsAuthenticationModule.cs: fixed for applications other than /.
872
873 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
874
875         * UrlAuthorizationModule.cs: fixed description for status code.
876
877 2003-07-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
878
879         * FormsAuthenticationModule.cs: really renew the ticket. Thanks to
880         Jens Thiel <Jens@Thiel.DE>.
881
882 2003-02-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
883
884         * UrlAuthorizationModule.cs: tell the application not to run any other
885         step apart from EndRequest.
886
887 2003-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
888
889         * FormsAuthentication.cs: implemented RedirectFromLoginPage and
890         GetRedirectUrl.
891         
892         * FormsAuthenticationModule.cs: redirect to the login page when a 401
893         error happens.
894
895         * UrlAuthorizationModule.cs: check for valid user or render error page.
896
897 2003-01-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
898
899         * DefaultAuthenticationModule.cs: implemented. It just create a default 
900         unauthenticated user when no one else provided one.
901
902         * FormsAuthenticationModule.cs: removed debug output.
903
904 2002-12-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
905
906         * FormsAuthenticationModule.cs: remove debug lines.
907
908 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
909
910         * FormsAuthentication.cs: return a null ticket when an exception is
911         thrown creating it. Implemented RenewTicketIfOld.
912
913         * FormsAuthenticationModule.cs: implemented event handlers for
914         AuthenticateRequest and EndRequest.
915
916         * FormsAuthenticationTicket.cs: implemented SetDates and Clone methods.
917
918 2002-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
919
920         * FormsAuthentication.cs: implemented GetAuthCookie, SetAuthCookie,
921         SignOut, FormsCookieName and FormsCookiePath.
922
923 2002-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
924
925         * FormsAuthentication.cs: implemented Authenticate, unencrypted Encrypt
926         and Decrypt, HashPasswordForStoringInConfigFile and Initialize.
927
928         * FormsAuthenticationTicket.cs: set cookiePath to the default when no
929         other provided.
930
931 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
932
933         * DefaultAuthenticationEventHandler.cs:
934         * DefaultAuthenticationModule.cs:
935         * FileAuthorizationModule.cs:
936         * FormsAuthentication.cs:
937         * FormsAuthenticationEventArgs.cs:
938         * FormsAuthenticationEventHandler.cs:
939         * FormsAuthenticationModule.cs:
940         * FormsAuthenticationTicket.cs:
941         * FormsIdentity.cs:
942         * PassportAuthenticationEventArgs.cs:
943         * PassportAuthenticationEventHandler.cs:
944         * PassportAuthenticationModule.cs:
945         * PassportIdentity.cs:
946         * UrlAuthorizationModule.cs:
947         * WindowsAuthenticationEventArgs.cs:
948         * WindowsAuthenticationEventHandler.cs:
949         * WindowsAuthenticationModule.cs: new files. Some of them implemented,
950         some others stubbed out.
951
952 2002-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
953
954         * DefaultAuthenticationEventArgs.cs: added file.
955