Changes for page SMB - Dynamically Manipulate Settings
Last modified by Erik Bakker on 2024/09/03 09:17
From version 5.1
edited by eMagiz
on 2022/05/05 16:38
on 2022/05/05 16:38
Change comment:
There is no comment for this version
To version 25.1
edited by Bouke Reitsma
on 2024/07/01 10:22
on 2024/07/01 10:22
Change comment:
There is no comment for this version
Summary
-
Page properties (5 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 1 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,0 +1,1 @@ 1 +SMB - Dynamically Manipulate Settings - Parent
-
... ... @@ -1,0 +1,1 @@ 1 +Main.eMagiz Academy.Microlearnings.Advanced Level.File based connectivity.WebHome - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki.ma rijn1 +XWiki.BoukeReitsma - Default language
-
... ... @@ -1,0 +1,1 @@ 1 +en - Content
-
... ... @@ -1,20 +1,10 @@ 1 -{{html wiki="true"}} 2 -<div class="ez-academy"> 3 - <div class="ez-academy_body"> 1 +{{container}}{{container layoutStyle="columns"}}((( 2 +In a previous [[microlearning>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.File based connectivity.intermediate-file-based-connectivity-smb-connectivity.WebHome||target="blank"]] on this subject, we discussed how to configure the various variants of SMB connectivity. We already mentioned that more dynamic options, such as automatically creating a "multi-level" directory (i.e.,/root/sub), are complex to configure and require a different approach. 3 + 4 +In this microlearning, we will examine how to manipulate all settings on the SMB Session Factory to create dynamic values that are injected into the component when a message is processed by the flow. 4 4 5 - <divclass="doc">6 +If you have any questions, don't hesitate to contact [[academy@emagiz.com>>mailto:academy@emagiz.com]]. 6 6 7 - 8 - 9 -= Error Handling concerning GDPR = 10 - 11 -In eMagiz, all errors are raised when a process fails, and you want to have some form of logging end up in the Manage phase of eMagiz. The Manage phase of eMagiz is primarily accessible to support employees, employees working on the project, and in some cases, even more, people have at least view rights. You can imagine that when many people have access to potentially sensitive data, you should consider countermeasures. This way, you can reduce the chances of sensitive data ending up in the wrong hands. Some of the potential countermeasures are available within the platform. Some of them are procedural in nature. In this microlearning, we will learn what you can do to keep your data safe within eMagiz. 12 - 13 -Should you have any questions, don't hesitate to get in touch with academy@emagiz.com. 14 - 15 -* Last update: November 15th, 2021 16 -* Required reading time: 5 minutes 17 - 18 18 == 1. Prerequisites == 19 19 20 20 * Advanced knowledge of the eMagiz platform ... ... @@ -21,51 +21,60 @@ 21 21 22 22 == 2. Key concepts == 23 23 24 -This microlearning centers around error handling concerning GDPR 25 -With GDPR, we mean The law on General Data Protection Regulation. 14 +This microlearning centers around dynamically manipulating settings on the SMB Session Factory. 26 26 27 -* The GDPR is a European privacy regulation. It ensures the careful processing of personal data by businesses and organizations. 28 -* eMagiz has various security measures in place to keep your data safe 29 -* You also have a responsibility as a user how you use the data of the customer 16 +* This option is the correct approach when you need to create a directory dynamically or have multiple hosts that host file shares. 30 30 18 +== 3. Dynamically manipulate SMB Session Settings == 31 31 20 +In a previous [[microlearning>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.File based connectivity.intermediate-file-based-connectivity-smb-connectivity.WebHome||target="blank"]] we learned that we need an SMB Session Factory to set up the initial connection to the SMB drive. In this component, five main settings are relevant. 32 32 33 -== 3. Error Handling regarding GDPR == 22 +* Host 23 +* Port 24 +* Username 25 +* Password 26 +* Share and directory 34 34 35 -In eMagiz, all errors are raised when a process fails, and you want to have some form of logging end up in the Manage phase of eMagiz. The Manage phase of eMagiz is primarily accessible to support employees, employees working on the project, and in some cases, even more, people have at least view rights. You can imagine that when many people have access to potentially sensitive data, you should consider countermeasures. This way, you can reduce the chances of sensitive data ending up in the wrong hands. Some of the potential countermeasures are available within the platform. Some of them are procedural in nature. In this microlearning, we will learn what you can do to keep your data safe within eMagiz. 28 +In theory, each of these settings can be overwritten every time a message is consumed and processed by the flow. In practice, we see two main use cases that are relevant to mention in this microlearning as we see them currently being applied in our community. 29 + 30 +=== 3.1 Dynamic Host === 36 36 37 - In eMagiz, we value thesecurityofyourdata.A detailedoverviewofhowyourdatais securedwithinthe platform andwhen data isexchangedcan be foundn our [SecurityGuide](../howto/security-guide.md).Oneoftheadditionalmeasuresyoucouldtakeon our data modelsistoindicatewhethertheinformationstored in thoseattributesisconfidential.Moreinformationonhowthatworksexactlycanbefoundin this[microlearning](intermediate-defining-your-message-structures-data-model-attribute-confidentiality.md).32 +Suppose you have a multitude of SMB directories (i.e., shares) span across many different host servers. In that case, you need a solution to manipulate pre-existing information on the SMB session factory dynamically. In other words, you need to be able to override the default host configuration in the component with one that is determined based on information in the headers or message. 38 38 39 - Buildingonthat, wehavea storecomponentavailableinthestorewith whichyou canreplacethevalues in these attributes(in casehe original payload is XML) with \*\*\*. TheerrormessageisstillshownforanRCA to be performed,but thesensitivedatais notaccessibletothe user.34 +To do so, we need to add a component to the flow that will override the host setting. This component is called the "Standard service activator." 40 40 41 - <p align="center">[[image:advanced-understanding-error-handling-in-emagiz--store-component-gdpr-error-handling.png||]]</p>36 +[[image:Main.Images.Microlearning.WebHome@advanced-file-connectivity-dynamically-manipulate-smb-settings--standard-service-activator.png]] 42 42 43 -In terms of process, you should know which data is sensitive in terms of GDPR and **not** store that information in external tools such as Postman and SOAP UI. Furthermore, it would be best to consider how you want to shape the notifications to prevent sensitive information from being willingly distributed to the eMail boxes of recipients. 38 +Here, we must define an expression to set the host based on a supplied value. Important in this expression is that we correctly reference the complete name of the SMB Session Factory support object in the flow and that once the host is set, the actual message is passed along. An example of such an expression is: 39 + 40 +{{code}}@'smb.gtwydynm.exit.support.smb-session'.setHost(headers.server) ?: #root{{/code}} 41 + 42 +This expression will set the host based on the value in the header called "server" and, once done, will pass the full message to the output channel. 44 44 45 - ===== Practice=====44 +[[image:Main.Images.Microlearning.WebHome@advanced-file-connectivity-dynamically-manipulate-smb-settings--standard-service-activator-filled-in.png]] 46 46 47 -== 4.Assignment ==46 +=== 3.2 Dynamic Share and Directory === 48 48 49 -Identify which attributes, if any, are sensitive in nature within your (Academy) project. This assignment can be completed within the (Academy) project you created/used in the previous assignment. 48 +If you have a "multi-level" path that eMagiz needs to create automatically, you must dynamically set the Share and Directory settings on the SMB Session Factory support object. 49 + 50 +To do so, we need to add a component to the flow that will override the host setting. This component is called the "Standard service activator." 50 50 51 - == 5.Key takeaways==52 +[[image:Main.Images.Microlearning.WebHome@advanced-file-connectivity-dynamically-manipulate-smb-settings--standard-service-activator.png]] 52 52 53 -* The GDPR is a European privacy regulation. It ensures the careful processing of personal data by businesses and organizations. 54 -* eMagiz has various security measures in place to keep your data safe 55 -* You also have a responsibility as a user how you use the data of the customer 54 +Here, we must define an expression to set the host based on a supplied value. Important in this expression is that we correctly reference the complete name of the SMB Session Factory support object in the flow and that once the host is set, the actual message is passed along. An example of such an expression is: 55 + 56 +{{code}}@'smb.gtwydynm.exit.support.smb-session'.setShareAndDir(headers.share) ?: #root{{/code}} 57 + 58 +This expression will set the host based on the value in the header called "server" and, once done, will pass the full message to the output channel. 56 56 60 +[[image:Main.Images.Microlearning.WebHome@advanced-file-connectivity-dynamically-manipulate-smb-settings--standard-service-activator-filled-in-share-and-dir.png]] 57 57 62 +{{warning}}Note that you can combine multiple dynamic settings into one expression to keep the number of components efficient. In that case the code will look something as follows {{code}}@'smb.gtwydynm.exit.support.smb-session'.setShareAndDir(headers.share) ?: @'smb.gtwydynm.exit.support.smb-session'.setHost(headers.server) ?: #root{{/code}}{{/warning}} 58 58 59 -== 6.SuggestedAdditional Readings ==64 +== 4. Key takeaways == 60 60 61 -There are no suggestedadditional readingsonthis topic.66 +* This option is the correct approach when you need to create a directory dynamically or have multiple hosts that host file shares. 62 62 63 -== 7. Silent demonstrationvideo==68 +== 5. Suggested Additional Readings == 64 64 65 -As this is a more theoretical microlearning, we have no video for this. 66 - 67 -</div> 68 -</div> 69 -</div> 70 - 71 -{{/html}} 70 +There are no suggested additional readings on this topic.)))((({{toc/}}))){{/container}}{{/container}}
- advanced-understanding-error-handling-in-emagiz--store-component-gdpr-error-handling.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.marijn - Size
-
... ... @@ -1,1 +1,0 @@ 1 -3.9 KB - Content