diff --git a/src/api.js b/src/api.js index ea037e6..9a378f6 100644 --- a/src/api.js +++ b/src/api.js @@ -534,6 +534,18 @@ Api.fn.xo = { }; }); }, + + 'getSessionId': function (req) { + var p_pool_id = req.params.id; + if (undefined === p_pool_id) + { + throw Api.err.INVALID_PARAMS; + } + + return this.xo.pools.first(p_pool_id).then(function (pool) { + return pool.get('sessionId'); + }); + }, }; Api.fn.host = { diff --git a/src/xo.js b/src/xo.js index 28b41e6..1da030f 100644 --- a/src/xo.js +++ b/src/xo.js @@ -353,6 +353,9 @@ Xo.prototype.start = function () { pools = _.values(pools); var pool_uuid = pools[0].id = pools[0].uuid; + // @todo Remove: security concerns. + pools[0].sessionId = xapi.sessionId; + var resolve = function (model, collection, props, include) { /* jshint laxbreak: true */