1 2006-08-27 Konstantin Triger <kostat@mainsoft.com>
3 * SqlMembershipProvider.cs: enable concurrent usage, refactoring.
5 2006-08-27 Vladimir Krasnov <vladimirk@mainsoft.com>
7 * SqlMembershipProvider.cs: fixed ValidateUser, bug when user
10 2006-08-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
12 * FormsAuthentication.cs: set the Secure attribute of the authentication
15 2006-07-06 Konstantin Triger <kostat@mainsoft.com>
17 * FormsAuthentication.cs: Ensure initialized, fix url mapping.
19 2006-05-03 Chris Toshok <toshok@ximian.com>
21 * SqlMembershipProvider.cs (GetAlg): move this here for the time
22 being, as it's the only class that uses it.
23 (HashAndBase64Encode): nuke.
24 (EncryptAndBase64Encode): nuke.
25 (Base64DecodeAndDecrypt): nuke.
26 (DecryptPassword): new function.
27 (EncryptPassword): new function.
28 (ChangePassword): replace the switch with a call to
30 (ChangePasswordQuestionAndAnswer): same.
32 (ResetPassword): same.
33 (ValidateUsingPassword): same.
34 (ValidateUsingPasswordAnswer): same.
35 (GetPassword): same, and throw MembershipPasswordException if the
36 password answer is incorrect.
38 * MembershipProvider.cs (InitVector): nuke this. it's actually
39 the salt from the database (for the sql provider, anyway).
40 (EncodePassword): based on the password format, password, and
41 salt, encode it. Makes use of EncryptPassword.
42 (DecodePassword): likewise for decoding, makes use of
44 (DecryptPassword): revert this to throwing
45 NotImplementedException, as the sql provideroverrides it to
46 perform the actual decryption.
47 (EncryptPassword): same.
49 2006-05-02 Chris Toshok <toshok@ximian.com>
51 * SqlMembershipProvider.cs: 85% complete, maybe more. The major
52 functionality should work. Password retrieval (and encrypted
53 passwords in general) is untested.
55 2006-05-01 Chris Toshok <toshok@ximian.com>
57 * Membership.cs (GeneratePassword): don't include quotes (',",`)
58 in the set of characters in the generated passwords.
60 2006-05-01 Chris Toshok <toshok@ximian.com>
62 * MembershipProvider.cs (GetAlg): switch from Exception to
63 ProviderException to match MS behavior (and fix the unit test.)
65 * Membership.cs (GeneratePassword): implement.
67 2006-05-01 Chris Toshok <toshok@ximian.com>
69 * SqlMembershipProvider.cs: lots more work. checking this in in
70 its present state because I don't want to lose it. It still needs
73 * Membership.cs (.cctor): remove the fallback.
74 (ValidatingPassword): remove the MonoTODO.
76 * MembershipProvider.cs (DecryptPassword): implement.
77 (EncryptPassword): implement.
78 (GetAlg): helper function for Decrypt/EncryptPassword.
81 2006-04-27 Chris Toshok <toshok@ximian.com>
83 * SqlMembershipProvider.cs (GeneratePassword): call
84 Membership.GeneratePassword with the configured minimum strength
87 2006-04-27 Chris Toshok <toshok@ximian.com>
89 * SqlMembershipProvider.cs (UnlockUser): fix sql query, and move
90 the CheckPararm call to the top of the method.
92 2006-04-12 Chris Toshok <toshok@ximian.com>
94 * SqlMembershipProvider.cs: commit initial pass at
95 SqlMembershipProvider work. lots of stuff untested in here.
97 2006-04-11 Chris Toshok <toshok@ximian.com>
99 * MembershipUser.cs (.ctor): per Shackow's book, all DateTime's
100 are converted using ToUniversalTime when passed into this class.
101 (UpdateSelf): update ourselves from the passed in MembershipUser,
102 swallowing NotSupportedExceptions.
103 (UpdateUser): fetch a new MembershipUser from the db and call
105 (ChangePassword): call UpdateUser after changing the password.
106 (ChangePasswordQuestionAndAnswer): same.
107 (ResetPassword): same.
108 (UnlockUser): same. Also, don't explicitly set isLockedOut.
109 It'll be updated in UpdateSelf.
110 (CreationDate): getter calls ToLocalTime, setter calls
112 (LastActivityDate): same.
113 (LastLoginDate): same.
114 (LastPasswordChangedDate): same.
115 (LastLockoutDate): same.
117 * Membership.cs (.cctor): use
118 ProvidersHelper.InstantitateProviders, and remove some unnecessary
121 2006-03-29 Chris Toshok <toshok@ximian.com>
123 * SqlRoleProvider.cs: do the LOWER's in SQL, not in C#.
125 2006-03-23 Chris Toshok <toshok@ximian.com>
127 * Roles.cs: make this 2.0 configuration aware.
129 * SqlRoleProvider.cs: flesh out all the operations. the only
130 things that need dealing with are the Initialize method's handling
131 of a few parameters, and the ApplicationName property.
133 2006-03-23 Chris Toshok <toshok@ximian.com>
135 * DefaultAuthenticationModule.cs (OnDefaultAuthentication): always
136 set Thread.CurrentPrincipal, not just if we set it to the
139 2006-03-22 Chris Toshok <toshok@ximian.com>
141 * RoleManagerModule.cs: implement using info in Shackow's book.
143 * RolePrincipal.cs: flesh this out a bit more.
145 * DefaultAuthenticationModule.cs (OnDefaultAuthentication):
146 according to Shackow's book, this sets Thread.CurrentPrincipal as
147 well as HttpContext.Current.User.
149 2006-02-28 Chris Toshok <toshok@ximian.com>
151 * FormsAuthentication.cs: corcompare work.
153 * MembershipCreateUserException.cs: same.
155 * MembershipPasswordException.cs: same.
157 * AnonymousIdentificationModule.cs: same.
159 2006-02-01 Chris Toshok <toshok@ximian.com>
161 * FormsAuthentication.cs, Membership.cs,
162 FormsAuthenticationModule.cs, UrlAuthorizationModule.cs: oops,
163 replace GetWebApplicationSection with GetSection.
165 2006-02-01 Chris Toshok <toshok@ximian.com>
167 * FormsAuthentication.cs: CONFIGURATION_2_0 => NET_2_0.
168 simplifies the ifdef mess quite a bit.
170 * Membership.cs: same.
172 * FormsAuthenticationModule.cs: same.
174 * UrlAuthorizationModule.cs: same.
176 2006-01-04 Chris Toshok <toshok@ximian.com>
178 * FormsAuthentication.cs (Authenticate): add CONFIGURATION_2_0
185 2006-01-04 Chris Toshok <toshok@ximian.com>
187 * Membership.cs (.cctor): enable the code here under
190 2006-01-03 Chris Toshok <toshok@ximian.com>
192 * UrlAuthorizationModule.cs (OnAuthorizeRequest): add
193 CONFIGURATION_2_0 code here.
195 2005-12-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
197 * FormsAuthentication.cs: don't end the request in
198 RedirectFromLoginPage.
200 2005-12-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
202 * FormsAuthenticationModule.cs: expire the cookie. Fixes bug #77043.
203 Patch by Cyrille Colin.
205 2005-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
207 * FormsAuthenticationModule.cs: ignore any exception thrown when mapping
208 the provided virtual path to the physical one. Patch by Cyrille Colin.
210 2005-11-28 Chris Toshok <toshok@ximian.com>
212 * FormsAuthenticationModule.cs (OnAuthenticateRequest):
213 CONFIGURATION_2_0 work.
214 (OnEndRequest): same.
216 2005-09-09 Sebastien Pouliot <sebastien@ximian.com>
218 * DefaultAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
219 * DefaultAuthenticationModule.cs: Added LinkDemand for Minimal. Added
220 Demand for UnmanagedCode on constructor.
221 * FileAuthorizationModule.cs: Added LinkDemand for Minimal. Added
222 Demand for UnmanagedCode on constructor.
223 * FormsAuthentication.cs: Added LinkDemand for Minimal.
224 * FormsAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
225 * FormsAuthenticationModule.cs: Added LinkDemand for Minimal. Added
226 Demand for UnmanagedCode on constructor.
227 * FormsAuthenticationTicket.cs: Added LinkDemand for Minimal.
228 * FormsIdentity.cs: Added LinkDemand for Minimal.
229 * PassportAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
230 * PassportAuthenticationModule.cs: Added LinkDemand for Minimal. Added
231 Demand for UnmanagedCode on constructor.
232 * PassportIdentity.cs: Added LinkDemand for Minimal. Added Demand for
233 UnmanagedCode on constructor.
234 * UrlAuthorizationModule.cs: Added LinkDemand for Minimal. Added
235 Demand for UnmanagedCode on constructor.
236 * WindowsAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
237 * WindowsAuthenticationModule.cs: Added LinkDemand for Minimal. Added
238 Demand for UnmanagedCode on constructor.
240 2005-09-01 Sebastien Pouliot <sebastien@ximian.com>
242 * FormsAuthenticationEventArgs.cs: Ensure the setter for User is
243 protected by a demand for ControlPrincipal.
244 * PassportAuthenticationEventArgs.cs: Ensure the setter for User is
245 protected by a demand for ControlPrincipal.
246 * WindowsAuthenticationEventArgs.cs: Ensure the setter for User is
247 protected by a demand for ControlPrincipal.
249 2005-08-25 Sebastien Pouliot <sebastien@ximian.com>
251 * FormsAuthentication.cs: With 2.0 we can get the default properties
252 and call Initialize without a NRE.
254 2005-08-25 Sebastien Pouliot <sebastien@ximian.com>
256 * ActiveDirectoryConnectionProtection.cs: New (2.0) enum.
257 * ActiveDirectoryMembershipProvider.cs: Fixed 2.0 API.
258 * AnonymousIdentificationEventArgs.cs: Fixed AnonymousID property case.
259 * AnonymousIdentificationModule.cs: Fixed 2.0 API.
260 * FileAuthorizationModule.cs: Added static CheckFileAccessForUser in
262 * FormsAuthentication.cs: Added missing 2.0 properties with their
264 * MembershipCreateStatus.cs: Fixed enum values/names.
265 * MembershipProvider.cs: Added stub for [Decrypt|Encrypt]Password. Both
266 methods don't seems to work without an active provider.
267 * PassportIdentity.cs: Added IDispose for 2.0 profile.
268 * Roles.cs: Added missing beta2 bits and default values (which are the
269 only things working without a role provider (web.config).
270 * RolePrincipal.cs: Fixed 2.0 API. Implemented a few bits.
271 * SqlRoleProvider.cs: Fixed 2.0 API.
272 * UrlAuthorizationModule.cs: Added static CheckUrlAccessForPrincipal in
275 2005-08-24 Sebastien Pouliot <sebastien@ximian.com>
277 * MembershipUserCollection.cs: Fix exceptions.
279 2005-08-22 Sebastien Pouliot <sebastien@ximian.com>
281 * FormsAuthentication.cs: Add some 2.0 stuff required for Login*
284 2005-08-18 Sebastien Pouliot <sebastien@ximian.com>
286 * Membership.cs: Commented unworking parts of the .cctor to allow
287 testing the Login control.
288 * MembershipProviderCollection.cs: Fixed exception handling.
289 * SqlMembershipProvider.cs: Don't throw NotImplementedException
290 everywhere so Membership's .cctor (somewhat) works. Removed
291 Description property (not in beta2).
293 2005-07-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
295 * FormsAuthentication.cs: allow hardware acceleration support if
296 available. Sebastien dixit.
298 2005-07-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
300 * FormsAuthentication.cs: the init_vector must be the same accross
301 restarts, otherwise the cookie does not work even when a decryption
302 key is provided. Initialize it to the bytes of the cookie name. Fixes
305 2005-07-25 Eyal Alaluf <eyala@mainsoft.com>
307 * FormsAuthenticationModule.cs: Check for null config
309 2005-07-25 Miguel de Icaza <miguel@novell.com>
311 * FormsAuthentication.cs (SignOut): Force the cookie to have it
314 2005-07-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
316 * FormsAuthentication.cs: my previous patch missed a "small" detail: it
317 didn't include the verification key when computing/checking the
318 validation hash. Now this is really a MAC or HMAC or...
320 2005-07-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
322 * FormsAuthentication.cs:
323 * FormsAuthenticationTicket.cs: added support for validation and
324 encryption of the auth. cookie and improved serialization of the ticket.
326 2005-07-01 Lluis Sanchez Gual <lluis@novell.com>
328 * Membership.cs: Read provider info from the config file.
330 2005-06-10 Lluis Sanchez Gual <lluis@novell.com>
332 * MembershipUserCollection.cs:
333 * MembershipPasswordException.cs:
334 * RoleProviderCollection.cs:
335 * ActiveDirectoryMembershipProvider.cs:
336 * SqlMembershipProvider.cs:
337 * MembershipProvider.cs:
338 * SqlRoleProvider.cs:
341 * MembershipProviderCollection.cs:
343 * RoleProvider.cs: Track api changes in ASP.NET 2.0. Implemented
344 some missing methods.
346 * AccessRoleProvider.cs:
347 * AccessMembershipProvider.cs: Removed.
349 * MembershipCreateUserException.cs:
350 * MembershipValidatePasswordEventHandler.cs:
351 * ValidatePasswordEventArgs.cs: Implemented.
353 2005-05-21 Sebastien Pouliot <sebastien@ximian.com>
355 * FormsAuthentication.cs: Hash the UTF8 representation of the password
356 strings (to be compatible with Microsoft implementation).
358 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
360 * FormsAuthentication.cs:
361 * PassportAuthenticationModule.cs:
362 * WindowsAuthenticationModule.cs: removed warnings.
364 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
366 * FormsAuthenticationModule.cs: fix for bug 73545, which caused
367 authentication not to work when the cookie was not persistent.
368 Patch by Ilya Kharmatsky (Mainsoft).
370 2005-02-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
372 * FormsAuthentication.cs: make the string to be stored in a config.
373 file uppercase... See bug #72557.
375 2005-02-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
377 * FormsAuthentication.cs: fixed typo when getting the hash for the
378 password in SHA1 and MD5. Thanks to Tadas Dailyda.
379 Lock on a static object instead of typeof(FormsAuthentication).
381 2004-11-18 Lluis Sanchez Gual <lluis@novell.com>
383 * RoleProvider.cs, Roles.cs, SqlRoleProvider.cs, RoleProviderCollection.cs,
384 AccessRoleProvider.cs: IRoleProvider has been renamed to ProviderBase.
385 * IMembershipProvider.cs: Deleted.
386 * MembershipProvider.cs, AccessMembershipProvider.cs, MembershipUser.cs,
387 Membership.cs, ADMembershipProvider.cs, SqlMembershipProvider.cs
388 MembershipProviderCollection.cs: MembershipProvider has been deleted
389 and replaced by the abstract class MembershipProvider.
390 * MembershipProviderCollection.cs: Minor fixes.
391 * ADMembershipProvider.cs: Renamed to ActiveDirectoryMembershipProvider.cs.
393 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
395 * RoleProviderCollection.cs, MembershipProviderCollection.cs:
398 2004-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
400 * FormsAuthentication.cs: patch by Jim Pease to fix the date on renewal.
402 2004-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
404 * FormsAuthenticationModule.cs: don't renew expired cookies. Only renew
405 the cookie if SlidingExpiration is set. Thanks to Jim Pease.
407 2004-08-03 Sanjay Gupta <gsanjay@novell.com>
409 * MembershipSortOptions.cs:
410 * MembershipPasswordFormat.cs:
411 * MembershipOnlineStatus.cs:
412 * MembershipCreateStatus.cs:
413 * CookieProtection.cs: minor modifications.
415 2004-06-12 Pedro Martnez Juli <yoros@wanadoo.es>
417 * FormsAuthentication.cs: Undo last change.
419 2004-06-12 Pedro Martnez Juli <yoros@wanadoo.es>
421 * FormsAuthentication.cs: go to loginUrl from web.config settings
422 before try with the default ones.
424 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
426 * DefaultAuthenticationModule.cs: set the IPrincipal for this thread
427 once we have a user. Fixes bug #59683.
429 2004-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
431 * FormsAuthenticationModule.cs: re-read configuration files if needed
432 when determining if forms auth. is used.
434 2004-01-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
436 * FormsAuthentication.cs: added RequireSSL and SlidingExpiration.
438 2004-01-11 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
440 * PassportIdentity.cs: Added v 1.1 members
442 2003-11-25 Ben Maurer <bmaurer@users.sourceforge.net>
444 * AccessMembershipProvider.cs: New v2 file
445 * AccessRoleProvider.cs: New v2 file
446 * ADMembershipProvider.cs: New v2 file
447 * AnonymousIdentificationEventArgs.cs: New v2 file
448 * AnonymousIdentificationEventHandler.cs: New v2 file
449 * AnonymousIdentificationModule.cs: New v2 file
450 * CookieProtection.cs: New v2 file
451 * IMembershipProvider.cs: New v2 file
452 * IRoleProvider.cs: New v2 file
453 * Membership.cs: New v2 file
454 * MembershipCreateStatus.cs: New v2 file
455 * MembershipCreateUserException.cs: New v2 file
456 * MembershipOnlineStatus.cs: New v2 file
457 * MembershipPasswordException.cs: New v2 file
458 * MembershipPasswordFormat.cs: New v2 file
459 * MembershipProviderCollection.cs: New v2 file
460 * MembershipSortOptions.cs: New v2 file
461 * MembershipUser.cs: New v2 file
462 * MembershipUserCollection.cs: New v2 file
463 * RoleManagerEventArgs.cs: New v2 file
464 * RoleManagerEventHandler.cs: New v2 file
465 * RoleManagerModule.cs: New v2 file
466 * RolePrincipal.cs: New v2 file
467 * RoleProviderCollection.cs: New v2 file
468 * Roles.cs: New v2 file
469 * SqlMembershipProvider.cs: New v2 file
470 * SqlRoleProvider.cs: New v2 file
472 2003-11-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
474 * FormsAuthentication.cs: encoding updates.
476 2003-10-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
478 * FormsAuthenticationModule.cs: fixed for applications other than /.
480 2003-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
482 * UrlAuthorizationModule.cs: fixed description for status code.
484 2003-07-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
486 * FormsAuthenticationModule.cs: really renew the ticket. Thanks to
487 Jens Thiel <Jens@Thiel.DE>.
489 2003-02-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
491 * UrlAuthorizationModule.cs: tell the application not to run any other
492 step apart from EndRequest.
494 2003-02-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
496 * FormsAuthentication.cs: implemented RedirectFromLoginPage and
499 * FormsAuthenticationModule.cs: redirect to the login page when a 401
502 * UrlAuthorizationModule.cs: check for valid user or render error page.
504 2003-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
506 * DefaultAuthenticationModule.cs: implemented. It just create a default
507 unauthenticated user when no one else provided one.
509 * FormsAuthenticationModule.cs: removed debug output.
511 2002-12-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
513 * FormsAuthenticationModule.cs: remove debug lines.
515 2002-12-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
517 * FormsAuthentication.cs: return a null ticket when an exception is
518 thrown creating it. Implemented RenewTicketIfOld.
520 * FormsAuthenticationModule.cs: implemented event handlers for
521 AuthenticateRequest and EndRequest.
523 * FormsAuthenticationTicket.cs: implemented SetDates and Clone methods.
525 2002-12-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
527 * FormsAuthentication.cs: implemented GetAuthCookie, SetAuthCookie,
528 SignOut, FormsCookieName and FormsCookiePath.
530 2002-12-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
532 * FormsAuthentication.cs: implemented Authenticate, unencrypted Encrypt
533 and Decrypt, HashPasswordForStoringInConfigFile and Initialize.
535 * FormsAuthenticationTicket.cs: set cookiePath to the default when no
538 2002-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
540 * DefaultAuthenticationEventHandler.cs:
541 * DefaultAuthenticationModule.cs:
542 * FileAuthorizationModule.cs:
543 * FormsAuthentication.cs:
544 * FormsAuthenticationEventArgs.cs:
545 * FormsAuthenticationEventHandler.cs:
546 * FormsAuthenticationModule.cs:
547 * FormsAuthenticationTicket.cs:
549 * PassportAuthenticationEventArgs.cs:
550 * PassportAuthenticationEventHandler.cs:
551 * PassportAuthenticationModule.cs:
552 * PassportIdentity.cs:
553 * UrlAuthorizationModule.cs:
554 * WindowsAuthenticationEventArgs.cs:
555 * WindowsAuthenticationEventHandler.cs:
556 * WindowsAuthenticationModule.cs: new files. Some of them implemented,
557 some others stubbed out.
559 2002-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
561 * DefaultAuthenticationEventArgs.cs: added file.