djangosaml2idp icon indicating copy to clipboard operation
djangosaml2idp copied to clipboard

[Additional feature] User Agreement Screen

Open peppelinux opened this issue 5 years ago • 10 comments

In this issue will talk about development of an User Agreement Screen.

Previous discussion about uses case here

peppelinux avatar Mar 22 '19 10:03 peppelinux

then models.py if was lost in the lastest commits as I already commented in PR. Please do a git add -A before pushing it again.

ProgrammingError at /login/process/
(1146, "Table 'djangosaml2idp.djangosaml2idp_agreementrecord' doesn't exist")

models.py should be included here: https://github.com/askvortsov1/djangosaml2idp/pull/4/files#diff-4084464d2c5971d6c2440395c0a2c70a

What's missing is the migration. I'll add that, and then merge.

I'd like to make some example of SAML_IDP_SPCONFIG with some realworld sp nameID.

I think this could be a good idea

askvortsov1 avatar Mar 22 '19 11:03 askvortsov1

Please do a merge of my bugfix (or a personal amend) and include migrations with git add -A. ./manage.py migrate should apply your migrations, otherwise we could get troubles with following updates. Thank you, models.py was there!

peppelinux avatar Mar 22 '19 11:03 peppelinux

Should be fixed now.

askvortsov1 avatar Mar 22 '19 11:03 askvortsov1

Agreement fixed here: https://github.com/peppelinux/djangosaml2idp/commit/5c182f0aa7474ceeb78e03bcb56a27d804e3bbef

Selezione_509

Selezione_512

Added:

  • internazionalized form, labels
  • Agreement Management via AdminModel
  • checkbox "forget my last agreement" (that destroy latest agreement)
  • customizable Agreements data consent per every SP (@askvortsov1 thank you, your ideas are precious)

As I see this feature is quite completed, I'd prefer to add new features in separate branch and only when they are completed merge them in master. It would be better to deploy everything in the development branch and per every feature create a new branch from development. This will let us to mantain in master branch only the release candidate and the official releases.

Thank you for having coded this feature together, it was very fun!

peppelinux avatar Mar 22 '19 16:03 peppelinux

Added:

  • internazionalized form, labels

Great idea, I hadn't thought of that

  • Agreement Management via AdminModel

This is a good idea, it's good to be able to manually delete agreement records through admin if needed

  • checkbox "forget my last agreement" (that destroy latest agreement)

I didn't see this in the commit you linked. I'm assuming this was added to your implementation's login system?

  • customizable Agreements data consent per every SP (@askvortsov1 thank you, your ideas are precious)

Awesome, looks good!

As I see this feature is quite completed, I'd prefer to add new features in separate branch and only when they are completed merge them in master. It would be better to deploy everything in the development branch and per every feature create a new branch from development. This will let us to mantain in master branch only the release candidate and the official releases.

I agree with this. I think your idea of maintaining an organized roadmap for development would be very helpful. Perhaps we could use a commit in the main parent repo? For now, feel free to PR your changes to the user agreement system when ready!

Thank you for having coded this feature together, it was very fun!

Same here! Here's to more future collaboration :)!

askvortsov1 avatar Mar 22 '19 18:03 askvortsov1

hi @askvortsov1, I can say that I am quite satisfied by our reached goals. I fixed urls here: https://github.com/peppelinux/djangosaml2idp/commit/6e154ad8e945528979484ea5a8522d7b30cee871 you was right, I was using a global project login url path, now is fixed. As you can see I inherited django auth_view for our blended implementation.

in the last commit I also made some minor style changement. I hope to switch to pep8 compliance soon.

about our roadmap:

  • I think there come time to implement a generic template, where to put our custom error messages in a way that could be easily rendered messages in a fancy template. Actually we are dealing with raw HttpResponse messages;

  • I think that we can moving to decide in a separate issue post, the version and final features of our release candidate :)

Fun!

peppelinux avatar Mar 23 '19 05:03 peppelinux

I'll be sure to review your PR. I've set up a Roadmap at https://github.com/OTA-Insight/djangosaml2idp/issues/34. Please let me know if you think i've missed anything.

askvortsov1 avatar Mar 23 '19 17:03 askvortsov1

@mhindery is this already featured in PR 40?

peppelinux avatar Dec 19 '19 09:12 peppelinux

No, the user agreement screen is not in there.

mhindery avatar Dec 19 '19 09:12 mhindery

I've implemented it in uniAuth a year ago, don't know if it is still this in djangosaml2idp. Close if necessary

peppelinux avatar Aug 01 '20 22:08 peppelinux