| 40 | # this could really be omitted. Without modifications, there's no state to keep |
| 41 | allocate_state: /var/db/fedd/deter_allocate.state |
| 42 | }}} |
| 43 | |
| 44 | In addition the [FeddDatabases#AccessComponentAccessDB access component accessdb] in `/usr/local/etc/fedd/deter_access` might be similar to this one (the rules could be more explicit or looser, for example): |
| 45 | |
| 46 | {{{ |
| 47 | # Overrides for the connector image and type |
| 48 | attribute: connectorImage value: FBSD7-TVF |
| 49 | attribute: connectorType value: pc3000_tunnel |
| 50 | |
| 51 | # map users from the given testbed in the Deter group into the local Federation project. Experiments will |
| 52 | # be created by the local user "fedd" and accessable by users with the same name as requesters. This |
| 53 | # will require coordination. |
| 54 | (fedid:ce90957dd5b7d20f9c3890c4599313b7f1cf31ea, Deter, <any>) -> (Federation, fedd, <same>) |
| 55 | }}} |
| 56 | |
| 57 | == Dynamic Keying only on Boss == |
| 58 | |
| 59 | In this case there is still one running `fedd`, but it runs on `boss`, where it can add keys to user accounts and change project permissions. While projects and users need to be kept in sync, the user keys need not. The changes here are largely in the allocation section of the global configuration. |
| 60 | |
| 61 | The configuration assumes that patched versions of `addpubkey` and `grantnodetype` have been installed as `taddpubkey` and `tgrantnodetype` in `/usr/testbed/sbin` as described in the [FeddDownload#AdditionalScripts installation section]. |
| 62 | |
| 63 | {{{ |
| 64 | [globals] |
| 65 | # Identify this fedd by the fedid encoded as a certificate file (user file protections to protect it) |
| 66 | cert_file: /usr/local/etc/fedd/fedd.pem |
| 67 | # Provide service on port 23235 |
| 68 | services: 23235 |
| 69 | |
| 70 | [access] |
| 71 | # Keep access state (which experiments are live) in this file |
| 72 | # Be sure it is writeable by the fedd user |
| 73 | access_state: /var/db/fedd/deter_access.state |
| 74 | |
| 75 | # Parameters for remote fedds to instantiate experiments |
| 76 | boss: boss |
| 77 | ops: users |
| 78 | domain: .isi.deterlab.net |
| 79 | fileserver: fs |
| 80 | eventserver: event-server |
| 81 | |
| 82 | # This machine's URI to discriminate proxy requests (NB: this runs on boss) |
| 83 | testbed: https://boss.isi.deterlab.net:23235 |
| 84 | |
| 85 | # The database that maps requester to local access projects (shown below) |
| 86 | accessdb: /usr/local/etc/fedd/deter_access |
| 87 | |
| 88 | [allocate] |
| 89 | # Allow keys and node types to be extended. |
| 90 | allocation_level: dynamic_keys |
| 91 | |
| 92 | # Keep track of keys added and node types granted so that they can be removed when done. |
34 | | [globals] |
35 | | cert_file: /usr/local/etc/fedd/fedd.pem |
36 | | services: 23235 |
| 95 | # Use the extended commands |
| 96 | grantnodetype: /usr/testbed/sbin/tgrantnodetype |
| 97 | addpubkey: /usr/testbed/sbin/taddpubkey |
| 98 | }}} |
| 99 | |
| 100 | In addition the [FeddDatabases#AccessComponentAccessDB access component accessdb] in `/usr/local/etc/fedd/deter_access` might be similar to this one (the rules could be more explicit or looser, for example): |
| 101 | |
| 102 | {{{ |
| 103 | # Overrides for the connector image and type |
| 104 | attribute: connectorImage value: FBSD7-TVF |
| 105 | attribute: connectorType value: pc3000_tunnel |
| 106 | |
| 107 | # Nodes of this type are not generally accessible |
| 108 | restricted: rpc_3000 |
| 109 | |
| 110 | # Additional keys may be added to these groups. Note that when a user with emulab-ops as the project in their |
| 111 | # three-level name accesses the testbed, the fedd project will be given access to the restricted node type |
| 112 | # rpc_3000. Requesters with Deter as the project will be unable to successfully request access to such nodes. |
| 113 | (fedid:ce90957dd5b7d20f9c3890c4599313b7f1cf31ea, Deter, <any>) -> (Federation, fedd, <same>) |
| 114 | (fedid:ce90957dd5b7d20f9c3890c4599313b7f1cf31ea, emulab-ops, <any>) -> (Federation, fedd:rpc_3000, <same>) |