Network configuration with RDF

bullet1 Access control application details

bullet2 People and policy

Network users and access policies are described in terms of:

  • Users, e.g.:

homenet:Ronan a foaf:Person ;
    foaf:name           "Ronan" ;
    user:usesHost       homenet:ronan_tb ;
    user:accessType     homenet:PlayAccess ;
    rdfs:comment
        """
        Uses the Internet for games and downloads;  restricted access.
        """ .

  • Hosts, e.g.:

homenet:ronan_tb a user:HostSystem ;
    rdfs:label          "Ronan's main computer" ;
    user:hostName       "ronan-tb" ;
    user:localNet       homenet:atuin ;
    user:hostIP         "193.123.216.79" ;
    user:hostMAC        "00:40:f6:2c:83:e1" ;
    user:systemAdmin    homenet:Ronan ;
    rdfs:comment
        """
        Mostly used for games and some schoolwork.
        """ .

  • Access policies

(access policy, access rule, service group, service protocol, VCALENDAR)

homenet:PlayAccess a user:AccessPolicy ;
    rdfs:label          "Play access policy" ;
    user:access         homenet:PlayAccessRule ;
    user:access         homenet:DownloadAccessRule ;
    rdfs:comment

        """
        Access policy for those who use the Internet for play.
        """ .
 :

homenet:PlayAccessRule a user:AccessRule ;
    user:accessServices homenet:NotP2PServices ;
    user:accessTimes    homenet:PlayTimes ;
    rdfs:comment
        """
        Access rule for non peer-to-peer services at restricted times.
        """ .
 :

homenet:NotP2PServices a user:ServiceGroup ;
    rdfs:label           "All but peer-to-peer services" ;
    user:accessProtocol  homenet:AllICMP ;
    user:accessProtocol  homenet:NonP2PTCP ;
    user:accessProtocol  homenet:MostUDP ;
    rdfs:comment
        """
        All services on all normal protocols, excluding peer-to-peer services.
        """ .
 :

homenet:NonP2PTCP a user:ServiceProtocol ;
    rdfs:label           "Non-P2P TCP services" ;
    user:ipProtocol      "TCP" ;
    user:excludePorts    ( "1214" "6346" "6347" ) ;
    rdfs:comment
        """
        All TCP services excluding peer-to-peer protocols:
        FastTrack (1214), GnuTella (6346, 6347)
        """ .
 :

homenet:PlayTimes a ical:VCALENDAR ;
    user:rangeName          "PlayTimes" ;
    rdfs:label              "Times that non-work access is allowed" ;
    ical:VEVENT__PROP
      [ a ical:REC__VEVENT ;
        ical:DTSTART
          [ a ical:TIME ;
            rdf:value       "T084500" ;
            icalutil:hour   "8" ;
            icalutil:minute "45" ] ;
        ical:DTEND
          [ a ical:TIME ;
            rdf:value       "T101500" ;
            icalutil:hour   "10" ;
            icalutil:minute "15" ] ;
        ical:RRULE
          [ a ical:RECUR ;
            ical:FREQ       "WEEKLY" ;
            ical:INTERVAL   "1" ;
            ical:BYDAY      "MO,TU,WE,TH,FR" ]
      ] ;
    ical:VEVENT__PROP
      [ a ical:REC__VEVENT ;
        :
      ] ;
     :

    rdfs:comment
        """
        Designated play times:
          weekdays: 08:45-10:15, 16:00-16:45, 20:00-22:00
          weekends: 08:45-11:15, 16:00-22:00
        """ .


The full file is at:   http://www.ninebynine.org/SWAD-E/Scenario-HomeNetwork/Users.n3