<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Advanced section access management in App Development</title>
    <link>https://community.qlik.com/t5/App-Development/Advanced-section-access-management/m-p/1564415#M41105</link>
    <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;Despite my research on the community, I have not yet found a generic script that allows to set up the access section with ease. (But let me know If you found one).&lt;BR /&gt;So I wanted to create one that allows me to save time while being able to formulate more advanced rules.&lt;/P&gt;&lt;P&gt;I decided to focus on a single reduction field (and rely on composite security key in the datamodel for more complex scenarios as suggested by experts). See this topic for more information : &lt;A href="https://community.qlik.com/t5/Qlik-Design-Blog/Data-Reduction-Using-Multiple-Fields/ba-p/1474917" target="_blank" rel="noopener"&gt;https://community.qlik.com/t5/Qlik-Design-Blog/Data-Reduction-Using-Multiple-Fields/ba-p/1474917&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Key points :&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Rules are specified in an Excel file (but it could be modified to load it from another source).&lt;/LI&gt;&lt;LI&gt;Security strategy based on ACCESS, USERID, OMIT and [YourReductionField] properties.&lt;/LI&gt;&lt;LI&gt;Two distinct user profiles for the rules (see corresponding sheets in the Excel file) :&lt;BR /&gt;- “Administrators”, these users are always included in the section access table of every apps, automatically gets the ability to view all values.&lt;BR /&gt;- “Users”, all the other users with specific reduction rules for multiple applications.&lt;/LI&gt;&lt;LI&gt;Rules definition by :&lt;BR /&gt;- Users&lt;BR /&gt;- Custom user groups (My goal was to no longer have to depend on the IT department for the management of user groups.)&lt;BR /&gt;- Or both simultaneoulsy&lt;/LI&gt;&lt;LI&gt;Two different ways to write reduction rules :&lt;BR /&gt;- Inclusive mode : by listing all the authorized values (qlik default)&lt;BR /&gt;- Exclusive mode : grants access to all values except some of them (requires to prefix the rule with "[*-]")&lt;BR /&gt;Warning : I wouldn't recommand to use both logic simultaneoulsy when defining rules for a specific user/group. It's easy to write non sense or conflicting things without being aware of.&lt;/LI&gt;&lt;LI&gt;Possible input values :&lt;BR /&gt;- "*" for all values. The script will automatically search for the reduction field in your datamodel and use all corresponding values if it exists.&lt;BR /&gt;- "value" for a single value&lt;BR /&gt;- "value1;value2;value3" for multiple values, using a specific separator&lt;/LI&gt;&lt;LI&gt;Wildcard friendly : you can use generic characters "?" and "*" into values to write "like" rules which is very handy.&lt;/LI&gt;&lt;LI&gt;You can hide (omit) one or many fields per user and app.&lt;/LI&gt;&lt;LI&gt;Optionally creates a visible Section Access table in datamodel for audit purposes (see script config section to enable/disable).&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Notice : You can easily change the ‘ALL’ alias, multiple values separator, and exclusion prefix in the script config section if you need to.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Quick setup :&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Paste or include my script exclusively &lt;STRONG&gt;&lt;U&gt;at the end of your app script&lt;/U&gt;&lt;/STRONG&gt;. Why ? Because it needs to loop and search for values through already loaded tables to work.&lt;/LI&gt;&lt;LI&gt;Update variable "SA_CheminExcelDroits" in script config. It must contain the folder name (LIB) to the Excel file location. Example : "SET SA_CheminExcelDroits = 'Security files';"&lt;/LI&gt;&lt;LI&gt;Identify the field of the data model on which to perform the reduction.&lt;BR /&gt;&lt;U&gt;Warning&lt;/U&gt; : The name of the field and the data it contains must have been loaded in CAPITAL, this prerequisite is imposed by Qlik.&lt;/LI&gt;&lt;LI&gt;Fill the excel file with all the appropriate rules. Each app is managed in its own sheet whose name must match app name without .qvf extension(case sensitive).&lt;/LI&gt;&lt;LI&gt;If for some reason you want to disable a rule without deleting it from file, simply put ‘0’ value in the ENABLED column.&lt;/LI&gt;&lt;LI&gt;Reload !&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;BR /&gt;The rights file provided contains examples of various rules to help you understand how to fill it correctly.&lt;BR /&gt;Script comments and variable names are in French, but i’ll take the time to translate it in english if you ask for it.&lt;BR /&gt;Do not hesitate to give me feedback if you encounter problems or bugs that I have not already identified &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
    <pubDate>Sat, 16 Nov 2024 06:10:19 GMT</pubDate>
    <dc:creator>bfournet</dc:creator>
    <dc:date>2024-11-16T06:10:19Z</dc:date>
    <item>
      <title>Advanced section access management</title>
      <link>https://community.qlik.com/t5/App-Development/Advanced-section-access-management/m-p/1564415#M41105</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;Despite my research on the community, I have not yet found a generic script that allows to set up the access section with ease. (But let me know If you found one).&lt;BR /&gt;So I wanted to create one that allows me to save time while being able to formulate more advanced rules.&lt;/P&gt;&lt;P&gt;I decided to focus on a single reduction field (and rely on composite security key in the datamodel for more complex scenarios as suggested by experts). See this topic for more information : &lt;A href="https://community.qlik.com/t5/Qlik-Design-Blog/Data-Reduction-Using-Multiple-Fields/ba-p/1474917" target="_blank" rel="noopener"&gt;https://community.qlik.com/t5/Qlik-Design-Blog/Data-Reduction-Using-Multiple-Fields/ba-p/1474917&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Key points :&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Rules are specified in an Excel file (but it could be modified to load it from another source).&lt;/LI&gt;&lt;LI&gt;Security strategy based on ACCESS, USERID, OMIT and [YourReductionField] properties.&lt;/LI&gt;&lt;LI&gt;Two distinct user profiles for the rules (see corresponding sheets in the Excel file) :&lt;BR /&gt;- “Administrators”, these users are always included in the section access table of every apps, automatically gets the ability to view all values.&lt;BR /&gt;- “Users”, all the other users with specific reduction rules for multiple applications.&lt;/LI&gt;&lt;LI&gt;Rules definition by :&lt;BR /&gt;- Users&lt;BR /&gt;- Custom user groups (My goal was to no longer have to depend on the IT department for the management of user groups.)&lt;BR /&gt;- Or both simultaneoulsy&lt;/LI&gt;&lt;LI&gt;Two different ways to write reduction rules :&lt;BR /&gt;- Inclusive mode : by listing all the authorized values (qlik default)&lt;BR /&gt;- Exclusive mode : grants access to all values except some of them (requires to prefix the rule with "[*-]")&lt;BR /&gt;Warning : I wouldn't recommand to use both logic simultaneoulsy when defining rules for a specific user/group. It's easy to write non sense or conflicting things without being aware of.&lt;/LI&gt;&lt;LI&gt;Possible input values :&lt;BR /&gt;- "*" for all values. The script will automatically search for the reduction field in your datamodel and use all corresponding values if it exists.&lt;BR /&gt;- "value" for a single value&lt;BR /&gt;- "value1;value2;value3" for multiple values, using a specific separator&lt;/LI&gt;&lt;LI&gt;Wildcard friendly : you can use generic characters "?" and "*" into values to write "like" rules which is very handy.&lt;/LI&gt;&lt;LI&gt;You can hide (omit) one or many fields per user and app.&lt;/LI&gt;&lt;LI&gt;Optionally creates a visible Section Access table in datamodel for audit purposes (see script config section to enable/disable).&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;Notice : You can easily change the ‘ALL’ alias, multiple values separator, and exclusion prefix in the script config section if you need to.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Quick setup :&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Paste or include my script exclusively &lt;STRONG&gt;&lt;U&gt;at the end of your app script&lt;/U&gt;&lt;/STRONG&gt;. Why ? Because it needs to loop and search for values through already loaded tables to work.&lt;/LI&gt;&lt;LI&gt;Update variable "SA_CheminExcelDroits" in script config. It must contain the folder name (LIB) to the Excel file location. Example : "SET SA_CheminExcelDroits = 'Security files';"&lt;/LI&gt;&lt;LI&gt;Identify the field of the data model on which to perform the reduction.&lt;BR /&gt;&lt;U&gt;Warning&lt;/U&gt; : The name of the field and the data it contains must have been loaded in CAPITAL, this prerequisite is imposed by Qlik.&lt;/LI&gt;&lt;LI&gt;Fill the excel file with all the appropriate rules. Each app is managed in its own sheet whose name must match app name without .qvf extension(case sensitive).&lt;/LI&gt;&lt;LI&gt;If for some reason you want to disable a rule without deleting it from file, simply put ‘0’ value in the ENABLED column.&lt;/LI&gt;&lt;LI&gt;Reload !&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;BR /&gt;The rights file provided contains examples of various rules to help you understand how to fill it correctly.&lt;BR /&gt;Script comments and variable names are in French, but i’ll take the time to translate it in english if you ask for it.&lt;BR /&gt;Do not hesitate to give me feedback if you encounter problems or bugs that I have not already identified &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 16 Nov 2024 06:10:19 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/Advanced-section-access-management/m-p/1564415#M41105</guid>
      <dc:creator>bfournet</dc:creator>
      <dc:date>2024-11-16T06:10:19Z</dc:date>
    </item>
    <item>
      <title>Re: Advanced section access management</title>
      <link>https://community.qlik.com/t5/App-Development/Advanced-section-access-management/m-p/1834571#M68907</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/44439"&gt;@bfournet&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Really great post, most appreciated.&lt;/P&gt;&lt;P&gt;Ebiexperts a Qlik Technology partner has launched an automated Section Access product to the market.&amp;nbsp;&lt;/P&gt;&lt;P&gt;The product is called&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://www.ebiexperts.com/products/sam/" target="_blank"&gt;SAM&lt;/A&gt;: Section Access Manager for Qlik&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Qlik Integrated &amp;amp; Authenticated&lt;/LI&gt;&lt;LI&gt;Self-service no-code&lt;/LI&gt;&lt;LI&gt;Automation options&lt;/LI&gt;&lt;LI&gt;Active Control SingleTouch&lt;/LI&gt;&lt;LI&gt;Admin&lt;/LI&gt;&lt;LI&gt;E-Learning&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;This is the MVP release and fully automated. Would be great to get your feedback should you have the time to test it.&lt;/P&gt;</description>
      <pubDate>Wed, 08 Sep 2021 09:23:44 GMT</pubDate>
      <guid>https://community.qlik.com/t5/App-Development/Advanced-section-access-management/m-p/1834571#M68907</guid>
      <dc:creator>jpk</dc:creator>
      <dc:date>2021-09-08T09:23:44Z</dc:date>
    </item>
  </channel>
</rss>

