Category: MOSS


I only get a chance to setup email enabled libraries once every 4 months or so. My last setup was a couple of weeks back. This was for one of our customer who wanted to use incoming email functionality to support some reports coming from external sources; this particular customer was running Microsoft Exchange 2007.

Before I get into the actual steps, here are some basics: For email enabled libraries to work in SharePoint, you need at least one server in your SharePoint Farm to host the SMTP service (on Windows 2008 and above this service is still administrated through IIS 6.0 Manager) this service stores routed email in a drop folder from where SharePoint timer job picks it up periodically and puts it in the document library linked to an email alias (the LibName part in LibName@companyname.com). The timer jobs run on all severs connected to the Farm but only the server where the mail is forwarded to will actually process it. When Distributed Lists management is turned on SharePoint will create Contacts for all incoming email library under the selected organisational unit.

Here are some quick sanitised steps that I documented for the customer:

  1. Create an Organisational Unit under you domain called SPMail, for example the one I created has an LDAP Path: OU= SPMail,OU=Melbourne,DC=COMPANYNAME,DC=COM
    1. On Windows Server 2008 and above ADSI Edit is preinstalled and one of best tool to find the LDAP Paths
  2. On the newly created OU setup Delegate rights with Full Control for the Central Administration\Timer Service Account: DOMAIN\ServiceAccountName
    1. Full Control is not Necessary, you can get by Read, Write
  3. On your DNS Server add a new MX record, to a new subdomain like SPMAIL such that your entry looks like SPMAIL.COMPANYNAME.COM with Mail Server Priority set to 20 and DNS pointing to the SharePoint box (for example SPAPP.COMPANYNAME.COM) in your farm with the SMTP service running locally.
  4. Open up Exchange 2007 Management console and under Hub Transport create a new Send Connector called SharePoint Mail
    1. Use the following for the Address Space value: SPMAIL.COMPANYNAME.COM
    2. Under Smart Host Routing setting select: Use DNS for MX Records
  5. Install and setup the SMTP service on SPAPP.COMPANYNAME.COM for domain: SPMAIL.COMPANYNAME.COM with the drop folder set to its default value
  6. Finally setup the Incoming Email settings under operations in Central Administration (<CA SITE>/_admin/IncomingEmail.aspx)

For testing simply enable email on Shared Document library under the Central Admin Site. This can be done by going to list settings and the clicking on the Incoming Email Settings link.

Library: <CA SITE>/Shared%20Documents/Forms/AllItems.aspx

Email Alias: SharedDocuments@SPMAIL.COMPANYNAME.COM

Verify that a new Contact is created in AD and Exchange and then send an email using you email client to verify if emails are being routed to the library.

Advertisements

A client of mine did not want parts of their Intranet based on MOSS 2007 to be searched; now that’s quite easy to do with Crawl rules. As they wanted strict control over the content that can be crawled I trained them on how to control ‘the crawl’ behaviour for content within SharePoint.

There are three places within SharePoint where end users can change search visibility setting or exclude content for search.

  1. Change Visibility for a Web site: In the Site Settings page, site owners can click the Search Visibility link to go to the Search Visibility page SharePoint. In the Indexing Site Content group, selecting the No option to will exclude all content within the site. The crawler will in turn simply skip the site and not include any of its content in the index.
  2. Exclude Site Columns: In the Site Settings page, site owners can click the Searchable Columns link to go to the Search Settings for Fields page in SharePoint. This page will enumerate all the site columns defined at the current site level. Selecting the NoCrawl check box for the site columns will exclude them from future crawls.
  3. Exclude Lists: The last option for excluding content exists at the level of the SharePoint list settings. It enables list owners to exclude the list and all the content within it from crawls. In the settings page of the list, click the Advanced Settings link. Selecting the No option under Search Available for crawl tells the crawler to exclude the specific list from a crawl.

Also if there are certain pages or entire site content that site designers don’t want to be crawled, simply putting the no index directive in the head section of the master page or layout page’s mark-up will stop the SharePoint crawler from crawling the pages:

 <META NAME=” ROBOTS” CONTENT=” NOHTMLINDEX”/>

Security Trim Contents of a Page

I get this question a lot of times, and yesterday I had this question come up again. One of my team mates asked me about a way to security trim content on the page rather then the entire page it self. Well it’s quite easy, all you need is the SPSecurityTrimmedControl.

<SharePoint:SPSecurityTrimmedControl ID=”SPSecurityTrimmedControlName″ PermissionsString=”BrowseDirectories” runat=”server”>

