Security:Strawman Model: Difference between revisions

Jump to navigation Jump to search
Line 1: Line 1:
=== Types ===
=== Types ===
<pre>
<pre>
Principal  = (System, Origins, Unknown) // disjoint type union
Principal  = (System, Origins, Unknown)   // disjoint type union
System    = {system}                   // system principal singleton
System    = {system}                     // system principal singleton
Origin    = {origin1, ..., originN}   // set of N origin principals
Origin    = {origin1, ..., originN}     // set of N origin principals
Origins    = powerset(Origin) - {}
Origins    = powerset(Origin) - {}
Unknown    = {unknown}                 // unknown principal singleton
Unknown    = {unknown}                   // unknown principal singleton
Request    = {get, set, call}           // principal requests of objects
Request    = {get, set, call}             // principal requests of objects
Stack      = array [Activation]         // array of activation objects
Stack      = array [Activation]           // array of activation objects
Activation = record {global:Window,
Activation = record {global:Window,
                     subject:Principal}
                     subject:Principal}
Object    = record {parent:Object}     // record with parent field
Object    = record {parent:Object}       // record with parent field
Window    = record {parent:Object,
Window    = record {parent:Object = null,
                     location:String,
                     location:String,
                     principal:Principal,
                     principal:Principal,
Confirmed users, Bureaucrats and Sysops emeriti
419

edits

Navigation menu