Security Operations Center (SOC)
SOC
The Security Operations Center managed service monitors the security of your business 24/7.

Perfect for:
Our mission is your protection
A mature and proactive approach
The SOC monitors and detects suspicious behaviours to secure organizations and business activities.
A local and secure solution
The SOC has been developed in Luxembourg and all data is therefore hosted locally. GDPR, NIS and CSSF compliant.
Continuous monitoring
The SOC operates 24 hours a day, 7 days a week: our Cyberforce experts monitor, detect and deal with the various security alerts that could have an impact on your company or your business.
How does the SOC work?
- Collection of client logs to implement the solution
- Definition of the security rules that will trigger alerts: POST deploys the default set of security rules based on industry best practices and experience to detect threats
- Analysis of security alerts and weekly generation of incident reports by POST's SOC teams allowing the customer to take appropriate action quickly
- Support for the customer in the event of an incident requiring remediation
- Development of detection rules according to the various use cases encountered

The SOC advantages
Flexibility
Choice of a cloud-based set-up (shared SOC platform) or a dedicated set-up.
Access to your logs
You can access your logs at any time for further investigation. Log storage time is variable according to your needs.
Customised correlation rules
Development of custom correlation rules with the help of the POST Cyberforce experts.
Customised reporting
Monitor the performance of the SOC with the many KPIs available via dashboards and receive reports tailored to your needs.
Java method "com.sun.proxy.$Proxy113.getFriendlyURLLayout(long, boolean, String)" threw an exception when invoked on com.sun.proxy.$Proxy113 object "com.liferay.portal.service.impl.LayoutLocalServiceImpl@46cb439f"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: authorPage = layoutLocalService.getFr... [in template "20102#20129#1341914" at line 32, column 45] ----
1<#assign local = themeDisplay.getLocale()
2 layouts = themeDisplay.getLayouts()
3 extendedSeq = []
4 finalSeq = []
5 assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")
6 layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService")>
7<!-- Get the tags from the webcontent and create a new sequence with the string -->
8<#assign
9 inputTags = .vars['reserved-article-asset-tag-names'].data
10 inputTagsSeq = inputTags?split(",")>
11<#setting locale= local>
12
13
14<#list layouts as mainpage>
15 <#if mainpage.getFriendlyURL(local) == '/business'>
16 <#list mainpage.getChildren() as homeSubPages>
17 <#if homeSubPages.getFriendlyURL(local) == '/business/blog'>
18 <#list homeSubPages.getChildren() as articlesHomepage>
19 <#if articlesHomepage.getFriendlyURL(local) == '/business/blog/articles'>
20 <#list articlesHomepage.getChildren() as categoryPages>
21 <#list categoryPages.getChildren() as subCategoryPages>
22 <#list subCategoryPages.getChildren() as articleElement>
23 <!-- Get the tag for the target article Page -->
24 <#assign plId = articleElement.getPlid()
25 layoutEntry = assetEntryLocalService.fetchEntry("com.liferay.portal.kernel.model.Layout", plId)
26 assetTags = layoutEntry.getTags()>
27 <#assign
28 tagList = []
29 dateArticle = articleElement.getExpandoBridge().getAttribute('Blog display date from')
30 authorPageUrl = articleElement.getExpandoBridge().getAttribute('Blog author page url')
31 authorTruncatedUrl = "/business" + authorPageUrl?keep_after("/business")
32 authorPage = layoutLocalService.getFriendlyURLLayout(groupId, false, authorTruncatedUrl)
33 authorImage = authorPage.getExpandoBridge().getAttribute('Blog image url')
34 articleImage = articleElement.getExpandoBridge().getAttribute('Blog image url')>
35 <#list assetTags as tag>
36 <#assign tagList += [tag.name]>
37 </#list>
38 <!-- Insert element in the extendedSeq -->
39 <#assign layoutHash = {"tags": tagList,
40 "friendlyUrl": articleElement.friendlyURL, "articleTitle": articleElement.getHTMLTitle(local),
41 "articleDescription": articleElement.getDescription(local),
42 "date": dateArticle?datetime, "authorFriendlyUrl": authorPage.getRegularURL(request),
43 "authorName": authorPage.getHTMLTitle(local),
44 "authorImage": authorImage, "articleImage": articleImage,
45 "categoryName": categoryPages.getHTMLTitle(local),
46 "categoryUrl": categoryPages.getRegularURL(request),
47 "subCategoryName": subCategoryPages.getHTMLTitle(local),
48 "subCategoryUrl": subCategoryPages.getRegularURL(request)}
49 extendedSeq += [layoutHash] />
50 </#list>
51 </#list>
52 </#list>
53 </#if>
54 </#list>
55 </#if>
56 </#list>
57 </#if>
58</#list>
59
60<#list extendedSeq?sort_by("date")?reverse as reversedSeq>
61 <#if finalSeq?size lt 3>
62 <!-- Boolean to get out of the loop and only add once the element to the final sequence-->
63 <#assign tagsFound = false>
64 <#list reversedSeq.tags as tag>
65 <#if tagsFound != true>
66 <#list inputTagsSeq as inputTag>
67 <#if inputTag == tag>
68 <#assign finalSeq += [reversedSeq]
69 tagsFound = true>
70 <#break>
71 </#if>
72 </#list>
73 <#else>
74 <#break>
75 </#if>
76 </#list>
77 <#else>
78 <#break>
79 </#if>
80</#list>
81
82<section class="module module-cards-article" >
83 <div class="container">
84 <div class="row justify-content-center">
85 <div class="col-lg-12">
86 <div class="title-wrapper">
87 <h3 class="bottom-cut">${Title.getData()}</h3>
88 </div>
89
90 <div class="content-list">
91 <div class="row">
92 <#list finalSeq as articles>
93 <div class="col-lg-4">
94 <div class="card card-article card-article-small">
95 <div class="card-wrapper">
96 <div>
97 <div class="card-img-wrapper">
98 <a data-senna-off="true" href="${articles.friendlyUrl}">
99 <img src="${articles.articleImage}" class="img-fluid object-fit" alt="">
100 </a>
101 </div>
102
103 <div class="card-text-wrapper">
104 <div class="badge-wrapper">
105 <a data-senna-off="true" href="${articles.categoryUrl}" class="badge badge-small badge-blue-business ">${articles.categoryName}</a>
106 <a data-senna-off="true" href="${articles.subCategoryUrl}" class="badge badge-small badge-blue-business ">${articles.subCategoryName}</a>
107 </div>
108
109 <h3><a data-senna-off="true" href="${articles.friendlyUrl}">${articles.articleTitle}</a></h3>
110 <p>${articles.articleDescription}</p>
111 </div>
112 </div>
113 <div>
114 <a data-senna-off="true" href="${articles.friendlyUrl}" class="btn btn-link"
115 <#if LinkLabel.LinkAriaLabel?? &&
116 LinkLabel.LinkAriaLabel?has_content &&
117 LinkLabel.LinkAriaLabel.getData()?has_content>
118 aria-label="${LinkLabel.LinkAriaLabel.getData()}"</#if>>
119 ${LinkLabel.getData()} <i class="icon-chevron-right"></i>
120 </a>
121
122 <#if articles.authorImage?? && articles.authorImage?has_content
123 && articles.authorName?? && articles.authorName?has_content
124 && articles.date?? && articles.date?has_content
125 && articles.articleImage?? && articles.articleImage?has_content>
126 <div class="card-details-wrapper">
127 <div class="author">
128 <div class="author-img-wrapper">
129 <img src="${articles.authorImage}" class="img-fluid object-fit" alt="">
130 </div>
131 <div>
132 <p class="title">${AuthorLabel.getData()}</p>
133 <a data-senna-off="true" href="${articles.authorFriendlyUrl}"
134 class="value stretched-link"
135 <#if AuthorLabel.AuthorAriaLabel?? &&
136 AuthorLabel.AuthorAriaLabel?has_content &&
137 AuthorLabel.AuthorAriaLabel.getData()?has_content>
138 aria-label="${AuthorLabel.AuthorAriaLabel.getData()} ${articles.authorName}"</#if>>
139 ${articles.authorName}
140 </a>
141 </div>
142 </div>
143 <div class="date">
144 <p class="title">${PublicationLabel.getData()}</p>
145 <p class="value">${articles.date?string["dd MMMM yyyy"]}</p>
146 </div>
147 </div>
148 </#if>
149 </div>
150 </div>
151 </div>
152 </div>
153 </#list>
154 </div>
155 </div>
156 </div>
157 </div>
158 </div>
159</section>








Our experts answer your questions
Do you have any questions about an article? Do you need help solving your IT issues?