mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 01:38:56 -04:00
Co-authored-by: Marshall Main <55718608+marshallmain@users.noreply.github.com>
This commit is contained in:
parent
9e34c53956
commit
74f651f132
3 changed files with 13 additions and 7 deletions
|
@ -38,6 +38,7 @@ import { RuleExecutionLogClient, truncateMessageList } from '../rule_execution_l
|
|||
import { RuleExecutionStatus } from '../../../../common/detection_engine/schemas/common/schemas';
|
||||
import { scheduleThrottledNotificationActions } from '../notifications/schedule_throttle_notification_actions';
|
||||
import aadFieldConversion from '../routes/index/signal_aad_mapping.json';
|
||||
import { extractReferences, injectReferences } from '../signals/saved_object_references';
|
||||
|
||||
/* eslint-disable complexity */
|
||||
export const createSecurityRuleTypeWrapper: CreateSecurityRuleTypeWrapper =
|
||||
|
@ -47,6 +48,11 @@ export const createSecurityRuleTypeWrapper: CreateSecurityRuleTypeWrapper =
|
|||
const persistenceRuleType = createPersistenceRuleTypeWrapper({ ruleDataClient, logger });
|
||||
return persistenceRuleType({
|
||||
...type,
|
||||
useSavedObjectReferences: {
|
||||
extractReferences: (params) => extractReferences({ logger, params }),
|
||||
injectReferences: (params, savedObjectReferences) =>
|
||||
injectReferences({ logger, params, savedObjectReferences }),
|
||||
},
|
||||
async executor(options) {
|
||||
const {
|
||||
alertId,
|
||||
|
|
|
@ -31,13 +31,13 @@ import { extractExceptionsList } from './extract_exceptions_list';
|
|||
* @param params The params of the base rule(s).
|
||||
* @returns The rule parameters and the saved object references to store.
|
||||
*/
|
||||
export const extractReferences = ({
|
||||
export const extractReferences = <TParams extends RuleParams>({
|
||||
logger,
|
||||
params,
|
||||
}: {
|
||||
logger: Logger;
|
||||
params: RuleParams;
|
||||
}): RuleParamsAndRefs<RuleParams> => {
|
||||
params: TParams;
|
||||
}): RuleParamsAndRefs<TParams> => {
|
||||
const exceptionReferences = extractExceptionsList({
|
||||
logger,
|
||||
exceptionsList: params.exceptionsList,
|
||||
|
|
|
@ -28,21 +28,21 @@ import { injectExceptionsReferences } from './inject_exceptions_list';
|
|||
* @param savedObjectReferences The saved object references to merge with the rule params
|
||||
* @returns The rule parameters with the saved object references.
|
||||
*/
|
||||
export const injectReferences = ({
|
||||
export const injectReferences = <TParams extends RuleParams>({
|
||||
logger,
|
||||
params,
|
||||
savedObjectReferences,
|
||||
}: {
|
||||
logger: Logger;
|
||||
params: RuleParams;
|
||||
params: TParams;
|
||||
savedObjectReferences: SavedObjectReference[];
|
||||
}): RuleParams => {
|
||||
}): TParams => {
|
||||
const exceptionsList = injectExceptionsReferences({
|
||||
logger,
|
||||
exceptionsList: params.exceptionsList,
|
||||
savedObjectReferences,
|
||||
});
|
||||
const ruleParamsWithSavedObjectReferences: RuleParams = {
|
||||
const ruleParamsWithSavedObjectReferences: TParams = {
|
||||
...params,
|
||||
exceptionsList,
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue