[RULE: 1Password_Common_Fields] //Recurring fields for all log types alter xdm.event.type = SOURCE_LOG_TYPE, xdm.event.operation = action, xdm.source.location.country = location -> country, xdm.source.location.region = location -> region, xdm.source.location.city = location -> city, xdm.source.location.latitude = to_float(location -> latitude), xdm.source.location.longitude = to_float(location -> longitude); [RULE: 1Password_Common_Fields_For_Item_and_SignIns] // Recurring fields only for Item usage actions and Sign in attempts alter host_os_name = client -> os_name, host_os_version = client -> os_version, extract_ip_address = client -> ip_address | alter full_os_name = concat(host_os_name , " ", host_os_version), extract_ipv4 = if(extract_ip_address ~= "\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}",extract_ip_address ,null), extract_ipv6 = if(extract_ip_address ~= "^((?:[a-fA-F\d]{0,4}\:){2,7}[a-fA-F\d]{0,4})$",extract_ip_address ,null) | alter xdm.target.host.os = full_os_name, xdm.target.application.name = client -> app_name, xdm.target.application.version = client -> app_version, xdm.source.ipv4 = extract_ipv4, xdm.source.ipv6 = extract_ipv6, xdm.target.host.os_family = if(host_os_name contains "Mac", XDM_CONST.OS_FAMILY_MACOS, host_os_name contains "Windows", XDM_CONST.OS_FAMILY_WINDOWS, host_os_name contains "Linux", XDM_CONST.OS_FAMILY_LINUX, host_os_name) ; [MODEL: dataset="1password_1password_raw"] //1Password - Audit events modeling rules filter SOURCE_LOG_TYPE = "Audit events" | call 1Password_Common_Fields | alter extract_ip_address = session -> ip | alter extract_ipv4 = if(extract_ip_address ~= "\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}",extract_ip_address ,null), extract_ipv6 = if(extract_ip_address ~= "^((?:[a-fA-F\d]{0,4}\:){2,7}[a-fA-F\d]{0,4})$",extract_ip_address ,null) | alter xdm.source.user.identifier = actor_details -> uuid, xdm.source.user.username = actor_details -> name, xdm.source.user.upn = actor_details -> email, xdm.source.ipv4 = extract_ipv4, xdm.source.ipv6 = extract_ipv6; //1Password - Item usage action modeling rules filter SOURCE_LOG_TYPE = "Item usage actions" | call 1Password_Common_Fields | call 1Password_Common_Fields_For_Item_and_SignIns | alter xdm.target.resource.parent_id = vault_uuid, xdm.target.resource.id = item_uuid, xdm.source.user.identifier = user -> uuid, xdm.source.user.username = user -> name, xdm.source.user.upn = user -> email; //1Password - Sign in atempts modeling rules filter SOURCE_LOG_TYPE = "Sign in attempts" | call 1Password_Common_Fields | call 1Password_Common_Fields_For_Item_and_SignIns | alter xdm.event.outcome = category, xdm.event.outcome_reason = type, xdm.target.user.identifier = target_user -> uuid, xdm.target.user.username = target_user -> name, xdm.target.user.upn = target_user -> email;