Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Comprehensive Demo/Template project #764

Open
geoffsmith82 opened this issue Jul 28, 2024 · 3 comments
Open

Comprehensive Demo/Template project #764

geoffsmith82 opened this issue Jul 28, 2024 · 3 comments

Comments

@geoffsmith82
Copy link
Contributor

What would be good is a fairly complete demo that includes what would be necessary for an multi-user authenticated website created with DelphiMVCFramework. It would include things such as

  • authentication of users
  • admin interface
  • signup / email verification
  • forgot password
  • mfa
  • user profile editing
  • a way to easily extend functionality.

Currently the existing demos show how to implement various features - which is could to assist in understanding them and probably makes it easier to integrate into existing systems, but if you just want to get on with implementing your site from the start, there is a lot of code that needs to be written to get to the point of a secure and usable site.

@fastbike
Copy link
Contributor

fastbike commented Jul 28, 2024

You've covered off quite bit here.
We're currently running:

  • a machine to machine web service handling around 800k requests per day (requests conforming to HL7 FHIR) with a lot of back end xml rules based validation

  • a web based JSON-RPC web UI application with read and write.

  • a htmx web ui application, mainly read only presentation used by 200k users on a daily basis

  • an internal configuration tool with read and write

  • a small server / desktop app using DMVC on the bac end and a VCL app communicating via a REST API
    All of these applications are secured with OAuth2 JWT tokens issued by a third party IdP. We've written a separate authorisation middleware layer based on Smart on FHIR which suits our application domain.
    Happy to share a little more via the facebook group if you ask. We've found that you need to understand that web apps have a different paradigm than traditional c/s or three tier apps but DMVC can smooth the migration once you figure out what belongs at each layer of the stack.
    Related to your initial questions, you need to separate the identity/authentication part of the functionality (IdP) from the authorisation (roles):

    authentication of users (IdP)
    admin interface (roles)
    signup / email verification (IdP/Roles)
    forgot password (IdP)
    mfa (IdP)
    user profile editing (Roles)

I would recommend using a third party OAuth2/OIDC service for the IdP functions and using application/role based functions for the rest.

@danieleteti
Copy link
Owner

David, if you can describe your success case I think that could be inspirational for some new users.
If you want to write a small doc describing such system I can publish on the blog, link from the project page etc.

Let me know

@geoffsmith82
Copy link
Contributor Author

Here is a quick demo of something I have been working on.

DelphiCMSEngine

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants