{"id":352,"date":"2019-02-20T09:45:15","date_gmt":"2019-02-20T07:45:15","guid":{"rendered":"https:\/\/forflukesake.co.za\/wp\/?p=352"},"modified":"2019-06-25T23:00:30","modified_gmt":"2019-06-25T21:00:30","slug":"the-company-directory","status":"publish","type":"post","link":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/","title":{"rendered":"The Company Directory"},"content":{"rendered":"\n<p>In my quest to find a way to automate <a href=\"https:\/\/forflukesake.co.za\/wp\/global-signatures-vs-office-365\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"signatures in Office 365 (opens in a new tab)\">signatures in Office 365<\/a> I needed to somehow get the user Attributes synced. Whilst searching I stumbled on the Company Directory. Basically, it reads all the information from your AD that you specify and populates a webpage. Since IT needs to keep that data up to date in any case, I implemented this as an additional feature.<\/p>\n\n\n\n<p>The code is not mine and you can get the original code done by Geoff Kendal of <a href=\"https:\/\/4sysops.com\/archives\/creating-a-company-directory-web-page-generated-from-active-directory\/\">4sysops.com<\/a>. I have made slight changes to the code to suit this environment. A word of caution I am not a Programmer or Developer so if there is more code than what is required this is the code that worked for me. I am sure that if you have a bit of knowledge on HTML and ASP you can get very creative in making the site work better for your Environment.<\/p>\n\n\n\n<p>So first things first make sure your web server is able to read ASP. For this, I used a Windows IIS server and installed the ASP feature. As per Screenshot:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"754\" height=\"498\" data-attachment-id=\"353\" data-permalink=\"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/asp\/\" data-orig-file=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/ASP.jpg\" data-orig-size=\"754,498\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;Tertius Germishuizen&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}\" data-image-title=\"ASP\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/ASP.jpg\" src=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/ASP.jpg\" alt=\"ASP Installed\" class=\"wp-image-353\" srcset=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/ASP.jpg 754w, https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/ASP-300x198.jpg 300w\" sizes=\"auto, (max-width: 754px) 100vw, 754px\" \/><\/figure><\/div>\n\n\n\n<p style=\"text-align:center\">Then Created a Folder in \u201cC:\\inetpub\\wwwroot\\\u201d and Named it \u201cTheDirectory\u201d within this folder you can create a file Named \u201cDirectory.asp\u201d<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"277\" height=\"109\" data-attachment-id=\"354\" data-permalink=\"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/thedirecoty-asp\/\" data-orig-file=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/TheDirecoty.asp_.jpg\" data-orig-size=\"277,109\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"TheDirecoty.asp\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/TheDirecoty.asp_.jpg\" src=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/TheDirecoty.asp_.jpg\" alt=\"inetpub directory.asp\" class=\"wp-image-354\"\/><\/figure><\/div>\n\n\n\n<p style=\"text-align:center\">And lastly in IIS set the default Document and add directory.asp<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"761\" height=\"234\" data-attachment-id=\"355\" data-permalink=\"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/default\/\" data-orig-file=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Default.jpg\" data-orig-size=\"761,234\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;Tertius Germishuizen&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1550579473&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Default\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Default.jpg\" src=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Default.jpg\" alt=\"IIS Default Document directory.asp\" class=\"wp-image-355\" srcset=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Default.jpg 761w, https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Default-300x92.jpg 300w\" sizes=\"auto, (max-width: 761px) 100vw, 761px\" \/><\/figure><\/div>\n\n\n\n<p>Now that this is done. Edit the file directory.asp which was created previously. Browse down to the Script and Copy and past the Script in the file and Save.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>The Changes<\/strong> <\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>AD Connection<\/strong><\/h3>\n\n\n\n<p>The Changes you need to make within the following lines are to make the connection with the Active Directory. This needs to be an account that is allowed to read through the Active Directory.<br><br>usersOU= &#8220;LDAP:\/\/&#8221;&#8221;<br>objCon.Properties(&#8220;User ID&#8221;) = &#8220;DOMAIN\\administrator&#8221;<br>objCon.Properties(&#8220;Password&#8221;) = &#8220;Your Very Secure Password&#8221;<br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>The Attributes<\/strong><br><\/h3>\n\n\n\n<p>Then the below is the attributes in the Active Directory. Once you put your AD in Advance mode (Browse to View then Advanced Features). You will see which Attributes are available for use in the attribute Editor Tab. Remember to adjust the headers to correspond to the attributes you use.<br><br>Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;givenName&#8221;) + &#8220;&lt;\/td&gt;&#8221;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Multiple OU\u2019s<\/strong><br><\/h3>\n\n\n\n<p>Lastly, you will see I have the code twice, this is if you have users in different OU on the AD.<\/p>\n\n\n\n<p>If you don&#8217;t then drop the second code section between &lt;% &amp; %&gt; If you have more than two copy and paste the second Code Snippet, Just remember the more code there is to run the longer it will take to run.<br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Script<\/h2>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>&lt;%@ Language=VBScript &nbsp;%&gt;<br>&lt;% response.Buffer = True %&gt;<br>&lt;html&gt;&lt;head&gt;<br>&lt;title&gt;Company directory&lt;\/title&gt;<br>&lt;\/head&gt;<br>&lt;body&gt;<br>&lt;h1&gt;&lt;img src=&#8221;http:\/\/sig.forflukesake.co.za\/images\/logo.jpg&#8221; &gt; &lt;br&gt;Company Directory&lt;\/h1&gt;<br><\/p><\/blockquote>\n\n\n\n<blockquote style=\"text-align:left\" class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>&#8216; First OU Search<br>&lt;%<br>&#8216; Define the AD OU that contains our users<br>usersOU = &#8220;LDAP:\/\/OU=Office365Users,OU=FlukenUsers,OU=User Accounts,DC=ForFlukeSake,DC=co,DC=za&#8221;<br>&#8216; Make AD connection and run query<br>Set objCon = Server.CreateObject(&#8220;ADODB.Connection&#8221;)<br>objCon.provider =&#8221;ADsDSOObject&#8221;<br>objCon.Properties(&#8220;User ID&#8221;) = &#8220;DOMAIN\\administrator&#8221;<br>objCon.Properties(&#8220;Password&#8221;) = &#8220;Your Very Secure Password&#8221;<br>objCon.Properties(&#8220;Encrypt Password&#8221;) = TRUE<br>objCon.open &#8220;Active Directory Provider&#8221;<br>Set objCom = CreateObject(&#8220;ADODB.Command&#8221;)<br>Set objCom.ActiveConnection = objCon<br>objCom.CommandText =&#8221;select givenName,sn,ipPhone,mail,title,telephonenumber,mobile FROM &#8216;&#8221;+ usersOU +&#8221;&#8216; where sAMAccountname=&#8217;*&#8217; ORDER by sAMAccountname&#8221;<br>Set objRS = objCom.Execute<br>&#8216; Add the Headers to the table<br>Response.Write &#8220;&lt;table border=&#8217;1&#8242;&gt;&#8221; + vbCrLf<br>Response.Write &#8220;&lt;tr&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;th&gt; Name &lt;\/th&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;th&gt; Surname &lt;\/th&gt;&#8221;<br>   Response.Write &#8220;&lt;th&gt; Extension &lt;\/th&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;th&gt; Email &lt;\/th&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;th&gt; Job Title &lt;\/th&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;th&gt; Works Phone Number &lt;\/th&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;th&gt;Mobile Number &lt;\/th&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;\/tr&gt;&#8221; + vbCrLf<br>&#8216; Loop over returned recordset and output HTML<br>Do While Not objRS.EOF Or objRS.BOF<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;tr&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;givenName&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;sn&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br>   Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;ipPhone&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;mail&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;title&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;telephonenumber&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;mobile&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br>&nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;\/tr&gt;&#8221; + vbCrLf<br>&nbsp;&nbsp;&nbsp;objRS.MoveNext<br>&nbsp;&nbsp;&nbsp;Response.Flush<br>Loop<br>&#8216; Clean up<br>objRS.Close<br>objCon.Close<br>Set objRS = Nothing<br>Set objCon = Nothing<br>Set objCom = Nothing<br>%&gt;<\/p><\/blockquote>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p> &#8216; Second OU Search<br>&lt;%<br>&#8216; Define the AD OU that contains our users<br>usersOU = &#8220;LDAP:\/\/OU=Reps,OU=FlukenUsers,OU=User Accounts,DC=ForFlukeSake,DC=co,DC=za&#8221;<br>&#8216; Make AD connection and run querySet objCon = Server.CreateObject(&#8220;ADODB.Connection&#8221;)<br>objCon.provider =&#8221;ADsDSOObject&#8221;<br>objCon.Properties(&#8220;User ID&#8221;) = &#8220;DOMAIN\\administrator&#8221;<br>objCon.Properties(&#8220;Password&#8221;) = &#8220;Your Very Secure Password!&#8221;<br>objCon.Properties(&#8220;Encrypt Password&#8221;) = TRUE<br>objCon.open &#8220;Active Directory Provider&#8221;<br>Set objCom = CreateObject(&#8220;ADODB.Command&#8221;)<br>Set objCom.ActiveConnection = objCon<br>objCom.CommandText =&#8221;select givenName,sn,ipPhone,mail,title,telephonenumber,mobile FROM &#8216;&#8221;+ usersOU +&#8221;&#8216; where sAMAccountname=&#8217;*&#8217; ORDER by sAMAccountname&#8221;<br>Set objRS = objCom.Execute<br>&#8216; Loop over returned recordset and output HTML<br>Do While Not objRS.EOF Or objRS.BOF<br> &nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;tr&gt;&#8221;<br> &nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;givenName&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br> &nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;sn&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br> Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;ipPhone&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br> &nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;mail&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br> &nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;title&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br> &nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;telephonenumber&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br> &nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;td&gt;&#8221; + objRS(&#8220;mobile&#8221;) + &#8220;&lt;\/td&gt;&#8221;<br> &nbsp;&nbsp;&nbsp;Response.Write &#8220;&lt;\/tr&gt;&#8221; + vbCrLf<br> &nbsp;&nbsp;&nbsp;objRS.MoveNext<br> &nbsp;&nbsp;&nbsp;Response.Flush<br>Loop<br>&#8216; Clean up<br>objRS.Close<br>objCon.Close<br>Set objRS = Nothing<br>Set objCon = Nothing<br>Set objCom = Nothing<br>%&gt;<\/p><\/blockquote>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>&lt;\/table&gt;<br>&lt;\/body&gt;<br>&lt;\/html&gt;<br><\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>It reads all the information from your AD that you specify and populates a web page<\/p>\n","protected":false},"author":1,"featured_media":366,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[71,81,80],"tags":[27,85,84,90,83,69,93,82],"class_list":["post-352","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-active-directory","category-asp","category-html","tag-forflukesake","tag-active-directory","tag-asp","tag-attribute","tag-html","tag-office-365","tag-organizational-unit","tag-web-page"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>The Company Directory &#187; For Fluk3 Sake<\/title>\n<meta name=\"description\" content=\"It reads all the information from your AD that you specify and populates a webpage. IT needs to keep that data up to date in any case.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Company Directory &#187; For Fluk3 Sake\" \/>\n<meta property=\"og:description\" content=\"It reads all the information from your AD that you specify and populates a webpage. IT needs to keep that data up to date in any case.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/\" \/>\n<meta property=\"og:site_name\" content=\"For Fluk3 Sake\" \/>\n<meta property=\"article:published_time\" content=\"2019-02-20T07:45:15+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-06-25T21:00:30+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/blank-book-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1690\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Fluk3\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@F1uk31\" \/>\n<meta name=\"twitter:site\" content=\"@F1uk31\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fluk3\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/\"},\"author\":{\"name\":\"Fluk3\",\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/#\\\/schema\\\/person\\\/806db9f6184fe1af5af378472b5fb2e8\"},\"headline\":\"The Company Directory\",\"datePublished\":\"2019-02-20T07:45:15+00:00\",\"dateModified\":\"2019-06-25T21:00:30+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/\"},\"wordCount\":1071,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/#\\\/schema\\\/person\\\/806db9f6184fe1af5af378472b5fb2e8\"},\"image\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/blank-book-scaled.jpg\",\"keywords\":[\"#ForFlukeSake\",\"Active Directory\",\"ASP\",\"Attribute\",\"HTML\",\"Office 365\",\"Organizational Unit\",\"Web Page\"],\"articleSection\":[\"Active Directory\",\"ASP\",\"HTML\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/\",\"url\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/\",\"name\":\"The Company Directory &#187; For Fluk3 Sake\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/blank-book-scaled.jpg\",\"datePublished\":\"2019-02-20T07:45:15+00:00\",\"dateModified\":\"2019-06-25T21:00:30+00:00\",\"description\":\"It reads all the information from your AD that you specify and populates a webpage. IT needs to keep that data up to date in any case.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/#primaryimage\",\"url\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/blank-book-scaled.jpg\",\"contentUrl\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/blank-book-scaled.jpg\",\"width\":2560,\"height\":1690,\"caption\":\"Blank Book\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/352\\\/the-company-directory\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The Company Directory\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/#website\",\"url\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/\",\"name\":\"For Fluk3 Sake\",\"description\":\"You don&#039;t need a degree in computers to do it\",\"publisher\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/#\\\/schema\\\/person\\\/806db9f6184fe1af5af378472b5fb2e8\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/#\\\/schema\\\/person\\\/806db9f6184fe1af5af378472b5fb2e8\",\"name\":\"Fluk3\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/wp-content\\\/uploads\\\/2018\\\/09\\\/cropped-Fluk3-1.png\",\"url\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/wp-content\\\/uploads\\\/2018\\\/09\\\/cropped-Fluk3-1.png\",\"contentUrl\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/wp-content\\\/uploads\\\/2018\\\/09\\\/cropped-Fluk3-1.png\",\"width\":696,\"height\":363,\"caption\":\"Fluk3\"},\"logo\":{\"@id\":\"https:\\\/\\\/forflukesake.co.za\\\/wp\\\/wp-content\\\/uploads\\\/2018\\\/09\\\/cropped-Fluk3-1.png\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The Company Directory &#187; For Fluk3 Sake","description":"It reads all the information from your AD that you specify and populates a webpage. IT needs to keep that data up to date in any case.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/","og_locale":"en_US","og_type":"article","og_title":"The Company Directory &#187; For Fluk3 Sake","og_description":"It reads all the information from your AD that you specify and populates a webpage. IT needs to keep that data up to date in any case.","og_url":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/","og_site_name":"For Fluk3 Sake","article_published_time":"2019-02-20T07:45:15+00:00","article_modified_time":"2019-06-25T21:00:30+00:00","og_image":[{"width":2560,"height":1690,"url":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/blank-book-scaled.jpg","type":"image\/jpeg"}],"author":"Fluk3","twitter_card":"summary_large_image","twitter_creator":"@F1uk31","twitter_site":"@F1uk31","twitter_misc":{"Written by":"Fluk3","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/#article","isPartOf":{"@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/"},"author":{"name":"Fluk3","@id":"https:\/\/forflukesake.co.za\/wp\/#\/schema\/person\/806db9f6184fe1af5af378472b5fb2e8"},"headline":"The Company Directory","datePublished":"2019-02-20T07:45:15+00:00","dateModified":"2019-06-25T21:00:30+00:00","mainEntityOfPage":{"@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/"},"wordCount":1071,"commentCount":1,"publisher":{"@id":"https:\/\/forflukesake.co.za\/wp\/#\/schema\/person\/806db9f6184fe1af5af378472b5fb2e8"},"image":{"@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/#primaryimage"},"thumbnailUrl":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/blank-book-scaled.jpg","keywords":["#ForFlukeSake","Active Directory","ASP","Attribute","HTML","Office 365","Organizational Unit","Web Page"],"articleSection":["Active Directory","ASP","HTML"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/","url":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/","name":"The Company Directory &#187; For Fluk3 Sake","isPartOf":{"@id":"https:\/\/forflukesake.co.za\/wp\/#website"},"primaryImageOfPage":{"@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/#primaryimage"},"image":{"@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/#primaryimage"},"thumbnailUrl":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/blank-book-scaled.jpg","datePublished":"2019-02-20T07:45:15+00:00","dateModified":"2019-06-25T21:00:30+00:00","description":"It reads all the information from your AD that you specify and populates a webpage. IT needs to keep that data up to date in any case.","breadcrumb":{"@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/#primaryimage","url":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/blank-book-scaled.jpg","contentUrl":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/blank-book-scaled.jpg","width":2560,"height":1690,"caption":"Blank Book"},{"@type":"BreadcrumbList","@id":"https:\/\/forflukesake.co.za\/wp\/352\/the-company-directory\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/forflukesake.co.za\/wp\/"},{"@type":"ListItem","position":2,"name":"The Company Directory"}]},{"@type":"WebSite","@id":"https:\/\/forflukesake.co.za\/wp\/#website","url":"https:\/\/forflukesake.co.za\/wp\/","name":"For Fluk3 Sake","description":"You don&#039;t need a degree in computers to do it","publisher":{"@id":"https:\/\/forflukesake.co.za\/wp\/#\/schema\/person\/806db9f6184fe1af5af378472b5fb2e8"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/forflukesake.co.za\/wp\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/forflukesake.co.za\/wp\/#\/schema\/person\/806db9f6184fe1af5af378472b5fb2e8","name":"Fluk3","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2018\/09\/cropped-Fluk3-1.png","url":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2018\/09\/cropped-Fluk3-1.png","contentUrl":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2018\/09\/cropped-Fluk3-1.png","width":696,"height":363,"caption":"Fluk3"},"logo":{"@id":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2018\/09\/cropped-Fluk3-1.png"}}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/blank-book-scaled.jpg","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/patsl4-5G","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":400,"url":"https:\/\/forflukesake.co.za\/wp\/400\/global-signatures-vs-mimecast\/","url_meta":{"origin":352,"position":0},"title":"Global Signatures VS Mimecast","author":"Fluk3","date":"2019-02-27","format":false,"excerpt":"We have a slightly different scenario we can successfully attach the signature between the received mail and the new mail being sent only when sending to external domains.","rel":"","context":"In &quot;Email&quot;","block_context":{"text":"Email","link":"https:\/\/forflukesake.co.za\/wp\/category\/services\/email\/"},"img":{"alt_text":"Photo by Philippe Krief on Unsplash;","src":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Mailbox-scaled.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Mailbox-scaled.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Mailbox-scaled.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Mailbox-scaled.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Mailbox-scaled.jpg?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/02\/Mailbox-scaled.jpg?resize=1400%2C800&ssl=1 4x"},"classes":[]},{"id":4451,"url":"https:\/\/forflukesake.co.za\/wp\/4451\/how-to-create-an-email-alias-in-azure-exchange-with-active-directory-sync\/","url_meta":{"origin":352,"position":1},"title":"How to Create an Email Alias in Azure Exchange with Active Directory Sync","author":"Fluk3","date":"2023-02-15","format":false,"excerpt":"If you are using Azure Exchange for email, you may want to create an email alias for a user in your on-premises Active Directory domain. This can be achieved by syncing the user account to Azure AD and using the \"proxyAddresses\" attribute in the user properties Attribute Editor. We will\u2026","rel":"","context":"In &quot;Active Directory&quot;","block_context":{"text":"Active Directory","link":"https:\/\/forflukesake.co.za\/wp\/category\/microsoft-windows\/windows-server\/active-directory\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2023\/02\/image-9.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2023\/02\/image-9.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2023\/02\/image-9.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2023\/02\/image-9.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":536,"url":"https:\/\/forflukesake.co.za\/wp\/536\/how-to-install-php-on-an-iis-web-server\/","url_meta":{"origin":352,"position":2},"title":"How to install PHP on an IIS Web Server","author":"Fluk3","date":"2019-06-24","format":false,"excerpt":"Following below is an example of how to: Install IIS with PHP on a Windows 2019 Server.","rel":"","context":"In &quot;IIS&quot;","block_context":{"text":"IIS","link":"https:\/\/forflukesake.co.za\/wp\/category\/microsoft-windows\/windows-server\/iis\/"},"img":{"alt_text":"IIS PHP","src":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/06\/IIS-PHP.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/06\/IIS-PHP.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/06\/IIS-PHP.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/06\/IIS-PHP.jpg?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":665,"url":"https:\/\/forflukesake.co.za\/wp\/665\/how-to-install-a-domain-controller-with-desktop-experience\/","url_meta":{"origin":352,"position":3},"title":"How to Install a Domain Controller with Desktop Experience","author":"Fluk3","date":"2019-07-29","format":false,"excerpt":"Installing a Domain Controller is easy compared to Managing an Active Directory. Let's just quickly Clarify the Terminology: A Domain Controller is THE SERVER that responds to Authentication Requests Normally a Physical or a Virtual Machine. The Active Directory is THE ROLE that actually does the work on a Domain\u2026","rel":"","context":"In &quot;Active Directory&quot;","block_context":{"text":"Active Directory","link":"https:\/\/forflukesake.co.za\/wp\/category\/microsoft-windows\/windows-server\/active-directory\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/07\/1.-Local-Server-Properties.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/07\/1.-Local-Server-Properties.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/07\/1.-Local-Server-Properties.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/07\/1.-Local-Server-Properties.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2019\/07\/1.-Local-Server-Properties.jpg?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":3050,"url":"https:\/\/forflukesake.co.za\/wp\/3050\/o365-enable-remember-multi-factor-authentication-for-x-days\/","url_meta":{"origin":352,"position":4},"title":"O365 Enable remember Multi-Factor Authentication for x Days","author":"Fluk3","date":"2021-02-02","format":false,"excerpt":"When enabling MFA on any Platform we as IT need to be aware that even though we are use to using additional security on our accounts, a lot of users (Even when Trained\\Advised) don't understand what we are doing. The effect of this is they get annoyed with the constant\u2026","rel":"","context":"In &quot;Active Directory&quot;","block_context":{"text":"Active Directory","link":"https:\/\/forflukesake.co.za\/wp\/category\/microsoft-windows\/windows-server\/active-directory\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2021\/02\/Service-Settings.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2021\/02\/Service-Settings.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2021\/02\/Service-Settings.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2021\/02\/Service-Settings.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/forflukesake.co.za\/wp\/wp-content\/uploads\/2021\/02\/Service-Settings.jpg?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":4696,"url":"https:\/\/forflukesake.co.za\/wp\/4696\/active-directory-script-find-user-account-expiry-with-specific-samaccount\/","url_meta":{"origin":352,"position":5},"title":"Active Directory Script: Find User Account Expiry with Specific SAMAccount","author":"Fluk3","date":"2023-08-10","format":false,"excerpt":"In the dynamic landscape of IT administration, efficiency is the name of the game. When managing user accounts in Active Directory, having the right tools at your disposal can save precious time and ensure that critical tasks are performed seamlessly. In this update to our previous script, we've fine-tuned our\u2026","rel":"","context":"In &quot;Coding&quot;","block_context":{"text":"Coding","link":"https:\/\/forflukesake.co.za\/wp\/category\/coding\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/posts\/352","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/comments?post=352"}],"version-history":[{"count":0,"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/posts\/352\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/media\/366"}],"wp:attachment":[{"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/media?parent=352"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/categories?post=352"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/forflukesake.co.za\/wp\/wp-json\/wp\/v2\/tags?post=352"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}