1 2006-08-27 Konstantin Triger <kostat@mainsoft.com>
3 * SqlRoleProvider.cs: enable concurrent usage, refactoring.
5 2006-08-27 Konstantin Triger <kostat@mainsoft.com>
7 * SqlMembershipProvider.cs: enable concurrent usage, refactoring.
9 2006-08-27 Vladimir Krasnov <vladimirk@mainsoft.com>
11 * SqlMembershipProvider.cs: fixed ValidateUser, bug when user
14 2006-08-14 Gonzalo Paniagua Javier <gonzalo@ximian.com>
16 * FormsAuthentication.cs: set the Secure attribute of the authentication
19 2006-07-06 Konstantin Triger <kostat@mainsoft.com>
21 * FormsAuthentication.cs: Ensure initialized, fix url mapping.
23 2006-05-03 Chris Toshok <toshok@ximian.com>
25 * SqlMembershipProvider.cs (GetAlg): move this here for the time
26 being, as it's the only class that uses it.
27 (HashAndBase64Encode): nuke.
28 (EncryptAndBase64Encode): nuke.
29 (Base64DecodeAndDecrypt): nuke.
30 (DecryptPassword): new function.
31 (EncryptPassword): new function.
32 (ChangePassword): replace the switch with a call to
34 (ChangePasswordQuestionAndAnswer): same.
36 (ResetPassword): same.
37 (ValidateUsingPassword): same.
38 (ValidateUsingPasswordAnswer): same.
39 (GetPassword): same, and throw MembershipPasswordException if the
40 password answer is incorrect.
42 * MembershipProvider.cs (InitVector): nuke this. it's actually
43 the salt from the database (for the sql provider, anyway).
44 (EncodePassword): based on the password format, password, and
45 salt, encode it. Makes use of EncryptPassword.
46 (DecodePassword): likewise for decoding, makes use of
48 (DecryptPassword): revert this to throwing
49 NotImplementedException, as the sql provideroverrides it to
50 perform the actual decryption.
51 (EncryptPassword): same.
53 2006-05-02 Chris Toshok <toshok@ximian.com>
55 * SqlMembershipProvider.cs: 85% complete, maybe more. The major
56 functionality should work. Password retrieval (and encrypted
57 passwords in general) is untested.
59 2006-05-01 Chris Toshok <toshok@ximian.com>
61 * Membership.cs (GeneratePassword): don't include quotes (',",`)
62 in the set of characters in the generated passwords.
64 2006-05-01 Chris Toshok <toshok@ximian.com>
66 * MembershipProvider.cs (GetAlg): switch from Exception to
67 ProviderException to match MS behavior (and fix the unit test.)
69 * Membership.cs (GeneratePassword): implement.
71 2006-05-01 Chris Toshok <toshok@ximian.com>
73 * SqlMembershipProvider.cs: lots more work. checking this in in
74 its present state because I don't want to lose it. It still needs
77 * Membership.cs (.cctor): remove the fallback.
78 (ValidatingPassword): remove the MonoTODO.
80 * MembershipProvider.cs (DecryptPassword): implement.
81 (EncryptPassword): implement.
82 (GetAlg): helper function for Decrypt/EncryptPassword.
85 2006-04-27 Chris Toshok <toshok@ximian.com>
87 * SqlMembershipProvider.cs (GeneratePassword): call
88 Membership.GeneratePassword with the configured minimum strength
91 2006-04-27 Chris Toshok <toshok@ximian.com>
93 * SqlMembershipProvider.cs (UnlockUser): fix sql query, and move
94 the CheckPararm call to the top of the method.
96 2006-04-12 Chris Toshok <toshok@ximian.com>
98 * SqlMembershipProvider.cs: commit initial pass at
99 SqlMembershipProvider work. lots of stuff untested in here.
101 2006-04-11 Chris Toshok <toshok@ximian.com>
103 * MembershipUser.cs (.ctor): per Shackow's book, all DateTime's
104 are converted using ToUniversalTime when passed into this class.
105 (UpdateSelf): update ourselves from the passed in MembershipUser,
106 swallowing NotSupportedExceptions.
107 (UpdateUser): fetch a new MembershipUser from the db and call
109 (ChangePassword): call UpdateUser after changing the password.
110 (ChangePasswordQuestionAndAnswer): same.
111 (ResetPassword): same.
112 (UnlockUser): same. Also, don't explicitly set isLockedOut.
113 It'll be updated in UpdateSelf.
114 (CreationDate): getter calls ToLocalTime, setter calls
116 (LastActivityDate): same.
117 (LastLoginDate): same.
118 (LastPasswordChangedDate): same.
119 (LastLockoutDate): same.
121 * Membership.cs (.cctor): use
122 ProvidersHelper.InstantitateProviders, and remove some unnecessary
125 2006-03-29 Chris Toshok <toshok@ximian.com>
127 * SqlRoleProvider.cs: do the LOWER's in SQL, not in C#.
129 2006-03-23 Chris Toshok <toshok@ximian.com>
131 * Roles.cs: make this 2.0 configuration aware.
133 * SqlRoleProvider.cs: flesh out all the operations. the only
134 things that need dealing with are the Initialize method's handling
135 of a few parameters, and the ApplicationName property.
137 2006-03-23 Chris Toshok <toshok@ximian.com>
139 * DefaultAuthenticationModule.cs (OnDefaultAuthentication): always
140 set Thread.CurrentPrincipal, not just if we set it to the
143 2006-03-22 Chris Toshok <toshok@ximian.com>
145 * RoleManagerModule.cs: implement using info in Shackow's book.
147 * RolePrincipal.cs: flesh this out a bit more.
149 * DefaultAuthenticationModule.cs (OnDefaultAuthentication):
150 according to Shackow's book, this sets Thread.CurrentPrincipal as
151 well as HttpContext.Current.User.
153 2006-02-28 Chris Toshok <toshok@ximian.com>
155 * FormsAuthentication.cs: corcompare work.
157 * MembershipCreateUserException.cs: same.
159 * MembershipPasswordException.cs: same.
161 * AnonymousIdentificationModule.cs: same.
163 2006-02-01 Chris Toshok <toshok@ximian.com>
165 * FormsAuthentication.cs, Membership.cs,
166 FormsAuthenticationModule.cs, UrlAuthorizationModule.cs: oops,
167 replace GetWebApplicationSection with GetSection.
169 2006-02-01 Chris Toshok <toshok@ximian.com>
171 * FormsAuthentication.cs: CONFIGURATION_2_0 => NET_2_0.
172 simplifies the ifdef mess quite a bit.
174 * Membership.cs: same.
176 * FormsAuthenticationModule.cs: same.
178 * UrlAuthorizationModule.cs: same.
180 2006-01-04 Chris Toshok <toshok@ximian.com>
182 * FormsAuthentication.cs (Authenticate): add CONFIGURATION_2_0
189 2006-01-04 Chris Toshok <toshok@ximian.com>
191 * Membership.cs (.cctor): enable the code here under
194 2006-01-03 Chris Toshok <toshok@ximian.com>
196 * UrlAuthorizationModule.cs (OnAuthorizeRequest): add
197 CONFIGURATION_2_0 code here.
199 2005-12-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
201 * FormsAuthentication.cs: don't end the request in
202 RedirectFromLoginPage.
204 2005-12-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
206 * FormsAuthenticationModule.cs: expire the cookie. Fixes bug #77043.
207 Patch by Cyrille Colin.
209 2005-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
211 * FormsAuthenticationModule.cs: ignore any exception thrown when mapping
212 the provided virtual path to the physical one. Patch by Cyrille Colin.
214 2005-11-28 Chris Toshok <toshok@ximian.com>
216 * FormsAuthenticationModule.cs (OnAuthenticateRequest):
217 CONFIGURATION_2_0 work.
218 (OnEndRequest): same.
220 2005-09-09 Sebastien Pouliot <sebastien@ximian.com>
222 * DefaultAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
223 * DefaultAuthenticationModule.cs: Added LinkDemand for Minimal. Added
224 Demand for UnmanagedCode on constructor.
225 * FileAuthorizationModule.cs: Added LinkDemand for Minimal. Added
226 Demand for UnmanagedCode on constructor.
227 * FormsAuthentication.cs: Added LinkDemand for Minimal.
228 * FormsAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
229 * FormsAuthenticationModule.cs: Added LinkDemand for Minimal. Added
230 Demand for UnmanagedCode on constructor.
231 * FormsAuthenticationTicket.cs: Added LinkDemand for Minimal.
232 * FormsIdentity.cs: Added LinkDemand for Minimal.
233 * PassportAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
234 * PassportAuthenticationModule.cs: Added LinkDemand for Minimal. Added
235 Demand for UnmanagedCode on constructor.
236 * PassportIdentity.cs: Added LinkDemand for Minimal. Added Demand for
237 UnmanagedCode on constructor.
238 * UrlAuthorizationModule.cs: Added LinkDemand for Minimal. Added
239 Demand for UnmanagedCode on constructor.
240 * WindowsAuthenticationEventArgs.cs: Added LinkDemand for Minimal.
241 * WindowsAuthenticationModule.cs: Added LinkDemand for Minimal. Added
242 Demand for UnmanagedCode on constructor.
244 2005-09-01 Sebastien Pouliot <sebastien@ximian.com>
246 * FormsAuthenticationEventArgs.cs: Ensure the setter for User is
247 protected by a demand for ControlPrincipal.
248 * PassportAuthenticationEventArgs.cs: Ensure the setter for User is
249 protected by a demand for ControlPrincipal.
250 * WindowsAuthenticationEventArgs.cs: Ensure the setter for User is
251 protected by a demand for ControlPrincipal.
253 2005-08-25 Sebastien Pouliot <sebastien@ximian.com>
255 * FormsAuthentication.cs: With 2.0 we can get the default properties
256 and call Initialize without a NRE.
258 2005-08-25 Sebastien Pouliot <sebastien@ximian.com>
260 * ActiveDirectoryConnectionProtection.cs: New (2.0) enum.
261 * ActiveDirectoryMembershipProvider.cs: Fixed 2.0 API.
262 * AnonymousIdentificationEventArgs.cs: Fixed AnonymousID property case.
263 * AnonymousIdentificationModule.cs: Fixed 2.0 API.
264 * FileAuthorizationModule.cs: Added static CheckFileAccessForUser in
266 * FormsAuthentication.cs: Added missing 2.0 properties with their
268 * MembershipCreateStatus.cs: Fixed enum values/names.
269 * MembershipProvider.cs: Added stub for [Decrypt|Encrypt]Password. Both
270 methods don't seems to work without an active provider.
271 * PassportIdentity.cs: Added IDispose for 2.0 profile.
272 * Roles.cs: Added missing beta2 bits and default values (which are the
273 only things working without a role provider (web.config).
274 * RolePrincipal.cs: Fixed 2.0 API. Implemented a few bits.
275 * SqlRoleProvider.cs: Fixed 2.0 API.
276 * UrlAuthorizationModule.cs: Added static CheckUrlAccessForPrincipal in
279 2005-08-24 Sebastien Pouliot <sebastien@ximian.com>
281 * MembershipUserCollection.cs: Fix exceptions.
283 2005-08-22 Sebastien Pouliot <sebastien@ximian.com>
285 * FormsAuthentication.cs: Add some 2.0 stuff required for Login*
288 2005-08-18 Sebastien Pouliot <sebastien@ximian.com>
290 * Membership.cs: Commented unworking parts of the .cctor to allow
291 testing the Login control.
292 * MembershipProviderCollection.cs: Fixed exception handling.
293 * SqlMembershipProvider.cs: Don't throw NotImplementedException
294 everywhere so Membership's .cctor (somewhat) works. Removed
295 Description property (not in beta2).
297 2005-07-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
299 * FormsAuthentication.cs: allow hardware acceleration support if
300 available. Sebastien dixit.
302 2005-07-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
304 * FormsAuthentication.cs: the init_vector must be the same accross
305 restarts, otherwise the cookie does not work even when a decryption
306 key is provided. Initialize it to the bytes of the cookie name. Fixes
309 2005-07-25 Eyal Alaluf <eyala@mainsoft.com>
311 * FormsAuthenticationModule.cs: Check for null config
313 2005-07-25 Miguel de Icaza <miguel@novell.com>
315 * FormsAuthentication.cs (SignOut): Force the cookie to have it
318 2005-07-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
320 * FormsAuthentication.cs: my previous patch missed a "small" detail: it
321 didn't include the verification key when computing/checking the
322 validation hash. Now this is really a MAC or HMAC or...
324 2005-07-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
326 * FormsAuthentication.cs:
327 * FormsAuthenticationTicket.cs: added support for validation and
328 encryption of the auth. cookie and improved serialization of the ticket.
330 2005-07-01 Lluis Sanchez Gual <lluis@novell.com>
332 * Membership.cs: Read provider info from the config file.
334 2005-06-10 Lluis Sanchez Gual <lluis@novell.com>
336 * MembershipUserCollection.cs:
337 * MembershipPasswordException.cs:
338 * RoleProviderCollection.cs:
339 * ActiveDirectoryMembershipProvider.cs:
340 * SqlMembershipProvider.cs:
341 * MembershipProvider.cs:
342 * SqlRoleProvider.cs:
345 * MembershipProviderCollection.cs:
347 * RoleProvider.cs: Track api changes in ASP.NET 2.0. Implemented
348 some missing methods.
350 * AccessRoleProvider.cs:
351 * AccessMembershipProvider.cs: Removed.
353 * MembershipCreateUserException.cs:
354 * MembershipValidatePasswordEventHandler.cs:
355 * ValidatePasswordEventArgs.cs: Implemented.
357 2005-05-21 Sebastien Pouliot <sebastien@ximian.com>
359 * FormsAuthentication.cs: Hash the UTF8 representation of the password
360 strings (to be compatible with Microsoft implementation).
362 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
364 * FormsAuthentication.cs:
365 * PassportAuthenticationModule.cs:
366 * WindowsAuthenticationModule.cs: removed warnings.
368 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
370 * FormsAuthenticationModule.cs: fix for bug 73545, which caused
371 authentication not to work when the cookie was not persistent.
372 Patch by Ilya Kharmatsky (Mainsoft).
374 2005-02-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
376 * FormsAuthentication.cs: make the string to be stored in a config.
377 file uppercase... See bug #72557.
379 2005-02-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
381 * FormsAuthentication.cs: fixed typo when getting the hash for the
382 password in SHA1 and MD5. Thanks to Tadas Dailyda.
383 Lock on a static object instead of typeof(FormsAuthentication).
385 2004-11-18 Lluis Sanchez Gual <lluis@novell.com>
387 * RoleProvider.cs, Roles.cs, SqlRoleProvider.cs, RoleProviderCollection.cs,
388 AccessRoleProvider.cs: IRoleProvider has been renamed to ProviderBase.
389 * IMembershipProvider.cs: Deleted.
390 * MembershipProvider.cs, AccessMembershipProvider.cs, MembershipUser.cs,
391 Membership.cs, ADMembershipProvider.cs, SqlMembershipProvider.cs
392 MembershipProviderCollection.cs: MembershipProvider has been deleted
393 and replaced by the abstract class MembershipProvider.
394 * MembershipProviderCollection.cs: Minor fixes.
395 * ADMembershipProvider.cs: Renamed to ActiveDirectoryMembershipProvider.cs.
397 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
399 * RoleProviderCollection.cs, MembershipProviderCollection.cs:
402 2004-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
404 * FormsAuthentication.cs: patch by Jim Pease to fix the date on renewal.
406 2004-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
408 * FormsAuthenticationModule.cs: don't renew expired cookies. Only renew
409 the cookie if SlidingExpiration is set. Thanks to Jim Pease.
411 2004-08-03 Sanjay Gupta <gsanjay@novell.com>
413 * MembershipSortOptions.cs:
414 * MembershipPasswordFormat.cs:
415 * MembershipOnlineStatus.cs:
416 * MembershipCreateStatus.cs:
417 * CookieProtection.cs: minor modifications.
419 2004-06-12 Pedro Martnez Juli <yoros@wanadoo.es>
421 * FormsAuthentication.cs: Undo last change.
423 2004-06-12 Pedro Martnez Juli <yoros@wanadoo.es>
425 * FormsAuthentication.cs: go to loginUrl from web.config settings
426 before try with the default ones.
428 2004-06-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
430 * DefaultAuthenticationModule.cs: set the IPrincipal for this thread
431 once we have a user. Fixes bug #59683.
433 2004-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
435 * FormsAuthenticationModule.cs: re-read configuration files if needed
436 when determining if forms auth. is used.
438 2004-01-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
440 * FormsAuthentication.cs: added RequireSSL and SlidingExpiration.
442 2004-01-11 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
444 * PassportIdentity.cs: Added v 1.1 members
446 2003-11-25 Ben Maurer <bmaurer@users.sourceforge.net>
448 * AccessMembershipProvider.cs: New v2 file
449 * AccessRoleProvider.cs: New v2 file
450 * ADMembershipProvider.cs: New v2 file
451 * AnonymousIdentificationEventArgs.cs: New v2 file
452 * AnonymousIdentificationEventHandler.cs: New v2 file
453 * AnonymousIdentificationModule.cs: New v2 file
454 * CookieProtection.cs: New v2 file
455 * IMembershipProvider.cs: New v2 file
456 * IRoleProvider.cs: New v2 file
457 * Membership.cs: New v2 file
458 * MembershipCreateStatus.cs: New v2 file
459 * MembershipCreateUserException.cs: New v2 file
460 * MembershipOnlineStatus.cs: New v2 file
461 * MembershipPasswordException.cs: New v2 file
462 * MembershipPasswordFormat.cs: New v2 file
463 * MembershipProviderCollection.cs: New v2 file
464 * MembershipSortOptions.cs: New v2 file
465 * MembershipUser.cs: New v2 file
466 * MembershipUserCollection.cs: New v2 file
467 * RoleManagerEventArgs.cs: New v2 file
468 * RoleManagerEventHandler.cs: New v2 file
469 * RoleManagerModule.cs: New v2 file
470 * RolePrincipal.cs: New v2 file
471 * RoleProviderCollection.cs: New v2 file
472 * Roles.cs: New v2 file
473 * SqlMembershipProvider.cs: New v2 file
474 * SqlRoleProvider.cs: New v2 file
476 2003-11-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
478 * FormsAuthentication.cs: encoding updates.
480 2003-10-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
482 * FormsAuthenticationModule.cs: fixed for applications other than /.
484 2003-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
486 * UrlAuthorizationModule.cs: fixed description for status code.
488 2003-07-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
490 * FormsAuthenticationModule.cs: really renew the ticket. Thanks to
491 Jens Thiel <Jens@Thiel.DE>.
493 2003-02-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
495 * UrlAuthorizationModule.cs: tell the application not to run any other
496 step apart from EndRequest.
498 2003-02-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
500 * FormsAuthentication.cs: implemented RedirectFromLoginPage and
503 * FormsAuthenticationModule.cs: redirect to the login page when a 401
506 * UrlAuthorizationModule.cs: check for valid user or render error page.
508 2003-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
510 * DefaultAuthenticationModule.cs: implemented. It just create a default
511 unauthenticated user when no one else provided one.
513 * FormsAuthenticationModule.cs: removed debug output.
515 2002-12-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
517 * FormsAuthenticationModule.cs: remove debug lines.
519 2002-12-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
521 * FormsAuthentication.cs: return a null ticket when an exception is
522 thrown creating it. Implemented RenewTicketIfOld.
524 * FormsAuthenticationModule.cs: implemented event handlers for
525 AuthenticateRequest and EndRequest.
527 * FormsAuthenticationTicket.cs: implemented SetDates and Clone methods.
529 2002-12-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
531 * FormsAuthentication.cs: implemented GetAuthCookie, SetAuthCookie,
532 SignOut, FormsCookieName and FormsCookiePath.
534 2002-12-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
536 * FormsAuthentication.cs: implemented Authenticate, unencrypted Encrypt
537 and Decrypt, HashPasswordForStoringInConfigFile and Initialize.
539 * FormsAuthenticationTicket.cs: set cookiePath to the default when no
542 2002-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
544 * DefaultAuthenticationEventHandler.cs:
545 * DefaultAuthenticationModule.cs:
546 * FileAuthorizationModule.cs:
547 * FormsAuthentication.cs:
548 * FormsAuthenticationEventArgs.cs:
549 * FormsAuthenticationEventHandler.cs:
550 * FormsAuthenticationModule.cs:
551 * FormsAuthenticationTicket.cs:
553 * PassportAuthenticationEventArgs.cs:
554 * PassportAuthenticationEventHandler.cs:
555 * PassportAuthenticationModule.cs:
556 * PassportIdentity.cs:
557 * UrlAuthorizationModule.cs:
558 * WindowsAuthenticationEventArgs.cs:
559 * WindowsAuthenticationEventHandler.cs:
560 * WindowsAuthenticationModule.cs: new files. Some of them implemented,
561 some others stubbed out.
563 2002-06-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
565 * DefaultAuthenticationEventArgs.cs: added file.