Changes between Version 68 and Version 69 of UniformClearinghouseAPI
- Timestamp:
- 09/25/13 10:41:24 (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
UniformClearinghouseAPI
v68 v69 55 55 These API’s are provided in pseudo-code (i.e. language independent) format, with inputs and outputs (optional and required) described by comments, e.g. 56 56 57 58 /* 59 60 ''Perform method ‘fed_func’'' 61 62 '''Arguments:''' 63 [[BR]] argl : ... 64 [[BR]] credentials : list of {type : credential} tuples representing credentials provided by caller to support AuthZ on method call. 65 [[BR]] [NB: This argument will be omitted in descriptions below. ] 66 [[BR]] options : … [ Recognized options: ….] 67 68 ''' Return: ''' 69 [[BR]]E.g. a list of dictionaries with these fields mandatory (…) and these fields optional (…) 70 [[BR]]*/ 71 [[BR]]''function '''fed_func''' (arg1, arg2, credentials, options)'' 57 {{{ 58 /* 59 Perform method fed_func 60 61 Arguments: 62 argl : ... 63 credentials : list of {type : credential} tuples representing credentials provided by caller to support AuthZ on method call. 64 [NB: This argument will be omitted in descriptions below. ] 65 options : … [ Recognized options: ….] 66 67 Return: 68 E.g. a list of dictionaries with these fields mandatory (…) and these fields optional (…) 69 */ 70 function fed_func (arg1, arg2, credentials, options) 71 72 }}} 72 73 73 74 … … 106 107 “SERVICES”: [“SLICE”, “PROJECT”, “SLICE_MEMBER”, “PROJECT_MEMBER”], 107 108 108 "OBJECTS": [ "PROJECT"],109 110 “CREDENTIAL_TYPES”: {“SFA”: [ "1"]}, “ABAC” : ["1", "2"]},109 "OBJECTS": [ "PROJECT" ], 110 111 “CREDENTIAL_TYPES”: {“SFA”: [ "1" ]}, “ABAC” : ["1", "2"]}, 111 112 112 113 “ROLES” : [“LEAD”, “ADMIN”, “MEMBER”, “AUDITOR”, “OPERATOR” ], … … 134 135 "SERVICES": ["MEMBER", "KEY"], 135 136 136 "OBJECTS": [ "KEY"],137 "OBJECTS": [ "KEY" ], 137 138 138 139 “FIELDS”: { … … 351 352 || SERVICE_DESCRIPTION || String || Descriptive name of service || 352 353 353 354 /* 355 354 {{{ 355 /* 356 356 Provide a structure detailing the version information as well as details of accepted options for Registry API calls. 357 357 358 '''Arguments:''' 359 360 None 361 362 '''Return:''' 363 364 get_version structure information as described above 365 366 */ 367 368 function '''get_version()''' 369 358 Arguments: 359 None 360 361 Return: 362 get_version structure information as described above 363 364 */ 365 366 function get_version() 367 }}} 368 369 {{{ 370 370 /* 371 371 372 372 Return information about all aggregates associated with the Federation 373 373 374 '''Arguments:''' 375 376 options: 'match' and 'filter' options as described in standard lookup methods 377 378 '''Return:''' 379 380 List of dictionaries of name/value pairs for each returned AM 381 382 */ 383 384 function '''lookup_aggregates'''(options) 385 374 Arguments: 375 options: 'match' and 'filter' options as described in standard lookup methods 376 377 Return: 378 List of dictionaries of name/value pairs for each returned AM 379 380 */ 381 function lookup_aggregates(options) 382 }}} 383 384 {{{ 386 385 /* 387 386 388 387 Return information about all MA’s associated with the Federation 389 388 390 '''Arguments:''' 391 392 options: 'match' and 'filter' options as described in standard lookup methods 393 394 '''Return:''' 395 396 List of dictionaries of name/value pairs for each returned MA 397 398 */ 399 400 function '''lookup_member_authorities'''(options) 401 389 Arguments: 390 options: 'match' and 'filter' options as described in standard lookup methods 391 392 Return: 393 List of dictionaries of name/value pairs for each returned MA 394 395 */ 396 function lookup_member_authorities(options) 397 }}} 398 399 {{{ 402 400 /* 403 401 404 402 Return information about all SA’s associated with the Federation 405 403 406 '''Arguments:''' 407 408 options: 'match' and 'filter' options as described in standard lookup methods 409 410 '''Return:''' 411 412 List of dictionaries of name/value pairs for each returned SA 413 414 */ 415 416 function '''lookup_slice_authorities'''(options) 417 418 /* 419 420 Lookup the authorities for a given URNs 421 422 There should be at most one (potentially none) per URN. 423 424 This requires extracting the authority from the URN and then looking up the authority in the Registry's set of services. 425 426 Note that the transformation from the URN's of objects (e.g. slice, project, member) to the URN's of their authority is a simple one, for example: 404 Arguments: 405 options: 'match' and 'filter' options as described in standard lookup methods 406 407 Return: 408 List of dictionaries of name/value pairs for each returned SA 409 410 */ 411 function lookup_slice_authorities(options) 412 }}} 413 414 415 The following method maps object URN's to authority URN's. Note that the transformation from the URN's of objects (e.g. slice, project, member) to the URN's of their authority is a simple one, for example: 427 416 428 417 || '''Type''' || '''Object URN''' || '''Authority URN''' || … … 430 419 || Member || urn:publicid:IDN+ma_name+user+user_name || urn:publicid:IDN+ma_name+authority+ma || 431 420 432 '''Arguments:''' 433 434 urns: URNs of entities for which the authority is requested 435 436 '''Return:''' 437 438 List of dictionaries {urn : url} mapping URLs of Authorities to given URN's 439 440 */ 441 442 function '''lookup_authorities_for_urns'''(urns) 443 421 {{{ 422 /* 423 424 Lookup the authorities for a given URNs 425 426 There should be at most one (potentially none) per URN. 427 428 This requires extracting the authority from the URN and then looking up the authority in the Registry's set of services. 429 430 431 Arguments: 432 urns: URNs of entities for which the authority is requested 433 434 Return: 435 List of dictionaries {urn : url} mapping URLs of Authorities to given URN's 436 437 */ 438 function lookup_authorities_for_urns(urns) 439 }}} 440 441 {{{ 444 442 /* 445 443 … … 448 446 Often this is a concatenatation of the trust roots of the included authorities. 449 447 450 '''Arguments:''' 451 452 None 453 454 '''Return:''' 455 456 List of certificates representing trust roots of this Federation. 457 458 */ 459 460 function '''get_trust_roots'''() 448 Arguments: 449 None 450 451 Return: 452 List of certificates representing trust roots of this Federation. 453 454 */ 455 function get_trust_roots() 456 }}} 461 457 462 458 == Slice Authority API ==