Sunday, October 21, 2012

Set Passphrase for SharePoint 2010 Farm


The Passphrase, for your SharePoint farm, is required to add a new server to the farm.

If you have forgotten the passphrase then there is no method to retrieve or recover it but you can change it.

The passphrase resides in the SharePoint Configuration database and below are the steps to set/change it:
  1. Start SharePoint 2010 Management Shell from Start --> All Programs --> Microsoft SharePoint 2010 Products --> SharePoint 2010 Management Shell
  2. Write $passp = ConvertTo-SecureString -asPlainText -Force. This will prompt you for a string, which is going to be set as the new passphrase of your farm. The string is converted to SecureString, which is the expected type of the passphrase
  3. Next write Set-SPPassPhrase -PassPhrase $passp -Confirm. It will ask for a confirmation after which your new passphrase will be set.

Monday, October 8, 2012

Convert existing SharePoint Web Application from Classic mode to Claims mode authentication results in all users getting "Access Denied" error or only view rights of the site


Scenario -
I had an existing SharePoint site that I had created with Classic mode authentication (not a good idea!) and due to certain requirements which needed to be implemented in this site I had to convert the site to Claims based authentication. Though I do not "claim" to be an expert in configuring "Claims" authentication I was aware of the simple process of converting Classic mode authentication to Claims mode.

As is true in most cases, I had commitments to meet and converting the site to Claims mode seemed an easy bit and was at the bottom of my priorities. However, after setting up most pieces of my site (which had anonymous access enabled, by the way) when I converted my site to claims mode I was surprised to see that I could no longer access my site with full privileges except with "System Account". Luckily, since I had anonymous access I was able to atleast browse the site with my other admin users and what I saw is that the user names appeared as "i:0#.w|domain\username". With the System Account I checked for the permissions of the site and the permissions were as earlier, nothing had changed. But, still no access.

Solution -
Please take a backup of your web application before running any of these scripts (it is a good idea to take a backup before running any major Powershell script) as it atleast helped me save face.

First of all below is the powershell script to convert classic mode site to claims mode

$webapp = Get-SPWebApplication -Identity "http://serverURL"
$webapp.UseClaimsAuthentication = $true
$webapp.Update()

As mentioned above after running this script access for my users was altered (removed, rather). Here is what you need to do in addition. But make sure you have your backup ready. The script is as follows -

$webapp = Get-SPWebApplication -Identity "http://serverURL"
$webapp.MigrateUsers($true)

Thats it! Seems pretty simple but it took me around 10 hours of searching before I reached this solution (makes me feel pretty dumb if you reached here in 5 minutes).

Caution! Caution! Caution! -
OK! There was a reason I asked you to have a backup before running scripts. This is what happens when you run the above mentioned scripts:

On executing the first script (to enable claims authentication) the SharePoint Content Database is made ready for claims based authentication but the already existing site users, who in my case were windows users, are not "migrated" to be understood by claims authentication. But SharePoint assumes all users to be claim users and renders them so. Therefore, a normal windows user - "Domain\UserName" appears as "i:0#.w|Domain\UserName". Furthermore, it uses the username in this same format to check for its permissions but does not find a matching entry for the user as the database has windows users - "Domain\UserName". So, the site will give you an access denied or, in my case, anonymous access privileges.

Note that the System Account will work since it's "Domain\UserName" is never used and System Account is a keyword used by SharePoint for your application pool identity. Therefore, it remains unaffected.

To overcome this situation we use the second script to "migrate" the users. MigrateUser($true) will convert all user accounts to claims format. After running this script user accounts are converted in the database to claims format, therefore, user names are read correctly by SharePoint, therefore, permissions for users are associated correclty by SharePoint and therefore, the site permissions work correctly.

Something very important to note here is that ideally, MigrateUser($false) should convert the user names back from claims format to the normal format, but it does not do so. This script will throw an exception and no change will be made to the database - so once you are in claim mode you cannot go back. Please refer this post to revert from claim mode to normal mode. Also note that these scripts are running on Web Applications so they will affect all site collections in that web application

