The DIRAC framework for distributed computing has been designed as a flexible and modular solution that can be adapted to the requirements of any community. Users interact with DIRAC via command line, using the web portal or accessing resources via the DIRAC python API. The current DIRAC API requires users to use a python version valid for DIRAC. Some communities have developed their own software solutions for handling their specific workload, and would like to use DIRAC as their back-end to access distributed computing resources easily. Many of these solutions are not coded in python or depend on a specific python version. To solve this gap DIRAC provides a new language agnostic API that any software solution can use. This new API has been designed following the RESTful principles. Any language with libraries to issue standard HTTP queries may use it. GSI proxies can still be used to authenticate against the API services. However GSI proxies are not a widely adopted standard. The new DIRAC API also allows clients to use OAuth for delegating the user credentials to a third party solution. These delegated credentials allow the third party software to query to DIRAC on behalf of the users. This new API will further expand the possibilities communities have to integrate DIRAC into their distributed computing models.
[1]
Guido van Rossum,et al.
Python Programming Language
,
2007,
USENIX Annual Technical Conference.
[2]
C. M. Sperberg-McQueen,et al.
Extensible markup language
,
1997
.
[3]
A Casajus Ramo,et al.
DIRAC: Secure web user interface
,
2010
.
[4]
Colin J. Ihrig.
JavaScript Object Notation
,
2013
.
[5]
Russ Housley,et al.
Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile
,
2002,
RFC.
[6]
Eran Hammer-Lahav,et al.
The OAuth 1.0 Protocol
,
2010,
RFC.
[7]
Joel Closier,et al.
DIRAC: a community grid solution
,
2008
.
[8]
Steven Tuecke,et al.
Internet X.509 Public Key Infrastructure (PKI) Proxy Certificate Profile
,
2004,
RFC.