Specfilteringaccess

Summary

A panel accessible according to the rules described in this specification. It enables/disables Internet content filtering and availability using backend like dansguardian

Release Note

This is the main functionality of the application: filtering Internet content, enabling/disabling it and further content like time management.

Rationale

The idea is to filter the Internet connection for targeted user (most of the time, for children) globally or by user as described in this specification on LP (corresponding to this advanced specification)

All filtered url will forward the user to a generic local static page where the way to unlock the protection is described, like "call your parents".

  • It supports:
    • forbid/give access to the Internet, managed by date and time (see https://blueprints.launchpad.net/gchildcare/+spec/time-management)

    • white list filtering
    • black list filtering
    • Download management (enabling/disabling downloads)
    • Eventually (see "Still in discussion"), control addition of new contacts, changing on the fly private information like name, adress and so on. This, if accepted, will be discussed in further specifications.

We will provide default values for all in default profiles (see the profile specification).

Use Cases

  • Peter does not want to be behind his child everytime this latter go through the Internet. He wants him/her to be autonomous and able to use a computer and the Internet by him/herself.
  • Alice worries about the bad things her children can find from the Internet, she wants to be assured that they wouldn't be shocked by whatever they can see/read and download. She can trust the protection to be easy to use and strong enough.
  • James does not want his children have access on the Internet appart himself. He doesn't want to unconfigure and configure the Internet everytime to prevent his children to have a denied access to it.
  • Cintia wants to be able to switch the protection on for only dedicated user so that not everyone will undergo it.

Assumptions

Implementation

Some tools like dansguardian complete perfectly the task on the CLI. Gchildcare should only be a GUI for those kind of tools. Generic enough to be plug with one or another backend (it will be plugged with dansguardian + squid by default if any other backend is specified). Advanced user will be so able to choose their backend (by configuration files for GNOME GUI and dedicated panel for KDE one) and regular one will trust the default "automagic" rules set.

The black list and white list will be automatically downloaded and updated over the free list on the Internet (the values would be changeable from configuration files), but this reveal some ergonomical problem (see "Still need discussion" section)

"black list" and "white list" technical terms would be ignored for "Site available" and "Forbidden site" to avoid introducing new complicated notions for a non technical user.

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).

By default, the protection is unset for every users:

http://img146.imageshack.us/img146/3619/usecase1ol1.png

Once clicked, the protection and associated profile can be applied:

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

More about the design of enabling/desabling those functionalities (and some more, cf "Still need discussion") in this specification

Test/Demo Plan

  • Test going to a black listed site -> Access shoud be denied

  • Test going to a site that in not on the white list in the white list mode -> Access shoud be denied

  • Forbid all Internet access. Try to go whatever site -> Access shoud be denied

  • Give all access rights -> check that you can go on every sites you want

Still need discussion

  • 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 mockups available there to make the user aware of that.

  • See how to integrate more filtered grained access:
    • if a child give personal real name -> change it to another one

    • filter instant messaging connexion
    • user addition

This will be a dedicated specification in a futur version


CategorySpec

gchildcare/Specfilteringaccess (last edited 2008-09-22 18:39:56 by put92-5-82-243-237-71)