Lessons learnt - I feel, that if you are creating a new web application in SharePoint 2010 always use Claims Mode Authentication as it gives you flexibility and you can avoid wasting your time on "migrating" users back and forth. Probably that is the reason why SharePoint 2013 has done away with Classic mode authentication and has only Claims-based Authentication.

Tuesday, July 3, 2012

Spain - First Consecutive Euro Champs

Spain have done it again!

Just a couple of days back Spain created football history by becoming the first team ever to successfully defend their Euro title; and they defended it by the best ever win margin in a Euro final - a 4-0 thrashing of Italy. And the second team to win three major titles in a row - Euro 2008, World Cup 2010, Euro 2012 - after Argentina.

If you go 4 years (and a few months) back Spain had never won the World Cup and had won Euro just once that too way back in 1964. Going by titles this is the best ever Spanish team and possibly the best team of all times.

Though it was an expected result I was hoping for a little more enthusiasm from Italy. Italy's superstar, after the semi-final with Germany - Mario Balotelli, hardly posed a threat to the Spanish defense and the usually awesome Gianluigi Buffon was clueless. In the semi-final against Germany the ball seemed to have a magnetic attraction with Buffon; it hardly missed him to reach the nets, but the final seemed to be the "polar" opposite.

Though, I don't mean to take anything away from the Spanish attack. It looked like the attack of the World Champions that they are but I feel Buffon is an exceptionally talented goal keeper.

But the bottom line is Spain are Euro Champs once again and serious contenders for the World title in 2014.

Well done Spain!

Friday, June 1, 2012

SharePoint on Android/iOS Tablets

The tablet market is expanding by every passing day and honestly, the experience it has created for users is "Amazing". Tablets are here to stay and we have to adapt to this new device as soon as possible.

Being involved with SharePoint and sharing views of many SharePoint professionals, I think we have to start making SharePoint "Tablet-friendly". You would argue that SharePoint being a server-side technology, hosted on a web server can be browsed using the web browsers available in these tablets.That is very correct, but a SharePoint site browsed through a portable device gives very limited capabilities. Customers expect to leverage SharePoint to fully use the tablet experience. That is what will make them fully enjoy SharePoint's power.

There are various applications already available in the stores of Apple and Android powered tablets that can interact seamlessly with SharePoint and give users a rich experience. I have listed some of them below:

  1. Formotus
  2. SharePlus
  3. Mobile Entree
They offer quite different range of capabilities.

Also, you can create your own custom application using the following platforms:
  1. Phone Gap - It is HTML 5 based and uses HTML, JavaScript for application creation
  2. Mono - Makes the .NET libraries available over multiple platforms.

Wednesday, May 30, 2012

Miracle of Syedna Mohammed Burhanuddin (TUS) - 2 - Personal Experience

My experiences might not apear like miracles, but the way these events have occured in my life they are certainly miracles for me. This is what happened:

My family and I had come to know that my wife was pregnant; as with any parent there was a great deal of excitement, tension and preparation going on...

But sadly, our happiness was short lived. We had gone to the doctor for a check up and we came to know that the baby had moved down and was close to being aborted. My wife was advised to be admitted to hospital and we had the following options:
 1. My wife had to undergo an operation to prevent the child from moving further down, or
 2. Abort the child.

The doctor had said that even after the operation my wife would have to be on complete bed rest until the delivery. And all this also did not guarantee that the child will be born safe and chances of abortion were still very high. The greatest risk was that the child might have to be aborted during the operation if something should go wrong.

We did araz of the same in Huzurala (TUS), Moula bestowed benediction and gave raza to undergo operation and not abort the child.

The operation was performed the next day. It went on for around 45 minutes (which appeared to be longer than forever). I was outside the operation theatre for some time but later went for ziyarat of Syedna Taher Saifuddin. No sooner had I stepped out of the roza complex that I got a call from my father-in-law that the operation was successful. I was happy but this was just the first step.

