Commit Graph

188 Commits

Author SHA1 Message Date
Shannon
6efd14eff3 Updates the startup auth code extension methods to better support extensibility so people could override the default user store or manager in order to implement some interfaces that we currently don't. 2015-04-01 13:42:31 +11:00
Shannon
e468492064 Updates back office ext methods to include the CallbackPath which is key to make multi-tenanted work and ensures that the back office providers are linked with the umbraco back office external cookie provider. Adds some docs about it too. Updates the web.config templates to ensure the correct assembly redirects. 2015-04-01 13:42:29 +11:00
Shannon
880c9cf679 Updates back office extensions to use AuthenticationDescriptionOptionsExtension to configure the options for umb back office 2015-04-01 13:42:19 +11:00
Shannon
bf59510c68 Removes setting the default sign in auth type - this is a user setting, we cannot modify that. 2015-04-01 13:42:16 +11:00
Shannon
86833aa8bf Updates the back office external cookie name to be consistently cased with the other back office cookie names 2015-04-01 13:42:11 +11:00
Shannon
4dcc4807ed Implements IUserSecurityStore and ensures there is a security stamp token in place, have updated the repository layer to manual update this if ASPNet Identity APIs are not used to update users. 2015-04-01 13:42:09 +11:00
Shannon
90b562a0a1 Update the PostLogin method to write the auth ticket the way that webapi is supposed to, not sure how this was actually working before because writing cookies directly with HttpContext and then also using WebApi normally doesn't work (maybe in very specific circumstances), so now the cookie writing is done consistently and it is working, prior to this i was getting lots of issues with the xsrf tokens. Updated some user model mappings for convenience and update naming conventions for some properties of the BackOfficeIdentityUser for consistency. 2015-04-01 13:42:07 +11:00
Shannon
5a88ff774c adds overload to specify custom backoffice user store for custom implementations (i.e. 2 factor auth, etc...) 2015-04-01 13:41:57 +11:00
Shannon
b269760b21 removes the BackOfficeRoleManager since we don't use roles in the back office (sections i suppose) and we can't dynamically just create them, that doesn't make sense. 2015-04-01 13:41:55 +11:00
Shannon
2d72a66879 Updates OwinStartup and split the methods into an extension methods file complete with documentation on how to implement the providers. Tested the microsoft provider. Now to clean things up: remove the 3rd party package installs to be ready for shipping, ensure that the user parts are extensible enough for people to plugin their own interfaces. 2015-04-01 13:41:50 +11:00
Shannon
7dc50fda26 moves NaiveSessionCache to web proj 2015-04-01 13:41:48 +11:00
Shannon
4b156ba27e Starts stubbing out role manager code 2015-04-01 13:41:43 +11:00
Shannon
52c4d80cfc more identity awesome 2015-04-01 13:41:33 +11:00
Shannon
5d4d209030 Gets external cookies working with a custom auth type (so we don't interfere with the 'default') 2015-04-01 13:41:31 +11:00
Shannon
d9f453d860 Gets the user store up to date with the correct queries. 2015-04-01 13:41:28 +11:00
Shannon
8c51e8bad8 Implements IExternalLoginService and the db table, implements more logic to start enabling this to work in the back office, need to implement the rest of the userstore and then implement a way once logged in to the back office to allow users to link their accounts with external logins. Currently if an external login is detected during startup and it has not been linked we'll throw an exception. Very very close to making this all work nicely. 2015-04-01 13:41:26 +11:00
Shannon
927add6f44 Updates UmbracoBackOfficeIdentity to add claims and adds a new ctor so people can create an identity manually - this is really the key, by doing this we'd already be able to have 3rd party authentication happening. Ensures our custom secure data format persists the user data 2015-04-01 13:41:21 +11:00
Shannon
48317d7e61 massively simplifies the cookie handling, we don't use our own and just use the defaults, the trick to not validating everything is to use the cookie path. This does mean that each clientside request will also be validated but there's no way to override this behavior in identity currently, the cookie handler is internal so unless we copy/paste all of it's code can't do much about that. 2015-04-01 13:41:18 +11:00
Shannon
93df2edec2 Initial install which now uses Identity middleware to perform the back office auth (no longer done in our module). Created custom data secure classes that use the legacy Forms auth logic for backwards compat. This means that the cookie can still be written the old way and still auth the new way if required. Now need to clean a lot of this up. 2015-04-01 13:41:16 +11:00
Shannon
028ddfe290 Starts adding asp.net identity 2015-04-01 13:41:13 +11:00
Shannon
d3eff734aa Merge branch 'dev-v7' into 7.3.0
Conflicts:
	build/UmbracoVersion.txt
	src/Umbraco.Core/Configuration/UmbracoVersion.cs
	src/Umbraco.Core/CoreBootManager.cs
	src/Umbraco.Core/Models/Template.cs
	src/Umbraco.Core/Persistence/Repositories/ContentTypeBaseRepository.cs
	src/Umbraco.Core/PropertyEditors/ParameterEditorResolver.cs
	src/Umbraco.Core/PropertyEditors/PropertyEditorResolver.cs
	src/Umbraco.Core/Services/LocalizedTextService.cs
	src/Umbraco.Core/Umbraco.Core.csproj
	src/Umbraco.Tests/Plugins/TypeFinderTests.cs
	src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
	src/Umbraco.Web/Editors/BackOfficeController.cs
	src/Umbraco.Web/Models/ContentExtensions.cs
	src/Umbraco.Web/PublishedContentExtensions.cs
	src/Umbraco.Web/Routing/PublishedContentRequestEngine.cs
	src/Umbraco.Web/Scheduling/Scheduler.cs
	src/Umbraco.Web/Umbraco.Web.csproj
2015-03-19 17:37:00 +11:00
Shannon
e5cf7b089c oops, added timeouts where they cannot exist for request cache, fixes build 2015-03-19 14:47:08 +11:00
Shannon
b9082cf390 Fixes our usages of GetCacheItem so that there is a timeout, this is needed otherwise memory won't be given back unless memory gets too high where in fact for most of these we want to give it back as soon as possible if it isn't being used. 2015-03-19 14:00:48 +11:00
Shannon
9a042fbbdf Removes the assignment of the DefaultPermissions property since this is auto assigned in the ctor (and should be assignable) 2015-03-03 19:40:37 +11:00
Shannon
c760a7c50d Merge branch 'dev-v7-7.3.0-UmbHelperInterfaces' of https://github.com/Shazwazza/Umbraco-CMS into Shazwazza-dev-v7-7.3.0-UmbHelperInterfaces
Conflicts:
	src/Umbraco.Web/Umbraco.Web.csproj
2015-02-18 17:14:55 +01:00
Shannon
428df7ae4a Merge branch 'dev-v7' into 7.3.0
Conflicts:
	src/Umbraco.Core/Umbraco.Core.csproj
	src/Umbraco.Web.UI/packages.config
	src/Umbraco.Web/Umbraco.Web.csproj
2015-02-17 15:11:10 +01:00
Shannon
80f81ce379 fixes: U4-6255 Add configurable option in base membership providers to toggle AllowManuallyChangingPassword 2015-02-12 15:58:11 +11:00
Shannon
5a76e380de Adds some extension methods, updates the PCR to not use the legacy access class... this actually also reduces a db lookup, made it not depenent on singletons. 2015-01-28 19:27:08 +11:00
Shannon
da778e277f Fixes: U4-6093 ContentService.SaveAndPublishDo changes Culture 2015-01-12 21:45:52 +11:00
Shannon
db087a9e78 pretty much got 5966 working just need to do some more tests. 2014-12-17 17:08:12 +11:00
Shannon
e1106a9d67 Merge branch '7.2.1-doctype-fixes' into 7.2.1
Conflicts:
	src/Umbraco.Core/Models/PropertyGroupCollection.cs
	src/Umbraco.Core/Persistence/Repositories/ContentTypeBaseRepository.cs
	src/Umbraco.Core/Services/ContentTypeService.cs
	src/Umbraco.Tests/PublishedContent/PublishedContentExtensionTests.cs
	src/Umbraco.Tests/Services/ContentTypeServiceTests.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/controls/ContentTypeControlNew.ascx.cs
2014-12-16 09:47:53 +11:00
Shannon
2936ff0bf9 Makes provider user key type for new membership provider configurable, by default it is int 2014-12-15 20:44:00 +11:00
Sebastiaan Janssen
7316c5462a U4-5928 Umbraco 7.2 RC GetCurrentMemberProfileModel Null Ref
#U4-5928 Fixed Due in version 7.2.1
2014-12-14 16:50:11 +01:00
Shannon
ad66613011 Updates ValidateCurrentUser so that it doesn't re-decrypt the cookie since that is already done, it just needs to check if the current user is authenticated and if it is a back office identity. Added lots of notes for extension points when we start looking at extending how the back office auth works. 2014-12-05 10:29:18 +11:00
Odie20XX
468c281d7d Update MembershipHelper.cs
The parameter "logMemberIn" wasn't used so setting "LoginOnSuccess" on the RegisterModel didn't have any effect. By checking the parameter you can disable automatically logging in the user after registration. If registration failed, it would have returned null in an earlier stage so it's safe to say registration succeeded at this point.
2014-10-31 15:30:20 +01:00
Shannon
d2592bd79f Fixes: U4-5456 Cannot access all properties of member via MembershipHelper methods 2014-10-02 21:05:20 +10:00
Stephan
56dddbca1c U4-5275 - use IPublishedContentModelFactory for members 2014-07-29 10:56:49 +02:00
Shannon
f83bbdbf90 Fixes: U4-5157 Membership.GetUser() causes 13 SQL queries, including duplicates 2014-07-08 18:54:36 +10:00
Shannon
5a810b584e Fixing: U4-5157 Membership.GetUser() causes 13 SQL queries, including duplicates 2014-07-08 18:07:59 +10:00
Shannon
f3c7533796 Potentially fixes U4-5069 Deadlock occurring in MemberService.GetByUsername 2014-07-01 10:43:44 +10:00
Shannon
aadcdc9c15 ensures session id is set on user data on login. 2014-05-22 13:17:15 +10:00
Shannon
ed292d34db oops fixed build 2014-05-08 19:03:40 +10:00
Shannon
94732cff00 Renames GetCurrent to GetCurrentMember to be inline with GetCurrentMemberId 2014-05-08 18:13:59 +10:00
Shannon
6506768f10 Adds GetCurrentMemberId as a method to MembershipHelper 2014-05-08 18:12:28 +10:00
Shannon
9e0d10d0a3 Adds Logout as a wrapper to formsauth in membershiphelper 2014-05-08 18:10:01 +10:00
Shannon
392b18f4dd Adds GetCurrent() to MembershipHelper 2014-05-08 18:08:06 +10:00
Shannon
d264792e18 Fixes: U4-4819 Publicize AuthenticationExtensions 2014-05-06 18:15:38 +10:00
Shannon
d3e925add9 Fixes: U4-4803 Need to expose CurrentUser on WebSecurity as public since IUser is now public 2014-05-06 14:49:43 +10:00
Shannon
d9ac529e7e Merge remote-tracking branch 'origin/6.2.0' into 7.1.2
Conflicts:
	src/Umbraco.Core/Models/PropertyType.cs
	src/Umbraco.Web.UI/umbraco_client/GenericProperty/genericProperty.js
	src/Umbraco.Web/WebServices/CoreStringsController.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/controls/ContentTypeControlNew.ascx.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/create/nodetypeTasks.cs
	src/umbraco.providers/members/UmbracoMembershipProvider.cs
2014-04-24 16:33:04 +10:00
Shannon
61055380c5 Ensures that member saving events don't get raised for normal member operations like validating and getting a user and flagging them as online. This fixes: U4-3451 Cache on Partial View refreshed, after member execute login 2014-04-24 16:26:21 +10:00