Access plugins allow context based access control to pages.

    'title' => Title of the plugin
    'description' => Description of the plugin
    'callback' => callback to see if there is access is available. params: $conf, $contexts, $account
    'required context' => zero or more required contexts for this access plugin
    'default' => an array of defaults or a callback giving defaults
    'settings form' => settings form. params: &$form, &$form_state, $conf
    settings form validate
    settings form submit

Warning: your settings array will be stored in the meny system to reduce loads, so be trim.