It is difficult for a person to take complete bed rest even when they are suffering from some physical disability, imagine a bed rest for 7 months by choice!

But, it was surely the dua mubarak of Aqa Moula (TUS) that my wife was positive and patient throughout her bed rest. She could only get up from bed when she had to go to the doctor for her check-up.

The doctor had called us 5 weeks after the operation for the first check-up. As scheduled we took an appointment and met with our doctor after 5 weeks. She examined my wife and said that "It is truly a miracle that your baby has survived. I did not expect this. I thought that you will come after 2-3 weeks to abort the baby as there were very minimal chances of survival."

After hearing this we, as well as the doctor, expected that the baby might be born a little premature in the 7th month. We repeatedly did araz in Huzurala (TUS). It was only due to the dua of Aqa Moula (TUS)  that I was gifted with a son. He was born in the 9th month, though he was underweight at birth, but healthy.

I along with my family araz sajadat of shukr in the hazrat of Aqa Moula Mohammed Burhanuddin (TUS) for this very dearest of blessings. And guess what my son's name is - Burhanuddin!

And finally, I thank my wife for having the patience and courage to go through those tough times. She just gave a demonstration of how strong women can be!

Also, I would like to thank Shaikh Shabbir Najmi for doing all our araz.

May Allah ta'ala  grant a long, healthy and prosperous life to Syedna Mohammed Burhanuddin till the end of time. Ameen!

Monday, May 21, 2012

Moving documents from one document library to another maintaining versions - SharePoint 2010

Here is a simple task - Move documents from one library to another in SharePoint 2010 Document Library. Sounds simple! You can use "send to another location", "explorer view" etc. etc. But let me slightly complicate things here -

Move documents from one library to another in SharePoint 2010 maintaining all versions of the document in the new library.

Now, there is an understood pre-condition associated with this task that both libraries should have versioning enabled to the same level (minor or major).

What I found was that, when we use "send to another location" or any other OOB method to transfer the document from one location to another, versions are not maintained. They are simply forgotten. Reason for this is simple - at the new location, even though versioning is enabled, the transferred (moved) document is the very first version. In simple words, versioning is initiated at the new location only after the document is created there.

But as usual this was something I did not expect, because all my client asked is to move documents from location A to B and I very confidently agreed to do it in a few minutes time. And as a P.S. the client added that documents have versions and versions will be required at the new location. I thought - "That should not be a problem??"

Turned out I was wrong. I panicked and the first thing came to my mind was "custom code" and the pain it would cause to write all those lines, build, debug, test; build, debug, test; build, debug, test... you get the point.

But then, a little bit of researching gave me this quick solution -

All you need to do is open both locations (document libraries) in explorer view and cut and paste the files to the new location. Note that -
  1. Copy and paste will not carry your versions,
  2. Both location should have versioning enabled and
  3. Both libraries should have the same template i.e. document library --> document library or form library --> form libary and so on.
Really neat trick and saved a lot of my time. Huh! Can spend some time playing angry birds now!

Monday, May 14, 2012

Miracle of Syedna Mohammed Burhanuddin (TUS) - 1 - Personal Experience

I am a member of the Dawoodi Bohra community.

The following incident happened in July-August 2010 (just before Ramazan 1431) and I am writing it today to araz shukr (offer thanks) in the hazrat (holy presence) of Syedna Mohammed Burhanuddin (TUS):

I am a software engineer, residing in Mumbai, and during the period of January - August of 2010 I was working for a prestigious multi-national IT company (name withheld for obvious reasons). They had delegated me to their manufacturing unit  in Mumbai to provide support for the manufacturing unit's software division.

I was not very comfortable in this position and was trying to convince my managers for quite some time to bring  me back to our main IT office. Reasons for this were:

  1. The culture of the manufacturing department was not very helpful for gaining IT expertise and the software division was a very neglected division.
  2. The work was endless and laborious and I did not find any understanding from my managers at the manufacturing unit.
  3. And, the most important reason was that they did not let me offer namaz (in their premise or outside) mainly during zohar-asr (afternoon) time.
