@rockcarver/frodo-lib 0.19.2 → 1.0.1-0
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.md +17 -1
- package/cjs/api/ApiTypes.js.map +1 -1
- package/cjs/api/cloud/AdminFederationProvidersApi.js +159 -0
- package/cjs/api/cloud/AdminFederationProvidersApi.js.map +1 -0
- package/cjs/index.js +3 -1
- package/cjs/index.js.map +1 -1
- package/cjs/ops/cloud/AdminFederationOps.js +304 -0
- package/cjs/ops/cloud/AdminFederationOps.js.map +1 -0
- package/esm/api/cloud/AdminFederationProvidersApi.mjs +112 -0
- package/esm/index.mjs +1 -0
- package/esm/ops/cloud/AdminFederationOps.mjs +241 -0
- package/package.json +1 -1
- package/types/api/ApiTypes.d.ts +9 -0
- package/types/api/ApiTypes.d.ts.map +1 -1
- package/types/api/cloud/AdminFederationProvidersApi.d.ts +38 -0
- package/types/api/cloud/AdminFederationProvidersApi.d.ts.map +1 -0
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/ops/cloud/AdminFederationOps.d.ts +52 -0
- package/types/ops/cloud/AdminFederationOps.d.ts.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AdminFederationOps.js","names":["_AdminFederationProvidersApi","require","_ExportImportUtils","_Console","_IdmConfigApi","asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","ADMIN_FED_CONFIG_ID_PREFIX","createAdminFederationExportTemplate","meta","getMetadata","config","idp","getAdminFederationProviders","_getAdminFederationProviders2","result","_getAdminFederationProviders","getAdminFederationProvider","_x","_getAdminFederationProvider","providerId","response","foundProviders","filter","provider","_id","length","Error","concat","putProviderByTypeAndId","_x2","_x3","_x4","_putProviderByTypeAndId2","providerType","providerData","debugMessage","_putProviderByTypeAndId","importError","_importError$response","_importError$response2","_importError$response3","status","data","message","validAttributes","detail","push","attribute","Object","keys","includes","deleteAdminFederationProvider","_x5","_deleteAdminFederationProvider","deleteProviderByTypeAndId","_type","exportAdminFederationProvider","_x6","_exportAdminFederationProvider","exportData","errors","idpData","idpConfig","getConfigEntity","errorMessages","map","join","exportAdminFederationProviders","_exportAdminFederationProviders","allIdpsData","importAdminFederationProvider","_x7","_x8","_importAdminFederationProvider","importData","imported","idpId","configId","putConfigEntity","importFirstAdminFederationProvider","_x9","_importFirstAdminFederationProvider","importAdminFederationProviders","_x10","_importAdminFederationProviders"],"sources":["ops/cloud/AdminFederationOps.ts"],"sourcesContent":["import {\n deleteProviderByTypeAndId,\n getAdminFederationProviders as _getAdminFederationProviders,\n putProviderByTypeAndId as _putProviderByTypeAndId,\n} from '../../api/cloud/AdminFederationProvidersApi';\nimport { ExportMetaData } from '../OpsTypes';\nimport {\n AdminFederationConfigSkeleton,\n SocialIdpSkeleton,\n} from '../../api/ApiTypes';\nimport { getMetadata } from '../utils/ExportImportUtils';\nimport { debugMessage } from '../utils/Console';\nimport { getConfigEntity, putConfigEntity } from '../../api/IdmConfigApi';\n\nexport interface AdminFederationExportInterface {\n meta?: ExportMetaData;\n config: Record<string, AdminFederationConfigSkeleton>;\n idp: Record<string, SocialIdpSkeleton>;\n}\n\nconst ADMIN_FED_CONFIG_ID_PREFIX = 'fidc/federation-';\n\n/**\n * Create an empty idp export template\n * @returns {AdminFederationExportInterface} an empty idp export template\n */\nfunction createAdminFederationExportTemplate(): AdminFederationExportInterface {\n return {\n meta: getMetadata(),\n config: {},\n idp: {},\n } as AdminFederationExportInterface;\n}\n\n/**\n * Get all admin federation providers\n * @returns {Promise} a promise that resolves to an object containing an array of admin federation providers\n */\nexport async function getAdminFederationProviders() {\n const { result } = await _getAdminFederationProviders();\n return result;\n}\n\n/**\n * Get admin federation provider by id\n * @param {String} providerId social identity provider id/name\n * @returns {Promise} a promise that resolves a social admin federation object\n */\nexport async function getAdminFederationProvider(providerId) {\n const response = await getAdminFederationProviders();\n const foundProviders = response.filter(\n (provider) => provider._id === providerId\n );\n switch (foundProviders.length) {\n case 1:\n return foundProviders[0];\n case 0:\n throw new Error(`Provider '${providerId}' not found`);\n default:\n throw new Error(\n `${foundProviders.length} providers '${providerId}' found`\n );\n }\n}\n\nexport async function putProviderByTypeAndId(\n providerType: string,\n providerId: string,\n providerData: object\n) {\n debugMessage(`AdminFederationOps.putProviderByTypeAndId: start`);\n try {\n const response = await _putProviderByTypeAndId(\n providerType,\n providerId,\n providerData\n );\n debugMessage(`AdminFederationOps.putProviderByTypeAndId: end`);\n return response;\n } catch (importError) {\n if (\n importError.response?.status === 400 &&\n importError.response?.data?.message === 'Invalid attribute specified.'\n ) {\n const { validAttributes } = importError.response.data.detail;\n validAttributes.push('_id', '_type');\n for (const attribute of Object.keys(providerData)) {\n if (!validAttributes.includes(attribute)) {\n debugMessage(`Removing invalid attribute: ${attribute}`);\n delete providerData[attribute];\n }\n }\n const response = await _putProviderByTypeAndId(\n providerType,\n providerId,\n providerData\n );\n debugMessage(\n `AdminFederationOps.putProviderByTypeAndId: end (after retry)`\n );\n return response;\n } else {\n // re-throw unhandleable error\n throw importError;\n }\n }\n}\n\n/**\n * Delete admin federation provider by id\n * @param {String} providerId admin federation provider id/name\n * @returns {Promise} a promise that resolves to an admin federation provider object\n */\nexport async function deleteAdminFederationProvider(\n providerId: string\n): Promise<unknown> {\n const response = await getAdminFederationProviders();\n const foundProviders = response.filter(\n (provider) => provider._id === providerId\n );\n switch (foundProviders.length) {\n case 1:\n return await deleteProviderByTypeAndId(\n foundProviders[0]._type._id,\n foundProviders[0]._id\n );\n case 0:\n throw new Error(`Provider '${providerId}' not found`);\n default:\n throw new Error(\n `${foundProviders.length} providers '${providerId}' found`\n );\n }\n}\n\n/**\n * Export admin federation provider by id\n * @param {string} providerId provider id/name\n * @returns {Promise<AdminFederationExportInterface>} a promise that resolves to a SocialProviderExportInterface object\n */\nexport async function exportAdminFederationProvider(\n providerId: string\n): Promise<AdminFederationExportInterface> {\n debugMessage(`AdminFederationOps.exportAdminFederationProvider: start`);\n const exportData = createAdminFederationExportTemplate();\n const errors = [];\n try {\n const idpData = await getAdminFederationProvider(providerId);\n exportData.idp[idpData._id] = idpData;\n const idpConfig = await getConfigEntity(\n `${ADMIN_FED_CONFIG_ID_PREFIX}${providerId}`\n );\n exportData.config[idpConfig._id] = idpConfig;\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`AdminFederationOps.exportAdminFederationProvider: end`);\n return exportData;\n}\n\n/**\n * Export all providers\n * @returns {Promise<AdminFederationExportInterface>} a promise that resolves to a SocialProviderExportInterface object\n */\nexport async function exportAdminFederationProviders(): Promise<AdminFederationExportInterface> {\n debugMessage(`AdminFederationOps.exportAdminFederationProviders: start`);\n const exportData = createAdminFederationExportTemplate();\n const errors = [];\n try {\n const allIdpsData = await getAdminFederationProviders();\n for (const idpData of allIdpsData) {\n try {\n exportData.idp[idpData._id] = idpData;\n const idpConfig = await getConfigEntity(\n `${ADMIN_FED_CONFIG_ID_PREFIX}${idpData._id}`\n );\n exportData.config[idpConfig._id] = idpConfig;\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`AdminFederationOps.exportAdminFederationProviders: end`);\n return exportData;\n}\n\n/**\n * Import admin federation provider by id/name\n * @param {string} providerId provider id/name\n * @param {AdminFederationExportInterface} importData import data\n */\nexport async function importAdminFederationProvider(\n providerId: string,\n importData: AdminFederationExportInterface\n): Promise<SocialIdpSkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const idpId of Object.keys(importData.idp)) {\n if (idpId === providerId) {\n try {\n response = await putProviderByTypeAndId(\n importData.idp[idpId]._type._id,\n idpId,\n importData.idp[idpId]\n );\n const configId = `${ADMIN_FED_CONFIG_ID_PREFIX}${idpId}`;\n if (importData.config[configId]) {\n await putConfigEntity(configId, importData.config[configId]);\n }\n imported.push(idpId);\n } catch (error) {\n errors.push(error);\n }\n }\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\n${providerId} not found in import data!`);\n }\n return response;\n}\n\n/**\n * Import first provider\n * @param {AdminFederationExportInterface} importData import data\n */\nexport async function importFirstAdminFederationProvider(\n importData: AdminFederationExportInterface\n): Promise<SocialIdpSkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const idpId of Object.keys(importData.idp)) {\n try {\n response = await putProviderByTypeAndId(\n importData.idp[idpId]._type._id,\n idpId,\n importData.idp[idpId]\n );\n const configId = `${ADMIN_FED_CONFIG_ID_PREFIX}${idpId}`;\n if (importData.config[configId]) {\n await putConfigEntity(configId, importData.config[configId]);\n }\n imported.push(idpId);\n } catch (error) {\n errors.push(error);\n }\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo providers found in import data!`);\n }\n return response;\n}\n\n/**\n * Import all providers\n * @param {AdminFederationExportInterface} importData import data\n */\nexport async function importAdminFederationProviders(\n importData: AdminFederationExportInterface\n): Promise<SocialIdpSkeleton[]> {\n const response = [];\n const errors = [];\n const imported = [];\n for (const idpId of Object.keys(importData.idp)) {\n try {\n response.push(\n await putProviderByTypeAndId(\n importData.idp[idpId]._type._id,\n idpId,\n importData.idp[idpId]\n )\n );\n const configId = `${ADMIN_FED_CONFIG_ID_PREFIX}${idpId}`;\n if (importData.config[configId]) {\n await putConfigEntity(configId, importData.config[configId]);\n }\n imported.push(idpId);\n } catch (error) {\n errors.push(error);\n }\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo providers found in import data!`);\n }\n return response;\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import util from 'util';
|
|
2
|
+
import { generateAmApi } from '../BaseApi';
|
|
3
|
+
import { deleteDeepByKey, getRealmPath } from '../utils/ApiUtils';
|
|
4
|
+
import * as state from '../../shared/State';
|
|
5
|
+
const getAllProviderTypesURLTemplate = '%s/json%s/realm-config/services/SocialIdentityProviders?_action=getAllTypes';
|
|
6
|
+
const providerByTypeAndIdURLTemplate = '%s/json%s/realm-config/services/SocialIdentityProviders/%s/%s';
|
|
7
|
+
const getAllProvidersURLTemplate = '%s/json%s/realm-config/services/SocialIdentityProviders?_action=nextdescendents';
|
|
8
|
+
const getProvidersByTypeURLTemplate = '%s/json%s/realm-config/services/SocialIdentityProviders/%s?_queryFilter=true';
|
|
9
|
+
const apiVersion = 'protocol=2.1,resource=1.0';
|
|
10
|
+
const getApiConfig = () => {
|
|
11
|
+
const configPath = getRealmPath('/');
|
|
12
|
+
return {
|
|
13
|
+
path: `${configPath}/realm-config/services/SocialIdentityProviders`,
|
|
14
|
+
apiVersion
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Get admin federation provider types
|
|
20
|
+
* @returns {Promise} a promise that resolves to an object containing an array of admin federation provider types
|
|
21
|
+
*/
|
|
22
|
+
export async function getAdminFederationProviderTypes() {
|
|
23
|
+
const urlString = util.format(getAllProviderTypesURLTemplate, state.getHost(), getRealmPath('/'));
|
|
24
|
+
const {
|
|
25
|
+
data
|
|
26
|
+
} = await generateAmApi(getApiConfig()).get(urlString, {
|
|
27
|
+
withCredentials: true
|
|
28
|
+
});
|
|
29
|
+
return data;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Get admin federation providers by type
|
|
34
|
+
* @param {String} type admin federation provider type
|
|
35
|
+
* @returns {Promise} a promise that resolves to an object containing an array of admin federation providers of the requested type
|
|
36
|
+
*/
|
|
37
|
+
export async function getAdminFederationProvidersByType(type) {
|
|
38
|
+
const urlString = util.format(getProvidersByTypeURLTemplate, state.getHost(), getRealmPath('/'), type);
|
|
39
|
+
const {
|
|
40
|
+
data
|
|
41
|
+
} = await generateAmApi(getApiConfig()).get(urlString, {
|
|
42
|
+
withCredentials: true
|
|
43
|
+
});
|
|
44
|
+
return data;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Get all admin federation providers
|
|
49
|
+
* @returns {Promise} a promise that resolves to an object containing an array of admin federation providers
|
|
50
|
+
*/
|
|
51
|
+
export async function getAdminFederationProviders() {
|
|
52
|
+
const urlString = util.format(getAllProvidersURLTemplate, state.getHost(), getRealmPath('/'));
|
|
53
|
+
const {
|
|
54
|
+
data
|
|
55
|
+
} = await generateAmApi(getApiConfig()).post(urlString, {}, {
|
|
56
|
+
withCredentials: true
|
|
57
|
+
});
|
|
58
|
+
return data;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Get admin federation provider by type and id
|
|
63
|
+
* @param {*} type admin federation provider type
|
|
64
|
+
* @param {*} id admin federation provider id/name
|
|
65
|
+
* @returns {Promise} a promise that resolves to an object containing a admin federation provider
|
|
66
|
+
*/
|
|
67
|
+
export async function getProviderByTypeAndId(type, id) {
|
|
68
|
+
const urlString = util.format(providerByTypeAndIdURLTemplate, state.getHost(), getRealmPath('/'), type, id);
|
|
69
|
+
const {
|
|
70
|
+
data
|
|
71
|
+
} = await generateAmApi(getApiConfig()).get(urlString, {
|
|
72
|
+
withCredentials: true
|
|
73
|
+
});
|
|
74
|
+
return data;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Get admin federation provider by type and id
|
|
79
|
+
* @param {String} type admin federation provider type
|
|
80
|
+
* @param {String} id admin federation provider id/name
|
|
81
|
+
* @param {Object} providerData a admin federation provider object
|
|
82
|
+
* @returns {Promise} a promise that resolves to an object containing a admin federation provider
|
|
83
|
+
*/
|
|
84
|
+
export async function putProviderByTypeAndId(type, id, providerData) {
|
|
85
|
+
// until we figure out a way to use transport keys in Frodo,
|
|
86
|
+
// we'll have to drop those encrypted attributes.
|
|
87
|
+
const cleanData = deleteDeepByKey(providerData, '-encrypted');
|
|
88
|
+
const urlString = util.format(providerByTypeAndIdURLTemplate, state.getHost(), getRealmPath('/'), type, id);
|
|
89
|
+
const {
|
|
90
|
+
data
|
|
91
|
+
} = await generateAmApi(getApiConfig()).put(urlString, cleanData, {
|
|
92
|
+
withCredentials: true
|
|
93
|
+
});
|
|
94
|
+
return data;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Delete admin federation provider by type and id
|
|
99
|
+
* @param {string} providerId provider type
|
|
100
|
+
* @param {string} providerId provider id
|
|
101
|
+
* @returns {Promise<unknown>} a promise that resolves to a admin federation provider
|
|
102
|
+
*/
|
|
103
|
+
export async function deleteProviderByTypeAndId(type, providerId) {
|
|
104
|
+
const urlString = util.format(providerByTypeAndIdURLTemplate, state.getHost(), getRealmPath('/'), type, providerId);
|
|
105
|
+
const {
|
|
106
|
+
data
|
|
107
|
+
} = await generateAmApi(getApiConfig()).delete(urlString, {
|
|
108
|
+
withCredentials: true
|
|
109
|
+
});
|
|
110
|
+
return data;
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=AdminFederationProvidersApi.js.map
|
package/esm/index.mjs
CHANGED
|
@@ -19,6 +19,7 @@ export * as IdmConfigRaw from './api/IdmConfigApi';
|
|
|
19
19
|
|
|
20
20
|
// Ops Layer
|
|
21
21
|
export * as Admin from './ops/AdminOps';
|
|
22
|
+
export * as AdminFederation from './ops/cloud/AdminFederationOps';
|
|
22
23
|
export * as Agent from './ops/AgentOps';
|
|
23
24
|
export * as Authenticate from './ops/AuthenticateOps';
|
|
24
25
|
export * as CirclesOfTrust from './ops/CirclesOfTrustOps';
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
import { deleteProviderByTypeAndId, getAdminFederationProviders as _getAdminFederationProviders, putProviderByTypeAndId as _putProviderByTypeAndId } from '../../api/cloud/AdminFederationProvidersApi';
|
|
2
|
+
import { getMetadata } from '../utils/ExportImportUtils';
|
|
3
|
+
import { debugMessage } from '../utils/Console';
|
|
4
|
+
import { getConfigEntity, putConfigEntity } from '../../api/IdmConfigApi';
|
|
5
|
+
const ADMIN_FED_CONFIG_ID_PREFIX = 'fidc/federation-';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Create an empty idp export template
|
|
9
|
+
* @returns {AdminFederationExportInterface} an empty idp export template
|
|
10
|
+
*/
|
|
11
|
+
function createAdminFederationExportTemplate() {
|
|
12
|
+
return {
|
|
13
|
+
meta: getMetadata(),
|
|
14
|
+
config: {},
|
|
15
|
+
idp: {}
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Get all admin federation providers
|
|
21
|
+
* @returns {Promise} a promise that resolves to an object containing an array of admin federation providers
|
|
22
|
+
*/
|
|
23
|
+
export async function getAdminFederationProviders() {
|
|
24
|
+
const {
|
|
25
|
+
result
|
|
26
|
+
} = await _getAdminFederationProviders();
|
|
27
|
+
return result;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Get admin federation provider by id
|
|
32
|
+
* @param {String} providerId social identity provider id/name
|
|
33
|
+
* @returns {Promise} a promise that resolves a social admin federation object
|
|
34
|
+
*/
|
|
35
|
+
export async function getAdminFederationProvider(providerId) {
|
|
36
|
+
const response = await getAdminFederationProviders();
|
|
37
|
+
const foundProviders = response.filter(provider => provider._id === providerId);
|
|
38
|
+
switch (foundProviders.length) {
|
|
39
|
+
case 1:
|
|
40
|
+
return foundProviders[0];
|
|
41
|
+
case 0:
|
|
42
|
+
throw new Error(`Provider '${providerId}' not found`);
|
|
43
|
+
default:
|
|
44
|
+
throw new Error(`${foundProviders.length} providers '${providerId}' found`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
export async function putProviderByTypeAndId(providerType, providerId, providerData) {
|
|
48
|
+
debugMessage(`AdminFederationOps.putProviderByTypeAndId: start`);
|
|
49
|
+
try {
|
|
50
|
+
const response = await _putProviderByTypeAndId(providerType, providerId, providerData);
|
|
51
|
+
debugMessage(`AdminFederationOps.putProviderByTypeAndId: end`);
|
|
52
|
+
return response;
|
|
53
|
+
} catch (importError) {
|
|
54
|
+
var _importError$response, _importError$response2, _importError$response3;
|
|
55
|
+
if (((_importError$response = importError.response) === null || _importError$response === void 0 ? void 0 : _importError$response.status) === 400 && ((_importError$response2 = importError.response) === null || _importError$response2 === void 0 ? void 0 : (_importError$response3 = _importError$response2.data) === null || _importError$response3 === void 0 ? void 0 : _importError$response3.message) === 'Invalid attribute specified.') {
|
|
56
|
+
const {
|
|
57
|
+
validAttributes
|
|
58
|
+
} = importError.response.data.detail;
|
|
59
|
+
validAttributes.push('_id', '_type');
|
|
60
|
+
for (const attribute of Object.keys(providerData)) {
|
|
61
|
+
if (!validAttributes.includes(attribute)) {
|
|
62
|
+
debugMessage(`Removing invalid attribute: ${attribute}`);
|
|
63
|
+
delete providerData[attribute];
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
const response = await _putProviderByTypeAndId(providerType, providerId, providerData);
|
|
67
|
+
debugMessage(`AdminFederationOps.putProviderByTypeAndId: end (after retry)`);
|
|
68
|
+
return response;
|
|
69
|
+
} else {
|
|
70
|
+
// re-throw unhandleable error
|
|
71
|
+
throw importError;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Delete admin federation provider by id
|
|
78
|
+
* @param {String} providerId admin federation provider id/name
|
|
79
|
+
* @returns {Promise} a promise that resolves to an admin federation provider object
|
|
80
|
+
*/
|
|
81
|
+
export async function deleteAdminFederationProvider(providerId) {
|
|
82
|
+
const response = await getAdminFederationProviders();
|
|
83
|
+
const foundProviders = response.filter(provider => provider._id === providerId);
|
|
84
|
+
switch (foundProviders.length) {
|
|
85
|
+
case 1:
|
|
86
|
+
return await deleteProviderByTypeAndId(foundProviders[0]._type._id, foundProviders[0]._id);
|
|
87
|
+
case 0:
|
|
88
|
+
throw new Error(`Provider '${providerId}' not found`);
|
|
89
|
+
default:
|
|
90
|
+
throw new Error(`${foundProviders.length} providers '${providerId}' found`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Export admin federation provider by id
|
|
96
|
+
* @param {string} providerId provider id/name
|
|
97
|
+
* @returns {Promise<AdminFederationExportInterface>} a promise that resolves to a SocialProviderExportInterface object
|
|
98
|
+
*/
|
|
99
|
+
export async function exportAdminFederationProvider(providerId) {
|
|
100
|
+
debugMessage(`AdminFederationOps.exportAdminFederationProvider: start`);
|
|
101
|
+
const exportData = createAdminFederationExportTemplate();
|
|
102
|
+
const errors = [];
|
|
103
|
+
try {
|
|
104
|
+
const idpData = await getAdminFederationProvider(providerId);
|
|
105
|
+
exportData.idp[idpData._id] = idpData;
|
|
106
|
+
const idpConfig = await getConfigEntity(`${ADMIN_FED_CONFIG_ID_PREFIX}${providerId}`);
|
|
107
|
+
exportData.config[idpConfig._id] = idpConfig;
|
|
108
|
+
} catch (error) {
|
|
109
|
+
errors.push(error);
|
|
110
|
+
}
|
|
111
|
+
if (errors.length) {
|
|
112
|
+
const errorMessages = errors.map(error => error.message).join('\n');
|
|
113
|
+
throw new Error(`Export error:\n${errorMessages}`);
|
|
114
|
+
}
|
|
115
|
+
debugMessage(`AdminFederationOps.exportAdminFederationProvider: end`);
|
|
116
|
+
return exportData;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Export all providers
|
|
121
|
+
* @returns {Promise<AdminFederationExportInterface>} a promise that resolves to a SocialProviderExportInterface object
|
|
122
|
+
*/
|
|
123
|
+
export async function exportAdminFederationProviders() {
|
|
124
|
+
debugMessage(`AdminFederationOps.exportAdminFederationProviders: start`);
|
|
125
|
+
const exportData = createAdminFederationExportTemplate();
|
|
126
|
+
const errors = [];
|
|
127
|
+
try {
|
|
128
|
+
const allIdpsData = await getAdminFederationProviders();
|
|
129
|
+
for (const idpData of allIdpsData) {
|
|
130
|
+
try {
|
|
131
|
+
exportData.idp[idpData._id] = idpData;
|
|
132
|
+
const idpConfig = await getConfigEntity(`${ADMIN_FED_CONFIG_ID_PREFIX}${idpData._id}`);
|
|
133
|
+
exportData.config[idpConfig._id] = idpConfig;
|
|
134
|
+
} catch (error) {
|
|
135
|
+
errors.push(error);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
} catch (error) {
|
|
139
|
+
errors.push(error);
|
|
140
|
+
}
|
|
141
|
+
if (errors.length) {
|
|
142
|
+
const errorMessages = errors.map(error => error.message).join('\n');
|
|
143
|
+
throw new Error(`Export error:\n${errorMessages}`);
|
|
144
|
+
}
|
|
145
|
+
debugMessage(`AdminFederationOps.exportAdminFederationProviders: end`);
|
|
146
|
+
return exportData;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Import admin federation provider by id/name
|
|
151
|
+
* @param {string} providerId provider id/name
|
|
152
|
+
* @param {AdminFederationExportInterface} importData import data
|
|
153
|
+
*/
|
|
154
|
+
export async function importAdminFederationProvider(providerId, importData) {
|
|
155
|
+
let response = null;
|
|
156
|
+
const errors = [];
|
|
157
|
+
const imported = [];
|
|
158
|
+
for (const idpId of Object.keys(importData.idp)) {
|
|
159
|
+
if (idpId === providerId) {
|
|
160
|
+
try {
|
|
161
|
+
response = await putProviderByTypeAndId(importData.idp[idpId]._type._id, idpId, importData.idp[idpId]);
|
|
162
|
+
const configId = `${ADMIN_FED_CONFIG_ID_PREFIX}${idpId}`;
|
|
163
|
+
if (importData.config[configId]) {
|
|
164
|
+
await putConfigEntity(configId, importData.config[configId]);
|
|
165
|
+
}
|
|
166
|
+
imported.push(idpId);
|
|
167
|
+
} catch (error) {
|
|
168
|
+
errors.push(error);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
if (errors.length) {
|
|
173
|
+
const errorMessages = errors.map(error => error.message).join('\n');
|
|
174
|
+
throw new Error(`Import error:\n${errorMessages}`);
|
|
175
|
+
}
|
|
176
|
+
if (0 === imported.length) {
|
|
177
|
+
throw new Error(`Import error:\n${providerId} not found in import data!`);
|
|
178
|
+
}
|
|
179
|
+
return response;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Import first provider
|
|
184
|
+
* @param {AdminFederationExportInterface} importData import data
|
|
185
|
+
*/
|
|
186
|
+
export async function importFirstAdminFederationProvider(importData) {
|
|
187
|
+
let response = null;
|
|
188
|
+
const errors = [];
|
|
189
|
+
const imported = [];
|
|
190
|
+
for (const idpId of Object.keys(importData.idp)) {
|
|
191
|
+
try {
|
|
192
|
+
response = await putProviderByTypeAndId(importData.idp[idpId]._type._id, idpId, importData.idp[idpId]);
|
|
193
|
+
const configId = `${ADMIN_FED_CONFIG_ID_PREFIX}${idpId}`;
|
|
194
|
+
if (importData.config[configId]) {
|
|
195
|
+
await putConfigEntity(configId, importData.config[configId]);
|
|
196
|
+
}
|
|
197
|
+
imported.push(idpId);
|
|
198
|
+
} catch (error) {
|
|
199
|
+
errors.push(error);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
if (errors.length) {
|
|
203
|
+
const errorMessages = errors.map(error => error.message).join('\n');
|
|
204
|
+
throw new Error(`Import error:\n${errorMessages}`);
|
|
205
|
+
}
|
|
206
|
+
if (0 === imported.length) {
|
|
207
|
+
throw new Error(`Import error:\nNo providers found in import data!`);
|
|
208
|
+
}
|
|
209
|
+
return response;
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
/**
|
|
213
|
+
* Import all providers
|
|
214
|
+
* @param {AdminFederationExportInterface} importData import data
|
|
215
|
+
*/
|
|
216
|
+
export async function importAdminFederationProviders(importData) {
|
|
217
|
+
const response = [];
|
|
218
|
+
const errors = [];
|
|
219
|
+
const imported = [];
|
|
220
|
+
for (const idpId of Object.keys(importData.idp)) {
|
|
221
|
+
try {
|
|
222
|
+
response.push(await putProviderByTypeAndId(importData.idp[idpId]._type._id, idpId, importData.idp[idpId]));
|
|
223
|
+
const configId = `${ADMIN_FED_CONFIG_ID_PREFIX}${idpId}`;
|
|
224
|
+
if (importData.config[configId]) {
|
|
225
|
+
await putConfigEntity(configId, importData.config[configId]);
|
|
226
|
+
}
|
|
227
|
+
imported.push(idpId);
|
|
228
|
+
} catch (error) {
|
|
229
|
+
errors.push(error);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
if (errors.length) {
|
|
233
|
+
const errorMessages = errors.map(error => error.message).join('\n');
|
|
234
|
+
throw new Error(`Import error:\n${errorMessages}`);
|
|
235
|
+
}
|
|
236
|
+
if (0 === imported.length) {
|
|
237
|
+
throw new Error(`Import error:\nNo providers found in import data!`);
|
|
238
|
+
}
|
|
239
|
+
return response;
|
|
240
|
+
}
|
|
241
|
+
//# sourceMappingURL=AdminFederationOps.js.map
|
package/package.json
CHANGED
package/types/api/ApiTypes.d.ts
CHANGED
|
@@ -16,6 +16,15 @@ export interface PagedResults {
|
|
|
16
16
|
export interface UiConfigInterface {
|
|
17
17
|
categories: string;
|
|
18
18
|
}
|
|
19
|
+
export type AdminFederationConfigSkeleton = IdObjectSkeletonInterface & {
|
|
20
|
+
groups: {
|
|
21
|
+
claim: string;
|
|
22
|
+
mappings: {
|
|
23
|
+
'super-admins': string[];
|
|
24
|
+
'tenant-admins': string[];
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
};
|
|
19
28
|
export interface NodeRefSkeletonInterface {
|
|
20
29
|
connections: Record<string, string>;
|
|
21
30
|
displayName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/api/ApiTypes.ts"],"names":[],"mappings":"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","file":"ApiTypes.d.ts","sourcesContent":["export interface NoIdObjectSkeletonInterface {\n _rev?: number;\n [k: string]:\n | string\n | number\n | boolean\n | string[]\n | IdObjectSkeletonInterface\n | object\n | null;\n}\n\nexport interface IdObjectSkeletonInterface extends NoIdObjectSkeletonInterface {\n _id: string;\n}\n\nexport interface PagedResults {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n result: any[];\n resultCount: number;\n pagedResultsCookie: string;\n totalPagedResultsPolicy: string;\n totalPagedResults: number;\n remainingPagedResults: number;\n}\n\nexport interface UiConfigInterface {\n categories: string;\n}\n\nexport interface NodeRefSkeletonInterface {\n connections: Record<string, string>;\n displayName: string;\n nodeType: string;\n x: number;\n y: number;\n}\n\nexport interface InnerNodeRefSkeletonInterface {\n _id: string;\n displayName: string;\n nodeType: string;\n}\n\nexport type TreeSkeleton = IdObjectSkeletonInterface & {\n entryNodeId: string;\n nodes: Record<string, NodeRefSkeletonInterface>;\n identityResource?: string;\n uiConfig?: UiConfigInterface;\n enabled?: boolean;\n};\n\nexport type AmServiceType = IdObjectSkeletonInterface & {\n name: string;\n};\n\nexport type NodeSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n nodes?: InnerNodeRefSkeletonInterface[];\n tree?: string;\n identityResource?: string;\n};\n\nexport type SocialIdpSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n enabled: boolean;\n};\n\nexport type PolicySetSkeleton = NoIdObjectSkeletonInterface & {\n name: string;\n resourceTypeUuids: string[];\n};\n\nexport type ResourceTypeSkeleton = NoIdObjectSkeletonInterface & {\n uuid: string;\n name: string;\n};\n\nexport enum PolicyConditionType {\n Script = 'Script',\n AMIdentityMembership = 'AMIdentityMembership',\n IPv6 = 'IPv6',\n IPv4 = 'IPv4',\n SimpleTime = 'SimpleTime',\n LEAuthLevel = 'LEAuthLevel',\n LDAPFilter = 'LDAPFilter',\n AuthScheme = 'AuthScheme',\n Session = 'Session',\n AND = 'AND',\n AuthenticateToRealm = 'AuthenticateToRealm',\n ResourceEnvIP = 'ResourceEnvIP',\n Policy = 'Policy',\n OAuth2Scope = 'OAuth2Scope',\n SessionProperty = 'SessionProperty',\n OR = 'OR',\n Transaction = 'Transaction',\n NOT = 'NOT',\n AuthLevel = 'AuthLevel',\n AuthenticateToService = 'AuthenticateToService',\n}\n\nexport type PolicyCondition = NoIdObjectSkeletonInterface & {\n type: keyof typeof PolicyConditionType;\n condition?: PolicyCondition;\n conditions?: PolicyCondition[];\n};\n\nexport type PolicySkeleton = IdObjectSkeletonInterface & {\n name: string;\n applicationName: string;\n condition?: PolicyCondition;\n resourceTypeUuid: string;\n};\n\nexport type OAuth2ClientSkeleton = IdObjectSkeletonInterface & {\n overrideOAuth2ClientConfig?: {\n [k: string]: string | number | boolean | string[] | object | null;\n };\n advancedOAuth2ClientConfig?: {\n descriptions: {\n inherited: boolean;\n value: string[];\n };\n [k: string]: string | number | boolean | string[] | object | null;\n };\n signEncOAuth2ClientConfig?: {\n [k: string]: string | number | boolean | string[] | object | null;\n };\n coreOpenIDClientConfig?: {\n [k: string]: string | number | boolean | string[] | object | null;\n };\n coreOAuth2ClientConfig?: {\n userpassword?: null;\n clientName?: {\n inherited: boolean;\n value: string[];\n };\n accessTokenLifetime?: {\n inherited: boolean;\n value: number;\n };\n [k: string]: string | number | boolean | string[] | object | null;\n };\n coreUmaClientConfig?: {\n [k: string]: string | number | boolean | string[] | object | null;\n };\n _type: AmServiceType;\n};\n\nexport type AmServiceSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n};\n\nexport type AgentSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n};\n\nexport type EmailTemplateSkeleton = IdObjectSkeletonInterface & {\n defaultLocale?: string;\n displayName?: string;\n enabled?: boolean;\n from: string;\n subject: Record<string, string>;\n message?: Record<string, string>;\n html?: Record<string, string>;\n};\n\nexport type ThemeSkeleton = IdObjectSkeletonInterface & {\n name: string;\n isDefault: boolean;\n linkedTrees: string[];\n};\n\nexport type UiThemeRealmObject = IdObjectSkeletonInterface & {\n name: string;\n realm: Map<string, ThemeSkeleton[]>;\n};\n\nexport enum ScriptLanguage {\n GROOVY,\n JAVASCRIPT,\n}\n\nexport enum ScriptContext {\n OAUTH2_ACCESS_TOKEN_MODIFICATION,\n AUTHENTICATION_CLIENT_SIDE,\n AUTHENTICATION_TREE_DECISION_NODE,\n AUTHENTICATION_SERVER_SIDE,\n SOCIAL_IDP_PROFILE_TRANSFORMATION,\n OAUTH2_VALIDATE_SCOPE,\n CONFIG_PROVIDER_NODE,\n OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER,\n OAUTH2_EVALUATE_SCOPE,\n POLICY_CONDITION,\n OIDC_CLAIMS,\n SAML2_IDP_ADAPTER,\n SAML2_IDP_ATTRIBUTE_MAPPER,\n OAUTH2_MAY_ACT,\n}\n\nexport type ScriptSkeleton = IdObjectSkeletonInterface & {\n name: string;\n description: string;\n default: boolean;\n script: string | string[];\n language: keyof typeof ScriptLanguage;\n context: keyof typeof ScriptContext;\n createdBy: string;\n creationDate: number;\n lastModifiedBy: string;\n lastModifiedDate: number;\n};\n\nexport enum Saml2ProiderLocation {\n HOSTED = 'hosted',\n REMOTE = 'remote',\n}\n\nexport type Saml2ProviderStub = IdObjectSkeletonInterface & {\n entityId: string;\n location: Saml2ProiderLocation;\n roles: string[];\n};\n\nexport type Saml2ProviderSkeleton = IdObjectSkeletonInterface & {\n entityId: string;\n entityLocation: Saml2ProiderLocation;\n serviceProvider: unknown;\n identityProvider: unknown;\n attributeQueryProvider: unknown;\n xacmlPolicyEnforcementPoint: unknown;\n};\n\nexport type CircleOfTrustSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n status: string;\n trustedProviders: string[];\n};\n\nexport type PagedResult<Result> = {\n result: Result[];\n resultCount: number;\n pagedResultsCookie: string;\n totalPagedResultsPolicy: 'EXACT';\n totalPagedResults: number;\n remainingPagedResults: number;\n};\n\nexport type LogApiKey = {\n name: string;\n api_key_id: string;\n created_at: string;\n};\n\nexport type LogEventPayloadSkeleton = NoIdObjectSkeletonInterface & {\n context: string;\n level: string;\n logger: string;\n mdc: {\n transactionId: string;\n };\n message: string;\n thread: string;\n timestamp: string;\n transactionId: string;\n};\n\nexport type LogEventSkeleton = NoIdObjectSkeletonInterface & {\n payload: string | LogEventPayloadSkeleton;\n timestamp: string;\n type: string;\n source: string;\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/api/ApiTypes.ts"],"names":[],"mappings":"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","file":"ApiTypes.d.ts","sourcesContent":["export interface NoIdObjectSkeletonInterface {\n _rev?: number;\n [k: string]:\n | string\n | number\n | boolean\n | string[]\n | IdObjectSkeletonInterface\n | object\n | null;\n}\n\nexport interface IdObjectSkeletonInterface extends NoIdObjectSkeletonInterface {\n _id: string;\n}\n\nexport interface PagedResults {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n result: any[];\n resultCount: number;\n pagedResultsCookie: string;\n totalPagedResultsPolicy: string;\n totalPagedResults: number;\n remainingPagedResults: number;\n}\n\nexport interface UiConfigInterface {\n categories: string;\n}\n\nexport type AdminFederationConfigSkeleton = IdObjectSkeletonInterface & {\n groups: {\n claim: string;\n mappings: {\n 'super-admins': string[];\n 'tenant-admins': string[];\n };\n };\n};\n\nexport interface NodeRefSkeletonInterface {\n connections: Record<string, string>;\n displayName: string;\n nodeType: string;\n x: number;\n y: number;\n}\n\nexport interface InnerNodeRefSkeletonInterface {\n _id: string;\n displayName: string;\n nodeType: string;\n}\n\nexport type TreeSkeleton = IdObjectSkeletonInterface & {\n entryNodeId: string;\n nodes: Record<string, NodeRefSkeletonInterface>;\n identityResource?: string;\n uiConfig?: UiConfigInterface;\n enabled?: boolean;\n};\n\nexport type AmServiceType = IdObjectSkeletonInterface & {\n name: string;\n};\n\nexport type NodeSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n nodes?: InnerNodeRefSkeletonInterface[];\n tree?: string;\n identityResource?: string;\n};\n\nexport type SocialIdpSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n enabled: boolean;\n};\n\nexport type PolicySetSkeleton = NoIdObjectSkeletonInterface & {\n name: string;\n resourceTypeUuids: string[];\n};\n\nexport type ResourceTypeSkeleton = NoIdObjectSkeletonInterface & {\n uuid: string;\n name: string;\n};\n\nexport enum PolicyConditionType {\n Script = 'Script',\n AMIdentityMembership = 'AMIdentityMembership',\n IPv6 = 'IPv6',\n IPv4 = 'IPv4',\n SimpleTime = 'SimpleTime',\n LEAuthLevel = 'LEAuthLevel',\n LDAPFilter = 'LDAPFilter',\n AuthScheme = 'AuthScheme',\n Session = 'Session',\n AND = 'AND',\n AuthenticateToRealm = 'AuthenticateToRealm',\n ResourceEnvIP = 'ResourceEnvIP',\n Policy = 'Policy',\n OAuth2Scope = 'OAuth2Scope',\n SessionProperty = 'SessionProperty',\n OR = 'OR',\n Transaction = 'Transaction',\n NOT = 'NOT',\n AuthLevel = 'AuthLevel',\n AuthenticateToService = 'AuthenticateToService',\n}\n\nexport type PolicyCondition = NoIdObjectSkeletonInterface & {\n type: keyof typeof PolicyConditionType;\n condition?: PolicyCondition;\n conditions?: PolicyCondition[];\n};\n\nexport type PolicySkeleton = IdObjectSkeletonInterface & {\n name: string;\n applicationName: string;\n condition?: PolicyCondition;\n resourceTypeUuid: string;\n};\n\nexport type OAuth2ClientSkeleton = IdObjectSkeletonInterface & {\n overrideOAuth2ClientConfig?: {\n [k: string]: string | number | boolean | string[] | object | null;\n };\n advancedOAuth2ClientConfig?: {\n descriptions: {\n inherited: boolean;\n value: string[];\n };\n [k: string]: string | number | boolean | string[] | object | null;\n };\n signEncOAuth2ClientConfig?: {\n [k: string]: string | number | boolean | string[] | object | null;\n };\n coreOpenIDClientConfig?: {\n [k: string]: string | number | boolean | string[] | object | null;\n };\n coreOAuth2ClientConfig?: {\n userpassword?: null;\n clientName?: {\n inherited: boolean;\n value: string[];\n };\n accessTokenLifetime?: {\n inherited: boolean;\n value: number;\n };\n [k: string]: string | number | boolean | string[] | object | null;\n };\n coreUmaClientConfig?: {\n [k: string]: string | number | boolean | string[] | object | null;\n };\n _type: AmServiceType;\n};\n\nexport type AmServiceSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any;\n};\n\nexport type AgentSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n};\n\nexport type EmailTemplateSkeleton = IdObjectSkeletonInterface & {\n defaultLocale?: string;\n displayName?: string;\n enabled?: boolean;\n from: string;\n subject: Record<string, string>;\n message?: Record<string, string>;\n html?: Record<string, string>;\n};\n\nexport type ThemeSkeleton = IdObjectSkeletonInterface & {\n name: string;\n isDefault: boolean;\n linkedTrees: string[];\n};\n\nexport type UiThemeRealmObject = IdObjectSkeletonInterface & {\n name: string;\n realm: Map<string, ThemeSkeleton[]>;\n};\n\nexport enum ScriptLanguage {\n GROOVY,\n JAVASCRIPT,\n}\n\nexport enum ScriptContext {\n OAUTH2_ACCESS_TOKEN_MODIFICATION,\n AUTHENTICATION_CLIENT_SIDE,\n AUTHENTICATION_TREE_DECISION_NODE,\n AUTHENTICATION_SERVER_SIDE,\n SOCIAL_IDP_PROFILE_TRANSFORMATION,\n OAUTH2_VALIDATE_SCOPE,\n CONFIG_PROVIDER_NODE,\n OAUTH2_AUTHORIZE_ENDPOINT_DATA_PROVIDER,\n OAUTH2_EVALUATE_SCOPE,\n POLICY_CONDITION,\n OIDC_CLAIMS,\n SAML2_IDP_ADAPTER,\n SAML2_IDP_ATTRIBUTE_MAPPER,\n OAUTH2_MAY_ACT,\n}\n\nexport type ScriptSkeleton = IdObjectSkeletonInterface & {\n name: string;\n description: string;\n default: boolean;\n script: string | string[];\n language: keyof typeof ScriptLanguage;\n context: keyof typeof ScriptContext;\n createdBy: string;\n creationDate: number;\n lastModifiedBy: string;\n lastModifiedDate: number;\n};\n\nexport enum Saml2ProiderLocation {\n HOSTED = 'hosted',\n REMOTE = 'remote',\n}\n\nexport type Saml2ProviderStub = IdObjectSkeletonInterface & {\n entityId: string;\n location: Saml2ProiderLocation;\n roles: string[];\n};\n\nexport type Saml2ProviderSkeleton = IdObjectSkeletonInterface & {\n entityId: string;\n entityLocation: Saml2ProiderLocation;\n serviceProvider: unknown;\n identityProvider: unknown;\n attributeQueryProvider: unknown;\n xacmlPolicyEnforcementPoint: unknown;\n};\n\nexport type CircleOfTrustSkeleton = IdObjectSkeletonInterface & {\n _type: AmServiceType;\n status: string;\n trustedProviders: string[];\n};\n\nexport type PagedResult<Result> = {\n result: Result[];\n resultCount: number;\n pagedResultsCookie: string;\n totalPagedResultsPolicy: 'EXACT';\n totalPagedResults: number;\n remainingPagedResults: number;\n};\n\nexport type LogApiKey = {\n name: string;\n api_key_id: string;\n created_at: string;\n};\n\nexport type LogEventPayloadSkeleton = NoIdObjectSkeletonInterface & {\n context: string;\n level: string;\n logger: string;\n mdc: {\n transactionId: string;\n };\n message: string;\n thread: string;\n timestamp: string;\n transactionId: string;\n};\n\nexport type LogEventSkeleton = NoIdObjectSkeletonInterface & {\n payload: string | LogEventPayloadSkeleton;\n timestamp: string;\n type: string;\n source: string;\n};\n"]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get admin federation provider types
|
|
3
|
+
* @returns {Promise} a promise that resolves to an object containing an array of admin federation provider types
|
|
4
|
+
*/
|
|
5
|
+
export declare function getAdminFederationProviderTypes(): Promise<any>;
|
|
6
|
+
/**
|
|
7
|
+
* Get admin federation providers by type
|
|
8
|
+
* @param {String} type admin federation provider type
|
|
9
|
+
* @returns {Promise} a promise that resolves to an object containing an array of admin federation providers of the requested type
|
|
10
|
+
*/
|
|
11
|
+
export declare function getAdminFederationProvidersByType(type: any): Promise<any>;
|
|
12
|
+
/**
|
|
13
|
+
* Get all admin federation providers
|
|
14
|
+
* @returns {Promise} a promise that resolves to an object containing an array of admin federation providers
|
|
15
|
+
*/
|
|
16
|
+
export declare function getAdminFederationProviders(): Promise<any>;
|
|
17
|
+
/**
|
|
18
|
+
* Get admin federation provider by type and id
|
|
19
|
+
* @param {*} type admin federation provider type
|
|
20
|
+
* @param {*} id admin federation provider id/name
|
|
21
|
+
* @returns {Promise} a promise that resolves to an object containing a admin federation provider
|
|
22
|
+
*/
|
|
23
|
+
export declare function getProviderByTypeAndId(type: any, id: any): Promise<any>;
|
|
24
|
+
/**
|
|
25
|
+
* Get admin federation provider by type and id
|
|
26
|
+
* @param {String} type admin federation provider type
|
|
27
|
+
* @param {String} id admin federation provider id/name
|
|
28
|
+
* @param {Object} providerData a admin federation provider object
|
|
29
|
+
* @returns {Promise} a promise that resolves to an object containing a admin federation provider
|
|
30
|
+
*/
|
|
31
|
+
export declare function putProviderByTypeAndId(type: any, id: any, providerData: any): Promise<any>;
|
|
32
|
+
/**
|
|
33
|
+
* Delete admin federation provider by type and id
|
|
34
|
+
* @param {string} providerId provider type
|
|
35
|
+
* @param {string} providerId provider id
|
|
36
|
+
* @returns {Promise<unknown>} a promise that resolves to a admin federation provider
|
|
37
|
+
*/
|
|
38
|
+
export declare function deleteProviderByTypeAndId(type: string, providerId: string): Promise<any>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/api/cloud/AdminFederationProvidersApi.ts"],"names":[],"mappings":"AAsBA;;;GAGG;AACH,wBAAsB,+BAA+B,iBAUpD;AAED;;;;GAIG;AACH,wBAAsB,iCAAiC,CAAC,IAAI,KAAA,gBAW3D;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,iBAchD;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,KAAA,EAAE,EAAE,KAAA,gBAYpD;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,KAAA,EAAE,EAAE,KAAA,EAAE,YAAY,KAAA,gBAmBlE;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,gBAanB","file":"AdminFederationProvidersApi.d.ts","sourcesContent":["import util from 'util';\nimport { generateAmApi } from '../BaseApi';\nimport { deleteDeepByKey, getRealmPath } from '../utils/ApiUtils';\nimport * as state from '../../shared/State';\n\nconst getAllProviderTypesURLTemplate =\n '%s/json%s/realm-config/services/SocialIdentityProviders?_action=getAllTypes';\nconst providerByTypeAndIdURLTemplate =\n '%s/json%s/realm-config/services/SocialIdentityProviders/%s/%s';\nconst getAllProvidersURLTemplate =\n '%s/json%s/realm-config/services/SocialIdentityProviders?_action=nextdescendents';\nconst getProvidersByTypeURLTemplate =\n '%s/json%s/realm-config/services/SocialIdentityProviders/%s?_queryFilter=true';\nconst apiVersion = 'protocol=2.1,resource=1.0';\nconst getApiConfig = () => {\n const configPath = getRealmPath('/');\n return {\n path: `${configPath}/realm-config/services/SocialIdentityProviders`,\n apiVersion,\n };\n};\n\n/**\n * Get admin federation provider types\n * @returns {Promise} a promise that resolves to an object containing an array of admin federation provider types\n */\nexport async function getAdminFederationProviderTypes() {\n const urlString = util.format(\n getAllProviderTypesURLTemplate,\n state.getHost(),\n getRealmPath('/')\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Get admin federation providers by type\n * @param {String} type admin federation provider type\n * @returns {Promise} a promise that resolves to an object containing an array of admin federation providers of the requested type\n */\nexport async function getAdminFederationProvidersByType(type) {\n const urlString = util.format(\n getProvidersByTypeURLTemplate,\n state.getHost(),\n getRealmPath('/'),\n type\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Get all admin federation providers\n * @returns {Promise} a promise that resolves to an object containing an array of admin federation providers\n */\nexport async function getAdminFederationProviders() {\n const urlString = util.format(\n getAllProvidersURLTemplate,\n state.getHost(),\n getRealmPath('/')\n );\n const { data } = await generateAmApi(getApiConfig()).post(\n urlString,\n {},\n {\n withCredentials: true,\n }\n );\n return data;\n}\n\n/**\n * Get admin federation provider by type and id\n * @param {*} type admin federation provider type\n * @param {*} id admin federation provider id/name\n * @returns {Promise} a promise that resolves to an object containing a admin federation provider\n */\nexport async function getProviderByTypeAndId(type, id) {\n const urlString = util.format(\n providerByTypeAndIdURLTemplate,\n state.getHost(),\n getRealmPath('/'),\n type,\n id\n );\n const { data } = await generateAmApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Get admin federation provider by type and id\n * @param {String} type admin federation provider type\n * @param {String} id admin federation provider id/name\n * @param {Object} providerData a admin federation provider object\n * @returns {Promise} a promise that resolves to an object containing a admin federation provider\n */\nexport async function putProviderByTypeAndId(type, id, providerData) {\n // until we figure out a way to use transport keys in Frodo,\n // we'll have to drop those encrypted attributes.\n const cleanData = deleteDeepByKey(providerData, '-encrypted');\n const urlString = util.format(\n providerByTypeAndIdURLTemplate,\n state.getHost(),\n getRealmPath('/'),\n type,\n id\n );\n const { data } = await generateAmApi(getApiConfig()).put(\n urlString,\n cleanData,\n {\n withCredentials: true,\n }\n );\n return data;\n}\n\n/**\n * Delete admin federation provider by type and id\n * @param {string} providerId provider type\n * @param {string} providerId provider id\n * @returns {Promise<unknown>} a promise that resolves to a admin federation provider\n */\nexport async function deleteProviderByTypeAndId(\n type: string,\n providerId: string\n) {\n const urlString = util.format(\n providerByTypeAndIdURLTemplate,\n state.getHost(),\n getRealmPath('/'),\n type,\n providerId\n );\n const { data } = await generateAmApi(getApiConfig()).delete(urlString, {\n withCredentials: true,\n });\n return data;\n}\n"]}
|
package/types/index.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export * as TypesRaw from './api/ApiTypes';
|
|
|
10
10
|
export * as VariablesRaw from './api/cloud/VariablesApi';
|
|
11
11
|
export * as IdmConfigRaw from './api/IdmConfigApi';
|
|
12
12
|
export * as Admin from './ops/AdminOps';
|
|
13
|
+
export * as AdminFederation from './ops/cloud/AdminFederationOps';
|
|
13
14
|
export * as Agent from './ops/AgentOps';
|
|
14
15
|
export * as Authenticate from './ops/AuthenticateOps';
|
|
15
16
|
export * as CirclesOfTrust from './ops/CirclesOfTrustOps';
|
package/types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,eAAe,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AAIzC,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,0BAA0B,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,YAAY,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAC;AAGnD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,iBAAiB,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAC1C,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,cAAc,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,0BAA0B,CAAC;AAEtD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,iBAAiB,MAAM,+BAA+B,CAAC;AAGnE,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,yBAAyB,CAAC","file":"index.d.ts","sourcesContent":["import Color from 'colors';\n\nColor.enable();\n\n// Api Layer\nexport * as AgentRaw from './api/AgentApi';\nexport * as AuthenticateRaw from './api/AuthenticateApi';\nexport * as NodeRaw from './api/NodeApi';\n// TODO: need to figure out if this is the right approach or if we should even\n// use a public oauth2/oidc library. might be ok for now since there is only\n// one place where the cli needs to execute an oauth flow.\nexport * as OAuth2OIDCApi from './api/OAuth2OIDCApi';\nexport * as SecretsRaw from './api/cloud/SecretsApi';\nexport * as SocialIdentityProvidersRaw from './api/SocialIdentityProvidersApi';\nexport * as StartupRaw from './api/cloud/StartupApi';\nexport * as TreeRaw from './api/TreeApi';\nexport * as TypesRaw from './api/ApiTypes';\nexport * as VariablesRaw from './api/cloud/VariablesApi';\nexport * as IdmConfigRaw from './api/IdmConfigApi';\n\n// Ops Layer\nexport * as Admin from './ops/AdminOps';\nexport * as Agent from './ops/AgentOps';\nexport * as Authenticate from './ops/AuthenticateOps';\nexport * as CirclesOfTrust from './ops/CirclesOfTrustOps';\nexport * as ConnectionProfile from './ops/ConnectionProfileOps';\nexport * as EmailTemplate from './ops/EmailTemplateOps';\nexport * as Idp from './ops/IdpOps';\nexport * as Idm from './ops/IdmOps';\nexport * as Info from './ops/InfoOps';\nexport * as Journey from './ops/JourneyOps';\nexport * as Jose from './ops/JoseOps';\nexport * as Log from './ops/cloud/LogOps';\nexport * as ManagedObject from './ops/ManagedObjectOps';\nexport * as Node from './ops/NodeOps';\nexport * as OAuth2Client from './ops/OAuth2ClientOps';\nexport * as OAuth2Provider from './ops/OAuth2ProviderOps';\nexport * as Organization from './ops/OrganizationOps';\nexport * as Policy from './ops/PolicyOps';\nexport * as PolicySet from './ops/PolicySetOps';\nexport * as Realm from './ops/RealmOps';\nexport * as ResourceType from './ops/ResourceTypeOps';\nexport * as Saml2 from './ops/Saml2Ops';\nexport * as Script from './ops/ScriptOps';\nexport * as Service from './ops/ServiceOps';\nexport * as Secrets from './ops/cloud/SecretsOps';\nexport * as ServiceAccount from './ops/cloud/ServiceAccountOps';\nexport * as Startup from './ops/cloud/StartupOps';\nexport * as Theme from './ops/ThemeOps';\nexport * as Types from './ops/OpsTypes';\nexport * as Variables from './ops/cloud/VariablesOps';\n// TODO: revisit if there are better ways\nexport * as Utils from './ops/utils/OpsUtils';\nexport * as Base64 from './api/utils/Base64';\nexport * as ValidationUtils from './ops/utils/ValidationUtils';\nexport * as LibVersion from './ops/utils/Version';\nexport * as ExportImportUtils from './ops/utils/ExportImportUtils';\n// TODO: reconsider the aproach to pass in state from client\n// lib should be stateless, an aplication should own its state\nexport * as state from './shared/State';\nexport * as constants from './storage/StaticStorage';\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,eAAe,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AAIzC,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,0BAA0B,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,YAAY,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAC;AAGnD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,iBAAiB,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAC1C,OAAO,KAAK,aAAa,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,cAAc,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,YAAY,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,cAAc,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,0BAA0B,CAAC;AAEtD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,iBAAiB,MAAM,+BAA+B,CAAC;AAGnE,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,KAAK,SAAS,MAAM,yBAAyB,CAAC","file":"index.d.ts","sourcesContent":["import Color from 'colors';\n\nColor.enable();\n\n// Api Layer\nexport * as AgentRaw from './api/AgentApi';\nexport * as AuthenticateRaw from './api/AuthenticateApi';\nexport * as NodeRaw from './api/NodeApi';\n// TODO: need to figure out if this is the right approach or if we should even\n// use a public oauth2/oidc library. might be ok for now since there is only\n// one place where the cli needs to execute an oauth flow.\nexport * as OAuth2OIDCApi from './api/OAuth2OIDCApi';\nexport * as SecretsRaw from './api/cloud/SecretsApi';\nexport * as SocialIdentityProvidersRaw from './api/SocialIdentityProvidersApi';\nexport * as StartupRaw from './api/cloud/StartupApi';\nexport * as TreeRaw from './api/TreeApi';\nexport * as TypesRaw from './api/ApiTypes';\nexport * as VariablesRaw from './api/cloud/VariablesApi';\nexport * as IdmConfigRaw from './api/IdmConfigApi';\n\n// Ops Layer\nexport * as Admin from './ops/AdminOps';\nexport * as AdminFederation from './ops/cloud/AdminFederationOps';\nexport * as Agent from './ops/AgentOps';\nexport * as Authenticate from './ops/AuthenticateOps';\nexport * as CirclesOfTrust from './ops/CirclesOfTrustOps';\nexport * as ConnectionProfile from './ops/ConnectionProfileOps';\nexport * as EmailTemplate from './ops/EmailTemplateOps';\nexport * as Idp from './ops/IdpOps';\nexport * as Idm from './ops/IdmOps';\nexport * as Info from './ops/InfoOps';\nexport * as Journey from './ops/JourneyOps';\nexport * as Jose from './ops/JoseOps';\nexport * as Log from './ops/cloud/LogOps';\nexport * as ManagedObject from './ops/ManagedObjectOps';\nexport * as Node from './ops/NodeOps';\nexport * as OAuth2Client from './ops/OAuth2ClientOps';\nexport * as OAuth2Provider from './ops/OAuth2ProviderOps';\nexport * as Organization from './ops/OrganizationOps';\nexport * as Policy from './ops/PolicyOps';\nexport * as PolicySet from './ops/PolicySetOps';\nexport * as Realm from './ops/RealmOps';\nexport * as ResourceType from './ops/ResourceTypeOps';\nexport * as Saml2 from './ops/Saml2Ops';\nexport * as Script from './ops/ScriptOps';\nexport * as Service from './ops/ServiceOps';\nexport * as Secrets from './ops/cloud/SecretsOps';\nexport * as ServiceAccount from './ops/cloud/ServiceAccountOps';\nexport * as Startup from './ops/cloud/StartupOps';\nexport * as Theme from './ops/ThemeOps';\nexport * as Types from './ops/OpsTypes';\nexport * as Variables from './ops/cloud/VariablesOps';\n// TODO: revisit if there are better ways\nexport * as Utils from './ops/utils/OpsUtils';\nexport * as Base64 from './api/utils/Base64';\nexport * as ValidationUtils from './ops/utils/ValidationUtils';\nexport * as LibVersion from './ops/utils/Version';\nexport * as ExportImportUtils from './ops/utils/ExportImportUtils';\n// TODO: reconsider the aproach to pass in state from client\n// lib should be stateless, an aplication should own its state\nexport * as state from './shared/State';\nexport * as constants from './storage/StaticStorage';\n"]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { ExportMetaData } from '../OpsTypes';
|
|
2
|
+
import { AdminFederationConfigSkeleton, SocialIdpSkeleton } from '../../api/ApiTypes';
|
|
3
|
+
export interface AdminFederationExportInterface {
|
|
4
|
+
meta?: ExportMetaData;
|
|
5
|
+
config: Record<string, AdminFederationConfigSkeleton>;
|
|
6
|
+
idp: Record<string, SocialIdpSkeleton>;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Get all admin federation providers
|
|
10
|
+
* @returns {Promise} a promise that resolves to an object containing an array of admin federation providers
|
|
11
|
+
*/
|
|
12
|
+
export declare function getAdminFederationProviders(): Promise<any>;
|
|
13
|
+
/**
|
|
14
|
+
* Get admin federation provider by id
|
|
15
|
+
* @param {String} providerId social identity provider id/name
|
|
16
|
+
* @returns {Promise} a promise that resolves a social admin federation object
|
|
17
|
+
*/
|
|
18
|
+
export declare function getAdminFederationProvider(providerId: any): Promise<any>;
|
|
19
|
+
export declare function putProviderByTypeAndId(providerType: string, providerId: string, providerData: object): Promise<any>;
|
|
20
|
+
/**
|
|
21
|
+
* Delete admin federation provider by id
|
|
22
|
+
* @param {String} providerId admin federation provider id/name
|
|
23
|
+
* @returns {Promise} a promise that resolves to an admin federation provider object
|
|
24
|
+
*/
|
|
25
|
+
export declare function deleteAdminFederationProvider(providerId: string): Promise<unknown>;
|
|
26
|
+
/**
|
|
27
|
+
* Export admin federation provider by id
|
|
28
|
+
* @param {string} providerId provider id/name
|
|
29
|
+
* @returns {Promise<AdminFederationExportInterface>} a promise that resolves to a SocialProviderExportInterface object
|
|
30
|
+
*/
|
|
31
|
+
export declare function exportAdminFederationProvider(providerId: string): Promise<AdminFederationExportInterface>;
|
|
32
|
+
/**
|
|
33
|
+
* Export all providers
|
|
34
|
+
* @returns {Promise<AdminFederationExportInterface>} a promise that resolves to a SocialProviderExportInterface object
|
|
35
|
+
*/
|
|
36
|
+
export declare function exportAdminFederationProviders(): Promise<AdminFederationExportInterface>;
|
|
37
|
+
/**
|
|
38
|
+
* Import admin federation provider by id/name
|
|
39
|
+
* @param {string} providerId provider id/name
|
|
40
|
+
* @param {AdminFederationExportInterface} importData import data
|
|
41
|
+
*/
|
|
42
|
+
export declare function importAdminFederationProvider(providerId: string, importData: AdminFederationExportInterface): Promise<SocialIdpSkeleton>;
|
|
43
|
+
/**
|
|
44
|
+
* Import first provider
|
|
45
|
+
* @param {AdminFederationExportInterface} importData import data
|
|
46
|
+
*/
|
|
47
|
+
export declare function importFirstAdminFederationProvider(importData: AdminFederationExportInterface): Promise<SocialIdpSkeleton>;
|
|
48
|
+
/**
|
|
49
|
+
* Import all providers
|
|
50
|
+
* @param {AdminFederationExportInterface} importData import data
|
|
51
|
+
*/
|
|
52
|
+
export declare function importAdminFederationProviders(importData: AdminFederationExportInterface): Promise<SocialIdpSkeleton[]>;
|