k2hr3-api 1.0.38 → 1.0.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ChangeLog +12 -0
- package/README.md +31 -31
- package/app.js +6 -10
- package/bin/run.sh +21 -21
- package/bin/www +1 -1
- package/config/k2hr3-init.sh.templ +5 -5
- package/eslint.config.mjs +68 -0
- package/lib/cacerts.js +8 -7
- package/lib/dummyuserapi.js +1 -1
- package/lib/ipwatch.js +1 -1
- package/lib/k2hr3acrutil.js +12 -14
- package/lib/k2hr3apiutil.js +5 -5
- package/lib/k2hr3cryptutil.js +2 -0
- package/lib/k2hr3dkc.js +25 -28
- package/lib/k2hr3template.js +54 -52
- package/lib/k2hr3tokens.js +4 -4
- package/lib/k8soidc.js +3 -3
- package/lib/openstackapiv2.js +51 -52
- package/lib/openstackapiv3.js +86 -87
- package/lib/openstackep.js +46 -46
- package/package.json +8 -8
- package/routes/acr.js +66 -110
- package/routes/debugVerify.js +12 -14
- package/routes/extdata.js +24 -40
- package/routes/list.js +24 -36
- package/routes/policy.js +72 -120
- package/routes/resource.js +110 -165
- package/routes/role.js +177 -295
- package/routes/service.js +54 -90
- package/routes/userTokens.js +1 -1
- package/routes/userdata.js +12 -20
- package/routes/version.js +39 -23
- package/tests/auto_control_subprocess.sh +9 -9
- package/tests/auto_init_config_json.sh +3 -3
- package/tests/auto_resource.js +417 -478
- package/tests/auto_role.js +55 -71
- package/tests/auto_template.sh +4 -4
- package/tests/auto_version.js +39 -23
- package/tests/k2hdkc_test_load.sh +9 -9
- package/tests/k2hr3template_test.sh +12 -12
- package/tests/k2hr3template_test_vars.js +60 -62
- package/tests/manual_acr_delete.js +11 -12
- package/tests/manual_acr_get.js +9 -10
- package/tests/manual_acr_postput.js +12 -13
- package/tests/manual_extdata_get.js +5 -6
- package/tests/manual_list_gethead.js +12 -13
- package/tests/manual_policy_delete.js +12 -13
- package/tests/manual_policy_gethead.js +27 -27
- package/tests/manual_policy_postput.js +21 -23
- package/tests/manual_resource_delete.js +11 -15
- package/tests/manual_resource_gethead.js +11 -14
- package/tests/manual_resource_postput.js +18 -21
- package/tests/manual_role_delete.js +22 -28
- package/tests/manual_role_gethead.js +53 -53
- package/tests/manual_role_postput.js +28 -31
- package/tests/manual_service_delete.js +11 -13
- package/tests/manual_service_gethead.js +13 -15
- package/tests/manual_service_postput.js +10 -11
- package/tests/manual_test.sh +10 -10
- package/tests/manual_userdata_get.js +14 -15
- package/tests/manual_usertoken_gethead.js +12 -14
- package/tests/manual_usertoken_postput.js +23 -26
- package/tests/manual_version_get.js +12 -13
- package/tests/run_local_test_k2hdkc.sh +4 -4
- package/tests/test.sh +12 -12
package/lib/k2hr3dkc.js
CHANGED
|
@@ -3806,12 +3806,10 @@ function rawGetUserId(username)
|
|
|
3806
3806
|
return null;
|
|
3807
3807
|
}
|
|
3808
3808
|
|
|
3809
|
-
/* eslint-disable indent, no-mixed-spaces-and-tabs */
|
|
3810
3809
|
var resobj = {
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
/* eslint-enable indent, no-mixed-spaces-and-tabs */
|
|
3810
|
+
'name': username.toLowerCase(),
|
|
3811
|
+
'id': value.toLowerCase()
|
|
3812
|
+
};
|
|
3815
3813
|
|
|
3816
3814
|
return resobj;
|
|
3817
3815
|
}
|
|
@@ -5083,16 +5081,15 @@ function rawAddHost(tenant, role, service, hostname, ip, port, cuk, extra, tag,
|
|
|
5083
5081
|
var cnt;
|
|
5084
5082
|
if(!apiutil.isEmptyArray(hostname)){
|
|
5085
5083
|
for(cnt = 0; cnt < hostname.length; ++cnt){
|
|
5086
|
-
|
|
5087
|
-
|
|
5088
|
-
|
|
5089
|
-
|
|
5090
|
-
|
|
5091
|
-
|
|
5092
|
-
|
|
5093
|
-
|
|
5094
|
-
|
|
5095
|
-
/* eslint-enable indent, no-mixed-spaces-and-tabs */
|
|
5084
|
+
onehost = {
|
|
5085
|
+
hostname: hostname[cnt], // hostname
|
|
5086
|
+
ip: null,
|
|
5087
|
+
port: port,
|
|
5088
|
+
cuk: cuk,
|
|
5089
|
+
id: apiutil.getStrUuid4(),
|
|
5090
|
+
extra: apiutil.getSafeString(extra),
|
|
5091
|
+
tag: apiutil.getSafeString(tag)
|
|
5092
|
+
};
|
|
5096
5093
|
|
|
5097
5094
|
// add optional keys
|
|
5098
5095
|
if(apiutil.isSafeString(inboundip)){
|
|
@@ -5106,16 +5103,15 @@ function rawAddHost(tenant, role, service, hostname, ip, port, cuk, extra, tag,
|
|
|
5106
5103
|
}
|
|
5107
5104
|
if(!apiutil.isEmptyArray(ip)){
|
|
5108
5105
|
for(cnt = 0; cnt < ip.length; ++cnt){
|
|
5109
|
-
|
|
5110
|
-
|
|
5111
|
-
|
|
5112
|
-
|
|
5113
|
-
|
|
5114
|
-
|
|
5115
|
-
|
|
5116
|
-
|
|
5117
|
-
|
|
5118
|
-
/* eslint-enable indent, no-mixed-spaces-and-tabs */
|
|
5106
|
+
onehost = {
|
|
5107
|
+
hostname: null,
|
|
5108
|
+
ip: ip[cnt], // ip address
|
|
5109
|
+
port: port,
|
|
5110
|
+
cuk: cuk,
|
|
5111
|
+
id: apiutil.getStrUuid4(),
|
|
5112
|
+
extra: apiutil.getSafeString(extra),
|
|
5113
|
+
tag: apiutil.getSafeString(tag)
|
|
5114
|
+
};
|
|
5119
5115
|
|
|
5120
5116
|
// add optional keys
|
|
5121
5117
|
if(apiutil.isSafeString(inboundip)){
|
|
@@ -5378,6 +5374,7 @@ function rawParseKubernetesCuk(cuk)
|
|
|
5378
5374
|
return null;
|
|
5379
5375
|
}
|
|
5380
5376
|
}catch(exception){
|
|
5377
|
+
r3logger.dlog(JSON.stringify(exception));
|
|
5381
5378
|
return null;
|
|
5382
5379
|
}
|
|
5383
5380
|
|
|
@@ -7922,7 +7919,7 @@ function rawCreateResourceByRole(role, tenant, resourcename, type, data, resourc
|
|
|
7922
7919
|
|
|
7923
7920
|
// parse role yrn to role name and tenant name
|
|
7924
7921
|
var keys = r3keys(null, tenant);
|
|
7925
|
-
var tenantname = null;
|
|
7922
|
+
var tenantname = null;
|
|
7926
7923
|
var rolename = null;
|
|
7927
7924
|
var roleyrnptn = new RegExp('^' + keys.MATCH_ANY_TENANT_ROLE); // regex = /^yrn:yahoo:(.*)::(.*):role:(.*)/
|
|
7928
7925
|
var rolematches = role.match(roleyrnptn);
|
|
@@ -9476,7 +9473,7 @@ function rawRemoveResourceByRole(role, tenant, resource, type, keynames)
|
|
|
9476
9473
|
|
|
9477
9474
|
// parse role yrn to role name and tenant name
|
|
9478
9475
|
var keys = r3keys(null, tenant, null);
|
|
9479
|
-
var tenantname = null;
|
|
9476
|
+
var tenantname = null;
|
|
9480
9477
|
var rolename = null;
|
|
9481
9478
|
var roleyrnptn = new RegExp('^' + keys.MATCH_ANY_TENANT_ROLE); // regex = /^yrn:yahoo:(.*)::(.*):role:(.*)/
|
|
9482
9479
|
var rolematches = role.match(roleyrnptn);
|
|
@@ -9957,7 +9954,7 @@ function rawCheckResourceByRole(roleyrn, tenant, resource, type, keyname)
|
|
|
9957
9954
|
|
|
9958
9955
|
// parse role yrn to role name and tenant name
|
|
9959
9956
|
var keys = r3keys(null, tenant, null);
|
|
9960
|
-
var tenantname = null;
|
|
9957
|
+
var tenantname = null;
|
|
9961
9958
|
var rolename = null;
|
|
9962
9959
|
var roleyrnptn = new RegExp('^' + keys.MATCH_ANY_TENANT_ROLE); // regex = /^yrn:yahoo:(.*)::(.*):role:(.*)/
|
|
9963
9960
|
var rolematches = roleyrn.match(roleyrnptn);
|
package/lib/k2hr3template.js
CHANGED
|
@@ -2921,24 +2921,22 @@ VariableFormulaObject.prototype.testAssemble = function(statementsArray)
|
|
|
2921
2921
|
}
|
|
2922
2922
|
var unitsArray = statementsArray[0].formUnits[0];
|
|
2923
2923
|
|
|
2924
|
-
|
|
2925
|
-
|
|
2926
|
-
0
|
|
2927
|
-
0
|
|
2928
|
-
0
|
|
2929
|
-
|
|
2930
|
-
null !== unitsArray[0].match(/[^0-9]+/) &&
|
|
2924
|
+
if( 0 !== unitsArray[0].indexOf(TEMPL_VALUESEP_KW) &&
|
|
2925
|
+
0 !== unitsArray[0].indexOf(TEMPL_HEX_PREFIX_KW) &&
|
|
2926
|
+
0 !== unitsArray[0].indexOf(TEMPL_HEX2_PREFIX_KW) &&
|
|
2927
|
+
0 !== unitsArray[0].indexOf(TEMPL_OCT_PREFIX_KW) &&
|
|
2928
|
+
0 !== unitsArray[0].indexOf(TEMPL_BIN_PREFIX_KW) &&
|
|
2929
|
+
null !== unitsArray[0].match(/[^0-9]+/) &&
|
|
2931
2930
|
!apiutil.compareCaseString(unitsArray[0], TEMPL_NULL_KW) &&
|
|
2932
2931
|
!apiutil.compareCaseString(unitsArray[0], TEMPL_TRUE_KW) &&
|
|
2933
2932
|
!apiutil.compareCaseString(unitsArray[0], TEMPL_FALSE_KW) &&
|
|
2934
|
-
!(2 < unitsArray[0].length &&
|
|
2935
|
-
|
|
2936
|
-
|
|
2937
|
-
)
|
|
2933
|
+
!(2 < unitsArray[0].length && (
|
|
2934
|
+
(0 === unitsArray[0].indexOf(TEMPL_SINGLE_QUOTE_KW) && TEMPL_SINGLE_QUOTE_KW === unitsArray[0].slice(-1)) ||
|
|
2935
|
+
(0 === unitsArray[0].indexOf(TEMPL_DOUBLE_QUOTE_KW) && TEMPL_DOUBLE_QUOTE_KW === unitsArray[0].slice(-1))
|
|
2936
|
+
))
|
|
2938
2937
|
){
|
|
2939
2938
|
return false;
|
|
2940
2939
|
}
|
|
2941
|
-
/* eslint-enable no-mixed-spaces-and-tabs */
|
|
2942
2940
|
|
|
2943
2941
|
return true;
|
|
2944
2942
|
};
|
|
@@ -3169,10 +3167,10 @@ VariableFormulaObject.prototype.assemble = function(statementsArray, parentObjec
|
|
|
3169
3167
|
selfFormUnits.push([unitsArray[0]]);
|
|
3170
3168
|
unitsArray.shift();
|
|
3171
3169
|
|
|
3172
|
-
}else if(2 < unitsArray[0].length &&
|
|
3173
|
-
|
|
3174
|
-
|
|
3175
|
-
{
|
|
3170
|
+
}else if(2 < unitsArray[0].length && (
|
|
3171
|
+
(0 === unitsArray[0].indexOf(TEMPL_SINGLE_QUOTE_KW) && TEMPL_SINGLE_QUOTE_KW === unitsArray[0].slice(-1)) ||
|
|
3172
|
+
(0 === unitsArray[0].indexOf(TEMPL_DOUBLE_QUOTE_KW) && TEMPL_DOUBLE_QUOTE_KW === unitsArray[0].slice(-1))
|
|
3173
|
+
)){
|
|
3176
3174
|
//------------------
|
|
3177
3175
|
// static string('...' or "...")
|
|
3178
3176
|
//------------------
|
|
@@ -3785,18 +3783,20 @@ CalculateFormulaObject.prototype.assemble = function(statementsArray, parentObje
|
|
|
3785
3783
|
//--------------------------
|
|
3786
3784
|
// '-', '/', '*', '%', '<<', '>>' calculation
|
|
3787
3785
|
//--------------------------
|
|
3788
|
-
|
|
3789
|
-
|
|
3790
|
-
|
|
3791
|
-
|
|
3792
|
-
|
|
3793
|
-
TEMPL_LSHIFT_KW
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
|
|
3786
|
+
this._calctype = (
|
|
3787
|
+
TEMPL_SUB_KW === unitsArray[0] ? FORMULA_CALC_TYPE_SUB :
|
|
3788
|
+
TEMPL_DIV_KW === unitsArray[0] ? FORMULA_CALC_TYPE_DIV :
|
|
3789
|
+
TEMPL_MUL_KW === unitsArray[0] ? FORMULA_CALC_TYPE_MUL :
|
|
3790
|
+
TEMPL_REM_KW === unitsArray[0] ? FORMULA_CALC_TYPE_REM :
|
|
3791
|
+
TEMPL_LSHIFT_KW === unitsArray[0] ? FORMULA_CALC_TYPE_LSHIFT: FORMULA_CALC_TYPE_RSHIFT
|
|
3792
|
+
);
|
|
3793
|
+
errstrkw = (
|
|
3794
|
+
FORMULA_CALC_TYPE_SUB === this.getCalculateType() ? 'SUB(-)' :
|
|
3795
|
+
FORMULA_CALC_TYPE_DIV === this.getCalculateType() ? 'DIV(/)' :
|
|
3796
|
+
FORMULA_CALC_TYPE_MUL === this.getCalculateType() ? 'MUL(*)' :
|
|
3797
|
+
FORMULA_CALC_TYPE_REM === this.getCalculateType() ? 'REM(%)' :
|
|
3798
|
+
FORMULA_CALC_TYPE_LSHIFT=== this.getCalculateType() ? 'LSHIFT(<<)' : 'RSHIFT(>>)'
|
|
3799
|
+
);
|
|
3800
3800
|
selfFormUnits.push([unitsArray[0]]);
|
|
3801
3801
|
unitsArray.shift();
|
|
3802
3802
|
|
|
@@ -4204,13 +4204,13 @@ CalculateFormulaObject.prototype.execute = function(varmap)
|
|
|
4204
4204
|
//--------------------------
|
|
4205
4205
|
// '-', '/', '*', '%', '<<', '>>' calculation
|
|
4206
4206
|
//--------------------------
|
|
4207
|
-
|
|
4208
|
-
|
|
4209
|
-
|
|
4210
|
-
|
|
4207
|
+
errstrkw = (
|
|
4208
|
+
FORMULA_CALC_TYPE_SUB === this.getCalculateType() ? 'SUB(-)' :
|
|
4209
|
+
FORMULA_CALC_TYPE_DIV === this.getCalculateType() ? 'DIV(/)' :
|
|
4210
|
+
FORMULA_CALC_TYPE_MUL === this.getCalculateType() ? 'MUL(*)' :
|
|
4211
4211
|
FORMULA_CALC_TYPE_REM === this.getCalculateType() ? 'REM(%)' :
|
|
4212
|
-
|
|
4213
|
-
|
|
4212
|
+
FORMULA_CALC_TYPE_LSHIFT=== this.getCalculateType() ? 'LSHIFT(<<)' : 'RSHIFT(>>)'
|
|
4213
|
+
);
|
|
4214
4214
|
|
|
4215
4215
|
// left template object
|
|
4216
4216
|
if(this.hasLeftTemplObject()){
|
|
@@ -4549,14 +4549,16 @@ ConditionFormulaObject.prototype.assemble = function(statementsArray, parentObje
|
|
|
4549
4549
|
//--------------------------
|
|
4550
4550
|
// '<', '>', '<=', '>=' condition
|
|
4551
4551
|
//--------------------------
|
|
4552
|
-
|
|
4553
|
-
|
|
4554
|
-
|
|
4555
|
-
|
|
4556
|
-
|
|
4557
|
-
|
|
4558
|
-
|
|
4559
|
-
|
|
4552
|
+
this._condtype = (
|
|
4553
|
+
TEMPL_LESS_KW === unitsArray[0] ? FORMULA_COND_TYPE_LESS :
|
|
4554
|
+
TEMPL_GREAT_KW === unitsArray[0] ? FORMULA_COND_TYPE_GREAT :
|
|
4555
|
+
TEMPL_LESSEQ_KW === unitsArray[0] ? FORMULA_COND_TYPE_LESSEQ: FORMULA_COND_TYPE_GREATEQ
|
|
4556
|
+
);
|
|
4557
|
+
errstrkw = (
|
|
4558
|
+
FORMULA_COND_TYPE_LESS === this.getConditionType() ? 'LESS(<)' :
|
|
4559
|
+
FORMULA_COND_TYPE_GREAT === this.getConditionType() ? 'GREAT(>)' :
|
|
4560
|
+
FORMULA_COND_TYPE_LESSEQ=== this.getConditionType() ? 'LESSEQ(<=)' : 'GREATEQ(<=)'
|
|
4561
|
+
);
|
|
4560
4562
|
selfFormUnits.push([unitsArray[0]]);
|
|
4561
4563
|
unitsArray.shift();
|
|
4562
4564
|
|
|
@@ -4725,16 +4727,16 @@ ConditionFormulaObject.prototype.execute = function(varmap)
|
|
|
4725
4727
|
var right_resobj= null;
|
|
4726
4728
|
var tmpval;
|
|
4727
4729
|
|
|
4728
|
-
|
|
4729
|
-
|
|
4730
|
-
|
|
4731
|
-
|
|
4732
|
-
|
|
4733
|
-
FORMULA_COND_TYPE_LESSEQ
|
|
4734
|
-
|
|
4735
|
-
|
|
4736
|
-
|
|
4737
|
-
|
|
4730
|
+
var errstrkw = (
|
|
4731
|
+
FORMULA_COND_TYPE_AND === this.getConditionType() ? 'AND(&&)' :
|
|
4732
|
+
FORMULA_COND_TYPE_OR === this.getConditionType() ? 'OR(||)' :
|
|
4733
|
+
FORMULA_COND_TYPE_LESS === this.getConditionType() ? 'LESS(<)' :
|
|
4734
|
+
FORMULA_COND_TYPE_GREAT === this.getConditionType() ? 'GREAT(>)' :
|
|
4735
|
+
FORMULA_COND_TYPE_LESSEQ === this.getConditionType() ? 'LESSEQ(<=)' :
|
|
4736
|
+
FORMULA_COND_TYPE_GREATEQ === this.getConditionType() ? 'GREATEQ(<=)' :
|
|
4737
|
+
FORMULA_COND_TYPE_EQUAL === this.getConditionType() ? 'EQUAL(==)' :
|
|
4738
|
+
FORMULA_COND_TYPE_NOTEQ === this.getConditionType() ? 'NOTEQ(!=)' : 'UNKNOWN'
|
|
4739
|
+
);
|
|
4738
4740
|
|
|
4739
4741
|
// left template object
|
|
4740
4742
|
if(this.hasLeftTemplObject()){
|
package/lib/k2hr3tokens.js
CHANGED
|
@@ -213,8 +213,8 @@ function rawGetScopedUserToken(unscopedtoken, username, userid, tenant, callback
|
|
|
213
213
|
// check tenants(and initialize tenants)
|
|
214
214
|
var _tenant_id = null;
|
|
215
215
|
var _tenant_name = null;
|
|
216
|
-
var _tenant_desc = null;
|
|
217
|
-
var _tenant_display = null;
|
|
216
|
+
var _tenant_desc = null;
|
|
217
|
+
var _tenant_display = null;
|
|
218
218
|
var _tenant_list = new Array(0);
|
|
219
219
|
for(var cnt = 0; cnt < jsonres.length; ++cnt){
|
|
220
220
|
if(!apiutil.isSafeEntity(jsonres[cnt])){
|
|
@@ -232,8 +232,8 @@ function rawGetScopedUserToken(unscopedtoken, username, userid, tenant, callback
|
|
|
232
232
|
// find target tenant
|
|
233
233
|
_tenant_id = jsonres[cnt].id;
|
|
234
234
|
_tenant_name = jsonres[cnt].name;
|
|
235
|
-
_tenant_desc = jsonres[cnt].description;
|
|
236
|
-
_tenant_display = jsonres[cnt].display;
|
|
235
|
+
_tenant_desc = jsonres[cnt].description;
|
|
236
|
+
_tenant_display = jsonres[cnt].display;
|
|
237
237
|
}
|
|
238
238
|
_tenant_list.push(jsonres[cnt].name);
|
|
239
239
|
}
|
package/lib/k8soidc.js
CHANGED
|
@@ -951,7 +951,7 @@ function rawGetUserTenantListK8s(unscopedtoken, callback)
|
|
|
951
951
|
// uname: username
|
|
952
952
|
// passwd: passwd
|
|
953
953
|
//
|
|
954
|
-
exports.getUserUnscopedToken = function(uname, passwd, callback)
|
|
954
|
+
exports.getUserUnscopedToken = function(uname, passwd, callback)
|
|
955
955
|
{
|
|
956
956
|
var error = new Error('getUserUnscopedToken is not implemented');
|
|
957
957
|
r3logger.elog(error.message);
|
|
@@ -973,7 +973,7 @@ exports.getUserUnscopedTokenByToken = function(token, callback)
|
|
|
973
973
|
//
|
|
974
974
|
// tenantid: not used
|
|
975
975
|
//
|
|
976
|
-
exports.getUserScopedToken = function(unscopedtoken, tenantname, tenantid, callback)
|
|
976
|
+
exports.getUserScopedToken = function(unscopedtoken, tenantname, tenantid, callback)
|
|
977
977
|
{
|
|
978
978
|
return rawGetUserScopedTokenK8s(unscopedtoken, tenantname, callback);
|
|
979
979
|
};
|
|
@@ -997,7 +997,7 @@ exports.verifyUserToken = function(user, tenant, token, token_seed)
|
|
|
997
997
|
//
|
|
998
998
|
// Get tenant list
|
|
999
999
|
//
|
|
1000
|
-
exports.getUserTenantList = function(unscopedtoken, userid, callback)
|
|
1000
|
+
exports.getUserTenantList = function(unscopedtoken, userid, callback)
|
|
1001
1001
|
{
|
|
1002
1002
|
return rawGetUserTenantListK8s(unscopedtoken, callback);
|
|
1003
1003
|
};
|
package/lib/openstackapiv2.js
CHANGED
|
@@ -109,27 +109,27 @@ function rawGetUserUnscopedTokenV2(uname, passwd, callback)
|
|
|
109
109
|
//r3logger.dlog(keystone_ep);
|
|
110
110
|
|
|
111
111
|
// build parameters for request
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
112
|
+
var body = {
|
|
113
|
+
'auth': {
|
|
114
|
+
'tenantName': '', // unscoped token by no tenant name
|
|
115
|
+
'passwordCredentials': {
|
|
116
|
+
'username': _uname,
|
|
117
|
+
'password': _passwd
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
121
|
var strbody = JSON.stringify(body);
|
|
122
122
|
var headers = {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
var options = {
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
123
|
+
'Content-Type': 'application/json',
|
|
124
|
+
'Content-Length': strbody.length
|
|
125
|
+
};
|
|
126
|
+
var options = {
|
|
127
|
+
'host': keystone_ep.hostname,
|
|
128
|
+
'port': keystone_ep.port,
|
|
129
|
+
'path': keystone_ep.pathname + '/v2.0/tokens',
|
|
130
|
+
'method': 'POST',
|
|
131
|
+
'headers': headers
|
|
132
|
+
};
|
|
133
133
|
|
|
134
134
|
var httpobj;
|
|
135
135
|
if(apiutil.compareCaseString('https:', keystone_ep.protocol)){
|
|
@@ -322,26 +322,26 @@ function rawGetUserScopedTokenV2(unscopedtoken, tenant, callback)
|
|
|
322
322
|
//r3logger.dlog(keystone_ep);
|
|
323
323
|
|
|
324
324
|
// build parameters for request
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
325
|
+
var body = {
|
|
326
|
+
'auth': {
|
|
327
|
+
'tenantName': _tenant,
|
|
328
|
+
'token': {
|
|
329
|
+
'id': _unscopedtoken
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
};
|
|
333
333
|
var strbody = JSON.stringify(body);
|
|
334
334
|
var headers = {
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
var options = {
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
335
|
+
'Content-Type': 'application/json',
|
|
336
|
+
'Content-Length': strbody.length
|
|
337
|
+
};
|
|
338
|
+
var options = {
|
|
339
|
+
'host': keystone_ep.hostname,
|
|
340
|
+
'port': keystone_ep.port,
|
|
341
|
+
'path': keystone_ep.pathname + '/v2.0/tokens',
|
|
342
|
+
'method': 'POST',
|
|
343
|
+
'headers': headers
|
|
344
|
+
};
|
|
345
345
|
|
|
346
346
|
var httpobj;
|
|
347
347
|
if(apiutil.compareCaseString('https:', keystone_ep.protocol)){
|
|
@@ -601,19 +601,18 @@ function rawGetUserTenantListV2(unscopedtoken, callback)
|
|
|
601
601
|
//r3logger.dlog(keystone_ep);
|
|
602
602
|
|
|
603
603
|
// build parameters for request
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
/* eslint-enable indent, no-mixed-spaces-and-tabs */
|
|
604
|
+
var headers = {
|
|
605
|
+
'Content-Type': 'application/json',
|
|
606
|
+
'X-Auth-Token': _unscopedtoken,
|
|
607
|
+
'Content-Length': 0
|
|
608
|
+
};
|
|
609
|
+
var options = {
|
|
610
|
+
'host': keystone_ep.hostname,
|
|
611
|
+
'port': keystone_ep.port,
|
|
612
|
+
'path': keystone_ep.pathname + '/v2.0/tenants',
|
|
613
|
+
'method': 'GET',
|
|
614
|
+
'headers': headers
|
|
615
|
+
};
|
|
617
616
|
|
|
618
617
|
var httpobj;
|
|
619
618
|
if(apiutil.compareCaseString('https:', keystone_ep.protocol)){
|
|
@@ -713,7 +712,7 @@ exports.getUserUnscopedToken = function(uname, passwd, callback)
|
|
|
713
712
|
//
|
|
714
713
|
// update token : not implemented
|
|
715
714
|
//
|
|
716
|
-
exports.getUserUnscopedTokenByToken = function(token, callback)
|
|
715
|
+
exports.getUserUnscopedTokenByToken = function(token, callback)
|
|
717
716
|
{
|
|
718
717
|
var error = new Error('getUserUnscopedTokenByToken is not implemented');
|
|
719
718
|
r3logger.elog(error.message);
|
|
@@ -742,7 +741,7 @@ exports.verifyUserTokenPublisher = function(token_seed)
|
|
|
742
741
|
//
|
|
743
742
|
// tenant is not used.
|
|
744
743
|
//
|
|
745
|
-
exports.verifyUserToken = function(user, tenant, token, token_seed)
|
|
744
|
+
exports.verifyUserToken = function(user, tenant, token, token_seed)
|
|
746
745
|
{
|
|
747
746
|
return rawVerifyUserTokenV2(user, token, token_seed);
|
|
748
747
|
};
|