The markup that needs to be security trimmed goes here.

 </SharePoint:SPSecurityTrimmedControl>

Here are the permissions you can use, you can add multiple using commas:

AddAndCustomizePages
  AddDelPrivateWebParts Add or remove personal Web Parts on a Web Part Page. 
  AddListItems Add items to lists, add documents to document libraries, and add Web discussion comments. 
  ApplyStyleSheets Apply a style sheet (.css file) to the Web site. 
  ApplyThemeAndBorder Apply a theme or borders to the entire Web site. 
  ApproveItems Approve a minor version of a list item or document. 
  BrowseDirectories Enumerate files and folders in a Web site using Microsoft Office SharePoint Designer 2007 and WebDAV interfaces. 
  BrowseUserInfo View information about users of the Web site. 
  CancelCheckout Discard or check in a document which is checked out to another user. 
  CreateAlerts Create e-mail alerts. 
  CreateGroups Create a group of users that can be used anywhere within the site collection. 
  CreateSSCSite Create a Web site using Self-Service Site Creation. 
  DeleteListItems Delete items from a list, documents from a document library, and Web discussion comments in documents. 
  DeleteVersions Delete past versions of a list item or document. 
  EditListItems Edit items in lists, edit documents in document libraries, edit Web discussion comments in documents, and customize Web Part Pages in document libraries. 
  EditMyUserInfo Allows a user to change his or her user information, such as adding a picture. 
  EmptyMask Has no permissions on the Web site. Not available through the user interface. 
  EnumeratePermissions Enumerate permissions on the Web site, list, folder, document, or list item. 
  FullMask Has all permissions on the Web site. Not available through the user interface. 
  ManageAlerts Manage alerts for all users of the Web site. 
  ManageLists Create and delete lists, add or remove columns in a list, and add or remove public views of a list. 
  ManagePermissions Create and change permission levels on the Web site and assign permissions to users and groups. 
  ManagePersonalViews Create, change, and delete personal views of lists. 
  ManageSubwebs Create subsites such as team sites, Meeting Workspace sites, and Document Workspace sites.  
  ManageWeb Grant the ability to perform all administration tasks for the Web site as well as manage content. Activate, deactivate, or edit properties of Web site scoped Features through the object model or through the user interface (UI). When granted on the root Web site of a site collection, activate, deactivate, or edit properties of site collection scoped Features through the object model. To browse to the Site Collection Features page and activate or deactivate site collection scoped Features through the UI, you must be a site collection administrator. 
  Open Allow users to open a Web site, list, or folder to access items inside that container. 
  OpenItems View the source of documents with server-side file handlers. 
  UpdatePersonalWebParts Update Web Parts to display personalized information. 
  UseClientIntegration Use features that launch client applications; otherwise, users must work on documents locally and upload changes.  
  UseRemoteAPIs Use SOAP, WebDAV, or Microsoft Office SharePoint Designer 2007 interfaces to access the Web site. 
  ViewFormPages View forms, views, and application pages, and enumerate lists. 
  ViewListItems View items in lists, documents in document libraries, and view Web discussion comments. 
  ViewPages View pages in a Web site. 
  ViewUsageData View reports on Web site usage. 
  ViewVersions

I recently had the opportunity to attend rotation 3 (R3) or the first public offering of the Microsoft Certified Master program for SharePoint 2007.  This without doubt will be one of the most intense, humbling and gratifying experiences of my life.

After a gruelling three weeks of SharePoint expert training and intense peer discussions, three difficult written exams, a tough but fair Qualification lab and countless sodas and sleepless nights, I am very pleased to announce, that I’m now a Microsoft Certified Master for SharePoint 2007!

I was originally supposed to attend the beta rotation (R2) back in April but as luck would have it I could not attend R2 and boy was I glad to start on 1st of June, 2009!  First of all the weather in Redmond was fantastic by all accounts, it only rained once or twice while I was there. Microsoft jokingly calls weeks like these the recruitment weeks. Secondly the training format, the qualification lab and venue improved tremendously compared to the last two rotations.  The Master Program folks seek exhaustive feedback and based on the improvements to the program on per rotation basis, you can tell that they take this feedback seriously.

My journey with the program started when I applied for it last year in November, 2008; lucky for me it was not too hard to get a buy in from my employer Stargate Global Consulting, they have a vision to build a Centre of Excellence for SharePoint in Australia, and, having MCMs on board played into that vision. Part of the application process is submission of engagement briefs, sanitised copies of technical documents authored in the past and possibly an interview (I did not get one but have been told by other candidates how hard it was).  I got the green light from the SharePoint MCM Program Managers in January, 2009 along with a list of pre-reading material and invitation emails (more on this later). I did not know at the time but the selection criteria is right up there, we have been told for every candidate selected in the last rotation four to five applicants were refused.

