Changes between Version 11 and Version 12 of AccountManagement


Ignore:
Timestamp:
Nov 26, 2010, 8:24:48 PM (14 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AccountManagement

    v11 v12  
    44To create an account with BOINC projects, a participant must:
    55
    6     * Locate BOINC project web sites, e.g. using Google.
    7     * Read the web sites, and decide which to join;
    8     * Download and install the BOINC client software.
     6 * Locate BOINC project web sites, e.g. using Google.
     7 * Read the web sites, and decide which to join;
     8 * Download and install the BOINC client software.
    99
    1010and then for each selected project:
    1111
    12     * Go through the Attach to Project wizard.
     12 * Go through the Attach to Project wizard.
    1313
    1414If the participant chooses N projects, there are N web sites to visit and N Wizards to complete.
     
    2020A typical account management system is implemented as a web site. The participant experience is:
    2121
    22     * Visit the account manager site, set up a 'meta-account' (name, email, password),
    23           browse a list of projects, and click checkboxes to select projects.
    24     * Download and install the BOINC client software from the account manager.
    25     * Enter the meta-account name and password in a BOINC client dialog.
     22 * Visit the account manager site, set up a 'meta-account' (name, email, password),
     23 browse a list of projects, and click checkboxes to select projects.
     24 * Download and install the BOINC client software from the account manager.
     25 * Enter the meta-account name and password in a BOINC client dialog.
    2626
    2727This requires many fewer interactions than the manual approach.
     
    3333[[Image(http://boinc.berkeley.edu/acct_mgt2.png)]]
    3434
    35    1. The participant sets up his meta-account and selects projects.
    36    2. The account manager issues a create account RPC to each selected project.
    37    3. the participant downloads and installs the BOINC client software from the account manager.
    38       The install package includes a file (specific to the account manager) containing the URL of the account manager.
    39    4. The BOINC client runs, and asks the participant to enter the name and password of his meta-account.
    40    5. The BOINC client does an RPC to the account manager, obtaining a list of accounts.
    41       It then attaches to these accounts and proceeds.
     35 1. The participant sets up his meta-account and selects projects.
     36 2. The account manager issues a create account RPC to each selected project.
     37 3. the participant downloads and installs the BOINC client software from the account manager.
     38 The install package includes a file (specific to the account manager) containing the URL of the account manager.
     39 4. The BOINC client runs, and asks the participant to enter the name and password of his meta-account.
     40 5. The BOINC client does an RPC to the account manager, obtaining a list of accounts.
     41 It then attaches to these accounts and proceeds.
    4242
    4343There are [WebRpc web RPCs] to create, look up, and modify accounts.
     
    8787
    8888 URL::
    89         BASE_URL/rpc.php, where BASE_URL is the URL of the account manager web site.
     89     BASE_URL/rpc.php, where BASE_URL is the URL of the account manager web site.
    9090 input::
    9191{{{
     
    9898    <client_version>5.3.2</client_version>
    9999    <run_mode>auto</run_mode>
    100         <not_started_dur>X</not_started_dur>
    101         <in_progress_dur>X</in_progress_dur>
     100    <not_started_dur>X</not_started_dur>
     101    <in_progress_dur>X</in_progress_dur>
    102102    <global_preferences>
    103103        <source_project>http://a.b.c</source_project>
     
    113113       <hostid>NNN</hostid>
    114114       [ <attached_via_acct_mgr/> ]
    115            [ <suspended_via_gui/> ]
    116            [ <dont_request_more_work/> ]
    117            [ <detach_when_done/> ]
    118            [ <ended/> ]
     115       [ <suspended_via_gui/> ]
     116       [ <dont_request_more_work/> ]
     117       [ <detach_when_done/> ]
     118       [ <ended/> ]
    119119    </project>
    120120    [ ... other projects ]
     
    189189}}}
    190190 action::
    191         Returns a list of the accounts associated with this meta-account. The arguments are:
     191    Returns a list of the accounts associated with this meta-account. The arguments are:
    192192
    193193 * '''password_hash''': the account password, hashed as MD5(password_lowercase(name)).
     
    219219  * '''dont_request_more_work''': whether work fetch is suspended for this project
    220220  * '''detach_when_done''': whether project is set to be detached when done
    221 
    222 In addition, a list of projects and their suspended flags is included.
    223221
    224222The return values are:
     
    286284A suggested method of maintaining a user's hosts is as follows:
    287285
    288     * Maintain a host table with columns
    289           * user ID
    290           * project ID
    291           * DBID
    292           * CPID
    293     * On each account manager RPC, for each reported project,
    294           look up (user ID, project ID, DBID) in the host table (where 'DBID' is the one passed in the RPC request).
    295           If no record is found, create one. In any case, update the record with the CPID from the RPC request.
    296     * To show the user a list of their hosts, with current per-project credit:
    297           do a show_user.php RPC to each project to get a list of hosts.
    298           Update the corresponding records in the host table, based on the DBIDs returned by show_user.php.
    299           Delete any host table entries for this user/project that don't appear in the RPC reply.
    300           Ignore the CPIDs returned by the show_user RPC (they may not be consistent).
    301           Then do a query on the host table, grouping by CPID.
     286 * Maintain a host table with columns
     287  * user ID
     288  * project ID
     289  * DBID
     290  * CPID
     291 * On each account manager RPC, for each reported project,
     292 look up (user ID, project ID, DBID) in the host table (where 'DBID' is the one passed in the RPC request).
     293 If no record is found, create one. In any case, update the record with the CPID from the RPC request.
     294 * To show the user a list of their hosts, with current per-project credit:
     295 do a show_user.php RPC to each project to get a list of hosts.
     296 Update the corresponding records in the host table, based on the DBIDs returned by show_user.php.
     297 Delete any host table entries for this user/project that don't appear in the RPC reply.
     298 Ignore the CPIDs returned by the show_user RPC (they may not be consistent).
     299 Then do a query on the host table, grouping by CPID.
    302300
    303301== Client configuration files ==
     
    310308It is typically included in an installer package.
    311309Its format is:
     310
    312311{{{
    313312<acct_mgr>