Monday, December 21, 2015

Identity models for Office365

There are three identity models available for tenants using Office 365 (O365). Choosing one of the models will impact the way user accounts are managed and how users would log in to their Office 365 subscriptions.

The models available are:
  1. Cloud identity model : All user accounts are store on the cloud in Azure Active Directory(AD). The Azure AD is the active directory used by O365 The tenant administrators could manage users through the O365 admin center.
  2. Synchronized identity model: In this model the user identity is managed in an on-premises server and the accounts and password hashes are synchronized to the cloud. The user enters the same password on-premises as they do in the cloud, and at sign-in the password is verified by Azure AD. This model uses the Microsoft Azure Active Directory Sync Tool (DirSync). Link: http://go.microsoft.com/fwlink/p/?LinkID=510956
  3. Federated identity model: This model also requires a synchronized identity, however the on-premise AD would validate the user credentials. This model uses ADFS or any other third party Identity provided supported by Microsoft. The identity providers supported are given here 

Upgrading Content Types in SharePoint 2010/2013

Most developers who used SharePoint 2007 faced issues with adding fields to content types post deployment. The fields were usually not propagated to the lists and libraries when deployed through the solution package.

SharePoint 2010 introduced new elements in the CAML schema to offer a solution for this problem.

The solution was providing an  element within the element to indicate that a feature has to be upgraded. The UpgradeActions element can have a child element  to add a new field to the already provisioned content type. 

Using this technique allows for propagation of changes to the content type to the child lists and content types.

Please find the usage below:

xml version="1.0" encoding="utf-8" ?>
<Feature xmlns="http://schemas.microsoft.com/sharepoint/">
  <UpgradeActions>
    <VersionRange BeginVersion="1.0.0.0" EndVersion="2.0.0.0">
      <AddContentTypeField
              ContentTypeId="0x010XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
              FieldId="{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}"
              PushDown="TRUE"/>   
    </VersionRange>
  </UpgradeActions>

</Feature>

Wednesday, August 7, 2013

Custom Sign Out Page for SharePoint 2010

Many a time there would be a requirement to implement a custom action when the user clicks on the Sign out link in SharePoint. 

SharePoint provides as option via PowerShell to achieve this. Clicking on the Sign out link can be made to point to a custom application page to implement the functionality required. This can be customized for each Web Application.

The PowerShell command is given below:

Set-SPCustomLayoutsPage -Identity "Signout" -RelativePath "/_layouts/MySignOut.aspx" -WebApplication "http://mywebapp"

Tuesday, January 3, 2012

Creating Web Templates for SharePoint Online - Office 365

As site definitions are not allowed in SharePoint Online the concept of WebTemplates cones into picture.
WebTemplates are pretty much similar to Site Definitions from the schema perspective. 

Steps for creating a custom web template :

  • Identify the type of web template you want to create i.e. it should be based on an existing Site Definition like Publishing Site, Blog Site, Wiki, etc
  • Create a custom onet.xml and copy the content from the site definition into the onet.xml.
  • Add all the custom components you would want to create as part of the webtemplate i.e. features, modules, lists, libraries, etc.
  • Create an elements.xml file and add a web template into it i.e. 


<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
   <WebTemplate Name="StoreWebTemplate" 
          BaseTemplateName="BLANKINTERNET" 
          BaseTemplateID="53"
          BaseConfigurationID="0"
          Title="Store"
          Description="Store web template"
          DisplayCategory="MindTree Store Portal"/>
</Elements>




You would notice that my web template is based on the publishing site definition i.e. BLANKINTERNET which is added as the BaseTemplateName attribute.

The BaseTemplateID can be obtained from the webtemp.xml file located in the 14 hive.

The rest of the attributes are self explanatory.

  • Now we are ready to package the webtemplate as a feature in a Sandboxed Solution and deploy it on SharePoint online.
  • Activating the feature should make the web template available for creating sub sites.

SharePoint 2010 Developer's Certification Exam preparation books available on amazon.com


Wrox has published a book to aid SharePoint Developers prepare for the SharePoint 2010 Developer certifications 70-573 and 70-576. The book is available on amazon

http://www.amazon.com/SharePoint-2010-Developers-Certification-Toolkit/dp/0470912340%3FSubscriptionId%3DAKIAJK4PAUN27E77K2EA%26tag%3Daglspt-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D0470912340

Thursday, September 2, 2010

SharePoint 2010 Crossword puzzle

My colleague, Jackson, came up with a nicely done SharePoint 2010 crossword puzzle for an event we had at work.Really smart work on some of the clues :)

He blogs @ Confessions of a SharePoint Consultant

Wanted to share it with a larger audience

Wednesday, September 1, 2010

Web part versioning in SharePoint 2010

One of the new features added to SharePoint 2010 web part framework is versioning of web part instances.
The versioning comes into effect under the following scenario:
  1. When the page is checked in.
  2. Versioning is controlled by page level settings
  3. Only shared instances of web parts will be versioned
Although, if there are edits when the page is not checked out, then the versioning will not occur.

The only issue would be the amount of storage space needed for the versions, as there is no delta storage of the versions, the entire instance will be stored in each version.