Coder Social home page Coder Social logo

django-webid-provider's People

Contributors

bennomadic avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

olberger

django-webid-provider's Issues

generic common name field selection (gfk?)

Currently, we are using something real dirty: a text-field in the singleton "default certificate values" model. That's dangerous! (i.e, any admin can break havoc by changing it).

To be generic, we should give site admin the freedom to choose any field (and uri pattern).
Using GFK?

caveat: if this is allowed to change, we have to change also the way we're accessing the
webid_url and absolute_webid_uri. I.e, once the certificate has been created, we should always refer to the same URI. I think we should store it as a textfield in the webiduser model (and property acess that, and dynamically building the uri as a fallback).

D2RQ integration

related to that "profile" integration ticket.
make things smooth :)

fix common name on cert creation

Having only the username in the cert makes it confusing for the user:
when she has to pick from the cert selection UI there's nothing that helps to choose the
proper cert for a given site.

We could:
a) introduce site url in the cert CN --> ben [webid.rhizolab.org]
b) change Issuer name ("not a certification authority")
c) let user choose the name that will be displayed (in advanced view, perhaps?)

get rid of webidprofile derived classes.

look into d2rq integration.
only the AUTH_PROFILE_APP setting should be needed.

it's better if we move the webid-related fields to WebIDUser model.
We're going to use it in django-webid-auth project (basic proxy model for auth'n.)

chrome UI notification during keygen

current chrome keygen implementation lacks of any user feedback.

  1. file a bug in chromium tracker.
  2. meanwhile, do something with javascript (some popup telling user to wait?...)

No module named simple

It seems that some bits should be adapted for compatibility with django 1.5...

Thanks in advance.

policies for new user creation

we need to think about possible use cases of the app,
and write decorators for view according to defaults

  1. who can make a WebID?
  2. integration with django-registration?
  3. create user views? only in demo site, or wired with the app?
    (ideally, installing django-webid bundle package is the only thing needed to have
    webid functionallity up and running).
  4. django-webid-auth integration: we only allow webid login
    (so first we create a user, w/o password)

I need to review the reusable django apps docs, and split core functionalities from demo-site ones.

url namespace mangling

just thought about this (not very important, but worth considering before users start getting certs in da wild)...

the current sample urlpatterns deliver simple, minimal, nice-looking webid uris:

example.net/webid/name#me

we have (in the sample server) set the package namespace that way (/webid/)
so all hangs from there:

/webid/certs
/webid/cert/add
/webid/cert/xx

if that's going to be the default urlpattern logic, we have to ensure somehow that names (or potentially any other identifier) does not clash with api.

solutions:

  1. resolve username-based webid uris after all api patters (to avoid DOSing api, hehe)

  2. move ids to other url-space in the sample settings: example.org/people/foo#me
    (and, in docs, boldly advice users to do so... and warn somehow if url mangling is detected)

  3. keep it all under /webid/ namespace, but avoid certain usernames (api, for instance):
    /webid/api/cert/...
    /webid/user#me

    problem: how to interact with user registration???
    now we have our simple registration form for demoing purposes, but I want to get rid of that asap.

  4. delegating profile responsability to 3rd-party apps, and forgetting about the issue. uh-oh. (See issue #66 about profile integration)

By now, I like option 2. KISS.

fix "certificate installed" page, for all supported browsers

I've tried to follow here 2 different strategies: delivering the x-x509-user-cert in a iframe, and using the mime multipart/x-mixed-replace comet tecnnique.

Sadly, only FF and Opera seem to honor these techniques. Not sure about the undelying reasons, but could try to track cause and file bugs in the chromium tracker.

Hmm... I'm thinking now about another trick that we could use as a workaround:
have a javascript timer / redirect.

advanced cert creation form view

little link that shows the advanced form.
(ajax-y?)

To be added:

  • Show key bits selector if it was hidden.
  • Custom expiration overrides: days, even hours.
    (very useful for temporary cert installation. make user aware of that possibility:
    i.e., you are in a public computer: create a temp cert, use it, and revoke it.
    other possibility: mark a cert as one-shot, and have it automatically revoked after session
    expiration :)
  • Custom common name?

document our WebID installation process, for dummies

  • Could include a layman's WebID explanation + screencasts, etc.
  • Should be upgraded as the UI evolves.
  • With screenshots on main browsers.

@dominique: what do you think about the right timing to do this? I think we should wait until we have a more stable/integrated UI.

I thought it could be good to have a separate package for this (with optional switches from -provider, so it gets included in the templaetes if present and enabled). It could improve maintanability.

automagically hide keygen elements from users

the idea is making it ultra-easy for the layman.
(key bits? uh?)

now we have in place a little javascript hack, which is enabled from the admin interface:
http://webid.rhizolab.org/admin/provider/certconfig/1/
"hide keygen form".

ideally, the form is there but we only display:hide it, letting the user with only a "give me a cert" big button.

some work still needed at css level.

the "advanced" view can restore the form, with some extra options.

m2crypto dependancy

after the xmppwebid revamp, currently we're only using it for pkcs12 certs.
do we want them on the release? they're a good fallback for some clients, but not
a high prio methinks (and currently p12 views are half-broken)

one option could be refactoring all the openssl calls to use m2crypto.
but for now we can stop using the p12 functionality and remove that dep

basic testing on IE

check that the whole process goes smooth.
(basic cert enrolling process is working, afaik. We have to check IE support for cert delivering:
iframes / multipart??)

alpha end: green light to integrate app.

We should stay in alpha for a time (to see if we need to change the db schemes, basically, adding or refactoring models.)

After this ticket is marked as "resolved", we should assume that we have users, and we will begin using south for database migrations (now is cheaper just to destroy and recreate db).

refactor "prettify" utility

for displaying the looong mods.
Try some js?
I think it's better to have it turned into a template filter.

HTTP(S) switch for webid uris

If we're going to serve webids over https, it has to be setted from the beginning
(webid certs will have this URI).
needing a settings key.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.