I did not pay much attention to Pre-read list as I had read most of the material over the last few years, big mistake as I was to learn later – most of the documents and articles on the pre-reading list have been updated over the last year.  I focused more on the logistics side. Based on the advice of former MCM Candidates, I flew in a couple of days early and shared a flat with two really personable and knowledgeable Microsoft Consulting Services folks – or as we now like to call ourselves ‘The Three Amigos’. The off campus housing and learning experience was great, although you are the foremost resource responsible for your own learning, the support from peers cannot be denied and one of the best things about MCM.

June the 1st was an early start like all other days of the program, the program kicked off at 7:45 AM on the dot at Building 40, breakfast was served and the seats had name tags along with MCM Folders and log on instructions to the fabulous blade servers. MCM collateral was also neatly stacked at the back of the room for our collection. From the introductions alone it became quite obvious the deep skill set and expertise on parade in the room.  We had a good balance of architects, consultants, support engineers and folks from both Microsoft Consulting Services and Microsoft Partners; almost all the 17 candidates had at least 3 to 8 years experience with the SharePoint technology and products among other things. The best thing about all of us was our eager attitude towards learning. We were all here to learn “what we don’t know that we don’t know”.

We were also introduced to our trainer for the day; we had over 12 through the three weeks, each undoubtedly an expert in his or her area. The training days were busy – early starts and late finishes was the norm. A full day of presentations and discussions (45 minute lunch break inclusive) was followed mostly by lab work and lots of reading over the weekends. You had little time for anything else other then eating or sleeping.  Any free minutes we had were put to use by mini SharePoint Trivia sessions, I learnt a lot of things from this valuable exercise. This is where the true benefit of peers becomes apparent; I also can’t count the number of times I was assisted by my fellow MCM candidates during the course of the labs.

Not going into too much detail from a ‘What was covered Perspective’.  Week one focused largely on the architectural and design side of SharePoint, week two dived into the features available within the product and week three focused on the custom development side of things. Although not all SharePoint areas were covered as that would have been a herculean task given the nature of the product and the constant flux of improvements with service packs and updates. In my personal opinion program manager had done a great job, the course was very well structured. The material was highly relevant and can be largely applied to our daily work. 

The three written exams I mentioned earlier took place after each week of training, it’s important to understand that you are not taught to the test, so don’t be surprised if you are thrown an odd ball question, it probably is testing your concepts – both your existing experience and the pre-reading list play an important role here.

As the old adage goes ‘All work and no play makes Jack a dull boy’ this was true too in the case of the MCM Program, James (Program Manager) mixed it all up with visits by the product team, candidate dinners, the traditional Go-Karting run off against the OCS MCM folks (we won the 1st and 3rd positions), company store visit etc. I must add that James did a great job in keeping us motivated, especially by week three where we all needed it badly. My personal favourite was the visit to the Home of the Future, it was quite inspiring. I came out buzzing with ideas for services in the cloud that will be required in the not so distant future.

The grand finale of the program is the much dreaded Qualification lab. The tireless lab work and studying for the exams in the preceding weeks did not prepare me for what I was to experience in the Qualification lab. The lab preparation and the blade server setup were excellent.  I remember how pleased I was to get the tasks under my belt, even let a little shout of joy out just before the last minute warning. I had not realised it in the course of the day but the sheer amount of scenarios and work that needed to be performed had almost drained me.  It hit me when I tried to get up from my seat and just fell back without warning. This was probably one of the most memorable days of the whole program.

It’s true, as it’s been iterated on number of blogs before, MCM is not for the faint hearted, and you will need all the stamina in the world and passion to succeed. Quite frankly MCM is the best product training you can have.  The recognition and respect for achieving this status is unparalleled in the Microsoft eco system. I would challenge all seasoned SharePoint professionals to consider the MCM Program; do you have what it takes to be a Master?

SPD is officially free download from 1st of April 2009, We got official confirmation from Microsoft on that one. Current SPD license holders will be upgraded to Expression Web.

 You can download it at  http://www.microsoft.com/spd

Through MOSSIG and Stargate Global Consulting we thought this was a good reason to offer a free introduction training for Stargate Designer, you can sign up for this 2 hour workshop here.

Each workshop will be limited to 12 people, so sign up quickly!