Commit Graph

156 Commits

Author SHA1 Message Date
sbwalker
e3233fd19f add defensive logic 2023-06-19 10:11:24 -04:00
sbwalker
95ba87945b optimize client assembly download service, add support for site level scripts 2023-05-25 12:32:21 -04:00
Ben Emamian
5fbb9160f1 Code Cleanups 2023-03-21 00:45:17 +11:00
Shaun Walker
81030f468b improve user profile error logging for external login 2023-03-11 14:03:24 -05:00
Shaun Walker
3065ed5094 fix issue with capturing user profile information during external login 2023-03-11 11:50:02 -05:00
Shaun Walker
5e1ac485a0 #2655 - add support for capturing user profile infrmation from claims during external login 2023-03-10 10:14:57 -05:00
Shaun Walker
2b41909d47 #2618 - add backward compatibility for permissions optimizations 2023-03-02 15:34:42 -05:00
Shaun Walker
8605e3ca5a Major refactoring replacing permission strings with permission collections. These changes will require extensive regression testing. These changes may include breaking changes which will need to be identified and resolved to provide backward compatibility. 2023-02-28 17:59:21 -05:00
Shaun Walker
f2df8e96db fix #2567 - migrate tenant connection string details from database to appsettings.json 2023-02-23 16:29:15 -05:00
Shaun Walker
e136972cd7 add support for API permissions at the UI layer - including ability to delegate user, role, profile management 2023-01-09 11:38:25 -05:00
Shaun Walker
67f740c264 fix #2503 - generate password using CultureInfo.InvariantCulture to ensure it satisfies password complexity criteria 2022-11-23 11:10:59 -05:00
Shaun Walker
2aa6eb90e2 add support for dynamic authorization policies 2022-11-04 08:08:10 -04:00
Shaun Walker
c5b632cb24 Enhance SyncManager to raise events which can be handled on the server within hosted services. Raise create, update, delete events for all major entities. Include support for refresh and reload events to synchronize client state. Move client state cache invalidation to a hosted service to separate concerns and demonstrate events. 2022-10-04 19:20:02 -04:00
Shaun Walker
ddf1caaaaa fix #2432 - add support for roles as part of external login via OIDC 2022-09-29 16:32:50 -04:00
Shaun Walker
cf2adc7f6a Fix satellite assembly loading issue when running on WebAssembly 2022-08-08 10:47:33 -04:00
Shaun Walker
b8a31a8be9 support for module translation download/install 2022-07-26 14:44:06 -04:00
Shaun Walker
5762ce58a4 introduce ITransientService interface for auto registration of transient services (for DBContexts and Repositories) 2022-07-26 09:41:42 -04:00
Shaun Walker
6bfab696ad optimize satellite assembly loading based on the new model where all cultures are available 2022-07-21 16:02:23 -04:00
Pavel Vesely
4f0a805c79 Exception is not saved to log 2022-06-09 10:24:13 +02:00
Shaun Walker
1978bf151f add support for external login parameters and improve diagnostic messages related to claims 2022-05-12 13:51:46 -04:00
Shaun Walker
c701895e29 external login improvements 2022-04-25 20:04:43 -04:00
Shaun Walker
e4c648ee92 completed antiforgery implementation, improved external login claim mapping, principal construction, and user experience 2022-04-22 17:54:20 -04:00
Shaun Walker
391713b84d Fix #2144 - install issue, Fix #2146 - move file issue, require verification of external login account linkage 2022-04-20 16:00:58 -04:00
Shaun Walker
f6b3874668 create separate API methods for tokens (short-lived) and personal access tokens (long-lived), include global antiforgery filter to mitigate XSRF when using cookie auth (ignored when using Jwt) 2022-04-14 19:41:43 -04:00
Shaun Walker
355d0405f4 minor improvements to security features, use ActivatorUtilities.CreateInstance with SiteMigration to enable simpler DI 2022-04-12 07:46:43 -04:00
Shaun Walker
683ad8959a dogfooding fixes 2022-04-04 10:53:40 -04:00
Shaun Walker
a70f1ee1e0 cleanup 2022-03-30 22:08:32 -04:00
Shaun Walker
8ddaf57e17 fix registration 2022-03-30 08:10:42 -04:00
Shaun Walker
3194c5b600 remote service support via Jwt 2022-03-30 08:07:03 -04:00
Shaun Walker
a97af42e4b add Jwt authorization support for for API 2022-03-28 21:51:55 -04:00
Shaun Walker
c8129607e8 cleanly separate SiteState service for client and server use cases 2022-03-27 21:05:44 -04:00
Shaun Walker
f9432acf1b remove SiteSettings from Alias for better separation of concerns 2022-03-27 19:47:52 -04:00
Shaun Walker
b92a888583 factor out auth constants, remove TAlias is Alias is not an extensible type, improve SiteOptions cache clearing, improve principal validation, localization improvements 2022-03-26 17:30:06 -04:00
Shaun Walker
79f427e10a consolidate user creation 2022-03-24 12:32:41 -04:00
Shaun Walker
9d86d923aa Add OAuth2 support 2022-03-23 10:51:52 -04:00
Shaun Walker
ca17dd3ca3 Allow Email Claim Type to be configurable 2022-03-21 16:29:28 -04:00
Shaun Walker
fb161ae783 OIDC improvements 2022-03-21 10:39:35 -04:00
Shaun Walker
4b19059df1 OIDC improvements 2022-03-21 09:12:18 -04:00
Shaun Walker
1a86b80c61 More improvements to OIDC support 2022-03-19 13:42:19 -04:00
Shaun Walker
39dfc00693 OIDC improvements 2022-03-16 17:28:32 -04:00
Shaun Walker
d51ba8f6dd Improve Principal handling for OIDC and resolve Logout issue (caused by AntiForgeryToken) 2022-03-14 22:28:41 -04:00
Shaun Walker
9bbbff31f8 Added support for per site options and OpenID Connect 2022-03-13 22:55:52 -04:00
Shaun Walker
5adecc307f Allow user identity password and lockout configuration to be customized. Included additional environment information in System Info. 2022-03-04 10:41:45 -05:00
Shaun Walker
1cdc80e09b 2 factor authentication and user account lockout completed 2022-03-03 09:12:37 -05:00
Shaun Walker
5aed64f614 fixed #1989 - installation on SQLite failing due to DropColumn, fixed #1986 - IClientStartup not getting called for External Modules, added ability to correlate new visitors by IP address 2022-02-10 08:05:55 -05:00
Shaun Walker
c635351a12 resolved UI error when closing Event Log and Visitor Management, made button class consistent in Recycle Bin, refactored RichTextEditor, made use of ConfigManager consistently throughout framework, added support for deleted Sites, removed reference to Runtime in Startup as it is now set per Site, added versioning to Html/Text, added Meta tag support to Page Management 2022-02-06 12:19:42 -05:00
Shaun Walker
9c32937c83 added support for url mapping and viitors 2021-12-09 08:48:56 -05:00
Shaun Walker
bb5ca475d3 fix #1628 - make DBContext Transient, modify Control Panel to use standard Bootstrap 5 offcanvas classes, add auto trimming to file logger, fix issue in File Repository related to populating Url on Add/Update. 2021-09-01 09:01:11 -04:00
hishamco
cf2d8531a3 Fix loading satellite assemblies 2021-07-07 20:38:53 +03:00
Shaun Walker
525cbb87b0 allow disabling of swagger and package service 2021-07-01 09:11:29 -04:00
Shaun Walker
eea417ff44 added logging for startup issues 2021-07-01 07:37:03 -04:00
Goti Ankit
d348e9715f Allowed pages for external module.
Login internal module while edit, resolved error to be edit.
2021-06-22 10:51:05 +05:30
Shaun Walker
3bc5744007 improved error handling, improved consistency of console error messages, added ability to add a Decimal column in Migrations 2021-06-18 13:01:42 -04:00
Shaun Walker
0a2293119e added back missing ITenantManager registration removed in #1245 2021-06-15 08:32:39 -04:00
Shaun Walker
f6cc11bd3b add logic removed in #1245 back to HttpClient creation 2021-06-15 08:23:26 -04:00
hishamco
7c181b65cd Fix merge conflict 2021-06-12 00:18:57 +03:00
hishamco
126024991c Merge remote-tracking branch 'upstream/dev' into clean-startup
# Conflicts:
#	Oqtane.Client/Program.cs
#	Oqtane.Server/Startup.cs
2021-06-11 23:54:38 +03:00
Shaun Walker
fbce6c7248 automate the 2.1.0 upgrade 2021-05-27 16:18:45 -04:00
Charles Nurse
4a609b444e Rename IOqtaneDatabase interface (and related base class) 2021-05-24 11:57:47 -07:00
Charles Nurse
47c04dc150 Convert Database projects so they build installable Packages rather than deploy to bin and modify installation to deploy Databases on demand as needed. 2021-05-20 12:39:09 -07:00
Charles Nurse
c036a9d11f Remove DbConfig and new constructors on DbContextBase and refactor Migrations to use explcit generation of IOqtaneDatabase instance 2021-05-12 15:17:40 -07:00
Shaun Walker
a5de639d15 optimizing tenant resolution and routing 2021-05-10 17:45:39 -04:00
hishamco
97fb6ede7e Reuse AddOqtaneScopedServices() 2021-04-20 19:10:06 +03:00
hishamco
f7d8888232 Refactor Program.cs 2021-04-20 19:01:56 +03:00
hishamco
e7f5fe9827 Merge branch 'database' into clean-startup
# Conflicts:
#	Oqtane.Server/Startup.cs
2021-04-20 17:42:39 +03:00
hishamco
a018e853a8 Register configuration in startup 2021-04-18 02:27:31 +03:00
hishamco
73b13d7a54 Add Oqtane extension methods for clean startup 2021-04-18 02:25:40 +03:00
Charles Nurse
2fb63e8117 Added suuport to inject an IOqtaneDatabase in EntityBuilders to allow each Database to control certain Migration behaviors. Also updated Installer to dynamically build Database Configuration section 2021-03-27 11:16:16 -07:00
Charles Nurse
3a032f401a Added IDatabase interface and refactored to use it to handle database type - updated Installer to dynamically add databases to selector 2021-03-24 11:45:44 -07:00
Charles Nurse
cbcfc88492 Add support for Sqlite - Installation path tested but AddSite not supported yet 2021-03-23 11:06:18 -07:00
Charles Nurse
83e5502111 Creation of EF Core Migrations - these execute using EF Tools, but are not integrated to run programmatically 2021-03-19 17:01:49 -07:00
Charles Nurse
8376a09ad6 Create new UseOqtaneDatabase extension method and replace all uses of UseSqlServer.
This is a preparative step to locate all database configuration in one file.
2021-03-06 14:13:06 -08:00
Leigh Pointer
c6e2c2e501 DirectorySeparator issue when black or forward slash.
Tested on Apple mac and Windows
2021-02-11 15:38:37 +01:00
Pavel Vesely
07711c082e FileController - content disposition 2020-12-15 11:06:52 +01:00
Pavel Vesely
14f8155df6 FileController fix
- using PhysicalFile framework method (current implementation causes file locks and 500 error at heavy load)
- Add correct mimetype to header based on file extension
2020-12-06 16:23:28 +01:00
hishamco
5e293ee298 Fix SupportedCultures bug 2020-12-03 17:25:01 +03:00
hishamco
20f1a6175f Use cookie everywhere 2020-12-03 17:15:08 +03:00
hishamco
322d45dd12 Runtime enum should be in Oqtane,Shared 2020-11-19 17:33:49 +03:00
Shaun Walker
b4b73b7e5a fixed compatibility issue in .NET5/WebAssembly where assemblies were not being loaded into the default AppDomain, optimized service registration on WebAssembly, fixed spelling mistake for satellite assemblies constant and fixed issue in LocalizableComponent 2020-11-03 14:41:49 -05:00
hishamco
86bb6d1ea8 Simplify localization settings configurations 2020-10-10 22:19:21 +03:00
hishamco
ce37d2f2d2 Skip missed satellite assemblies forlders 2020-10-03 23:26:44 +03:00
hishamco
bcb6c81e43 Avoid Building ServiceProvider in ConfigureServices 2020-10-03 22:41:48 +03:00
hishamco
2e2d46996a Refactoring 2020-09-30 00:07:00 +03:00
hishamco
f83c1b1741 Use invariant culture by default 2020-09-29 22:12:03 +03:00
hishamco
2924e7849f Read supported cultures from appsettings.json 2020-09-29 21:23:22 +03:00
hishamco
52d1d5841e Avoid looking for en-US culture resources 2020-09-29 18:50:06 +03:00
hishamco
accf947afd LoadClientAssemblies adds satellite assemblies 2020-09-29 18:28:02 +03:00
hishamco
ec73c958c9 AddOqtaneParts -> AddOqtane 2020-09-29 18:03:24 +03:00
hishamco
edecfa10cd Load satellite assemblies on startup 2020-09-29 17:31:54 +03:00
Shaun Walker
f81ef89c61 enhancement to load dependencies from the /bin if they are not loaded automatically 2020-06-22 16:58:41 -04:00
Pavel Vesely
da73d519d7 IClientStartup implementation 2020-05-12 10:00:28 +02:00
Pavel Vesely
7c814a67b3 IServerStartup implementation 2020-05-11 11:19:12 +02:00
Shaun Walker
f07146fd50 updated external module template to support new assembly loading criteria, fixed minor issue in assembky loading logic 2020-05-07 16:24:36 -04:00
Pavel Vesely
47f17a589f implementation of [OqtaneIgnore] class attribute in controls 2020-05-07 21:02:43 +02:00
Shaun Walker
80c7ab1e8e Enhancement to load debugging symbols ( *.pdb ) if they exist in the /bin folder. This enables debugging of modules. 2020-04-14 14:46:44 -04:00
Pavel Veselý
5af6f7a52d
Namespace Fix undo (#340) 2020-04-04 14:06:24 -04:00
Pavel Veselý
71bd3a8d6a
Namespace fix (#335) 2020-04-03 17:18:33 -04:00
Pavel Veselý
0b302c6e26
Startup migration bug (#320)
* Startup migration bug

* ModuleCreator - sql name fix

* Database Manager fixes and improvements

* Database Manager fixes and improvements - removed default password
2020-04-02 08:08:36 -04:00
Pavel Vesely
940cdcb349 Database Manager
done:
+ master.sql as resource
+ implemented incremental database changes also for Master
+ dbUp sql script variables implemented
+ improved database handling and creation code
+ simpified database creation
+ almost all Database and Tenant creation moved to DatabaseManager.cs (rest code marked with TODO)
+ Unattended install of master can be performed by settings in appsettings.json
+ Improved IsInstalled checking
+ Removed DBSchema field from Tenant
+ Default database and site creation moved to Program.Main
2020-03-29 14:45:02 +02:00
Shaun Walker
18a843e74f extensibility enhancements for site templates 2020-03-19 12:07:33 -04:00