Specprofile

Summary

An effective way to handle rights easily for multiple users is to create profiles so that a typical configuration can be applied to many user without any duplicated effort.

Release Note

User will have to use profiles to make user content filtering. Profile content filtering enables people to make an action just once and have default values already available.

Each user has a dedicated account on the Ubuntu system.

Rationale

In case of more than one user has to be filtered on, applying rules like white list and/or blacklist content filtering, specific sites access, hour access configuration can be rapidily tedious if the process has to be performed more than once.

Profiles enables people to make it one and to apply to different users. Changing a value will be just done at one dedicated place.

Furthermore, default values can be provided that will fit most of people.

Sometimes, people want to have just slightly changes from one profile to another. For that, creating a new profile will take as a model another profile.

Use Cases

  • Alice do not want to care with the application and just want some safe, easy to use and straightforward default value. Some profiles like child and teenagers are provided by default. She just have to pick one and to apply it to her children.

  • Bob has two children. He doesn't want to make an unuseful duplicated effort for them, but want to perform finely. He creates a profile based on child one and add some extra sites to the white list. Then, he applies the same profiles to both of it

  • Charlie has a lot of people to filter on, but want to make slightely differences between them (for example, for hours Internet permission). He creates a first root profile, with common values and then, create for each one a dedicated profile based on the previous one, adjusting the time management.

Design

  • Default profiles :
    • No Access: no access for the Internet. Never
    • Children is based on a "white list". A white list only allows sites on that list and reject all others.
    • Teenagers profiles work on "black list". A black list forbid every sites on the black list and allow every others.
    • The trash command and all edit options will be unvailable (to be discussed)
  • A dedicated tabbed and some popup windows has to be sued for separating the action effeciently

This enforce the "one user per person" of *nix way of working.

Implementation

UI Changes

Warning /!\ Sorry, the captures are with non definitive names in french (the designer wasn't aware that this will be in a specification written in english).

Applying a profile to a user is done in the first tab, a drop-down control is available to choose between existing profiles:

http://img223.imageshack.us/img223/7656/usecase2he0.png

A dedicated tab is used to handle with profiles changes. This one is non definitive as some features (as hour filtering are not yet debatted)

http://img253.imageshack.us/img253/4654/usecase3vc5.png

You can see a profile called "Maxime", this is a profile defined specifically for a dedicated user.

A box will appear if trying to remove a profile that is associated to a user and ask for right action (unactivating protection for the user? See "Still need discussion") or make the trash command unvailable?

In the drop-down box, we can switch for editing between existing profiles and all controls will be updated specifically to reflect current selected profile.

http://img253.imageshack.us/img253/3857/usecase4pf2.png

Add a new profile to the default one is easy and open a dedicated windows asking for the new name and the profile model (once again, text are not definitive and will be changed):

http://img257.imageshack.us/img257/1154/usecase5mn7.png

http://img253.imageshack.us/img253/9154/usecase6sp1.png

Feature that will change from this mockup

  • add a checkbox and a button for opening a dedicated page for controlling hour access internet filtering
  • add a checkbox for forbidening all access to the Internet (a kind of "No Internet profile")
  • add a warning for white/black list (see the section "still need discussion")

Test/Demo Plan

  • Create/Suppress profiles
  • Change one profile and see if corresponding users rights have been changed.
  • Removal of "Apply" and "Revert" buttons as the changes will be directly applied.
  • See how this can be included with a QT look and feel for a KDE GUI.

Still need discussion

  • Are default profile editable/removable? If a user want to add some dedicated rules, she/he can create a new profile. Default values for profiles should fit most of the case.
  • What to do if someone wants to remove a profile existing to an existing user? Prevent it to be removed, unactivating the users associated with this profile?
  • White/black list, even if automatically retrieved from open source list over the Internet are huge and can't be displayed properly. In the GTK version (GNOME GUI), maybe it is not a mandatory to show them and we will display only specific value for the profile (added sites to the white list and black list). A notification has to be made to the current mockup to make the user aware of that.
  • The trash command and all edit options will be unvailable for default profiles. Maybe a "revert" button will be great.
  • The QT version will enable by the GUI to configure where to retrieve the list for each profile. It will be stored on configuration files and so, advanced GNOME users will be abled to change it.
  • See how to integrate more advanced filtering usage, if technically approved: "Still need discussion" on Specfilteringaccess


CategorySpec

gchildcare/Specprofile (last edited 2008-09-23 08:31:09 by 91)