I had experience prior to joining this multi-national company but nowhere had I faced opposition for offering namaz. This was the first such instance and I was pretty shocked to see their blunt attitude. It should also be noted that while I was at my main IT office there was no such opposition and there were a handful of people praying regularly at a secluded place.

Initially when I was warned not to pray namaz during office hours I ignored it; it used to take me hardly 5-7 minutes to offer prayers and I thought I will sneak out during lunch hours and no one will come to know. I had tried my best not to come in anyone's way and quietly follow my religion. But later they pressurized me by complaining to my IT office managers, who equally supported them.

I argued with my managers that in our head office people do offer namaz and I am just taking 5 minutes of lunch time  to perform my religious duties but the blankly opposed. Their argument was that office time is for office only and no personal work can be done at that time. But, my office time was also never ending and honestly there was much more office time wasted by people in chatting, tea and snacks and other such activities.

And all this happened just before the month of Ramazan. I was distressed, I just remembered the words of Syedna Mohammed Burhanuddin and how He stressed on the importance of namaz and I decided to quit my job.

On July 21, 2010 I resigned from my job. I was very worried as my family's financial position was not very great and I was about to get married in December that same year. But my entire family, including my now wife and in-laws supported my decision. I started giving interviews to any company that came my way, irrespective of its status and the position they were giving me. 

I had a 3 month notice period and I thought may be I will find something by then. But I did not know that my fortune was about to turn.

I got a chance to visit Burhanpur, Dargah-e-Hakimi and I was at the gates of Hakimuddin Moula's dargah when I got a call for an interview in Pune. I had not planned to leave Mumbai, and I had got a call from the same company earlier but I had ignored it since I wanted to stay in Mumbai. But right now I was going for everything, so I agreed to attend the interview in Pune.

I went from Burhanpur directly to Pune and attended the interview, I got selected. And astonishingly got twice the salary of my current company. So, I went from Burhanpur to my home with a job in hand. "Hakimuddin moula koi na khaali haath pacha nathi walta."

The first thing I sought after that was raza and dua mubarak of Burhanuddin Moula (TUS) to do a job in this company in Pune. I did not have many contacts and did not know how could I get my arzi done quickly as I had to reply back to the company for acceptance of the offer. But Burhanuddin Moula had everything planned for me.

My wife's friend had very good contact in Huzurala (TUS) and he got our arzi done. Within 1 day I got raza from Moula (TUS) to take the job if I find it suitable. So, in fifteen days time I had gone from no job to double salaried job. But this was not all, Moula (TUS) had one final surprise for me.

My company was based in Pune, but they had an open position at one of their clients in Mumbai, that too close to my home. Instead of serving 3 months notice I quit the job in 40 days. And, yes  my new managers did not have any problems with me offering namaz. In fact, they used to see to it that I did not have any problems during that period.

All this happened so fast that it was difficult to believe for me. More than just a co-incidence of events this seemed a planned sequence of events in my life, planned by my Moula (TUS).

One last aspect I want to point out here is that there was a masjid tameer fund scheme going on in our tanzeem committee and our aamil saheb had greatly enforced everyone to pay their masjid tameer dues (as any aamil saheb would do). But I was deeply touched by his words. He used to say that - "Khuda nu ghar aabaad karso to tamaro pan ghar aabaad thase".  I had paid our masjid tameer dues as soon as I had collected enough money and co-incidently that was in the same month of July 2010. Aamil saheb was right!

It is true that Moula (TUS) apna har amal par nazar rakhe chhe. Ane aap Moula ne saccha dil si yaad karo to Moula madad par aawe chhe.

I offer my humblest and most sincere thanks to Allah ta'ala, Hakimuddin Moula and Syedna Mohammed Burhanuddin Aqa (TUS). May Allah grant our beloved moula a long, prosperous and healthy life till the day of judgement. Ameen!