Friday, September 02, 2005

Sites verses Areas Verses Topics Verses Whatever

This is most commonly asked question with no definitive answer.

As Bob Mixon says, it would depend on the exact requirements.

An "Area" is a SharePoint Portal Server page. Areas are organized in a hierarchial manner which ultimately constitutes your Portal solution. SharePoint Portal Server (SPS) Areas have features that are unique to them, including specific types of content, audience and security. For example; all content associated with an Area has the same security as the Area itself.

A Site, also referred to as a WSS Site, is much more of what you may know as a conventional web site. A WSS Site can consist of one or more pages and sub-sites. WSS Sites are used for many needs such as a place for team to collaborate. The security abilities of a WSS Site are much more robust.


Bill English, in his interview answered this one in a great manner.. I found it after a long time. So I’m reposting it. Take a look..

Home, Topics, Sites and News. All give you already a robust portal that is capable of disseminating static, public and company-wide information. But at the portal level, the collaboration tools are nearly non-existent. For example, the document library in a topic area lacks *any* of the collaboration features that is has when it is placed in a site. Whereas WSS Site is full of collaboration tools and totally empty of any method to implement taxonomy.

The portal is there to aggregate, present and organize information. The sites are used for collaboration.

if you need to collaborate on the information, then place that information in a site. If you need to present static information, then place it in a portal or in a site list that is submitted to a portal area.

Sites vs. portal is not primarily about departments vs. divisions vs. enterprise, though it is easy to see how we can think along those lines. The sites vs. portal are all about collaboration vs. presentation.

If you're looking to offer departmental level sites for teams, then you can consider WSS as that delivery mechanism. The SPS portion comes into play when you want to aggregate the view of those sites together in a more unified portal view of the world. While you can create areas at the SPS level till the cows come home, there are a couple of caveats.

First, security is applied to the area level not the list level. In a WSS site I can give everyone access to the site and restrict access in many ways (for example a read-only document library or manager only list). In SPS I have to create sub-areas to do this.

Second, there isn't a clean way to create content in an area without having to put it on the same page. In WSS I can create 10 lists and only expose the most important one on the home page but users can find all 10 lists in the navigation tree. In SPS I create the 10 lists and users have to go into the Manage Content link (assuming they even see it, readers don't) and find the list.

WSS sites should be used for contained content (document libraries, lists, etc.) where many people can collaborate on their own in a focused manner (say a project or team) with many contributors. At the SPS level, use areas for specific content that's targeted at groups where it's more of a push of the information with very few contributors and more readers.

This definitely helps !!

Parag Sinkar

Wednesday, August 24, 2005

Back again

Its been almost 3 months since my last post. Had little bad patch healthwise. Things looking good now.

I am now back in India and goin to start posting once again.

Parag

Tuesday, June 07, 2005

Blogging with SharePoint !!

Frontpage 2003 has the functionality to add blogging functionality to WSS sites.

Click "New" -> "SharePoint Team Site" ->

Click on "Packages" tab, you'll find a template for "Web Log".

Enter location on right hand side.

Click OK

That's done. ENJOY !!

Sunday, June 05, 2005

All SharePoint Webcasts

Windows SharePoint Services Object Model and Web Services 2

TechNet Webcast: SharePoint Portal Server 2003: Personalization, Profiles and Audience Targeting - Level 200

TechNet Webcast: SharePoint Portal Server 2003: Organizing Sites and Topics - Level 200

Development
Building Custom Microsoft SharePoint Sites with Templates and Site Definitions

SPS 2.0: Developer Considerations

SPS 2.0: Architecture and Best Practices for SPS Development

SPS 2.0: Developing Sharepoint Solutions Without WebParts

SPS 2.0: Leveraging the Power of Custom Search and Ranking

Microsoft SharePoint Portal Server Object Model and Web Services

Programming the Microsoft SharePoint Object Model, Web Services, and Events

Building Applications with People Objects in Microsoft SharePoint Portal Server

Building Administrative Applications for Microsoft SharePoint

Building Administrative Applications using the WSS SPS Object Models

Creating and Manipulating SharePoint Site Content, Structure, and Templates from Code

Developing Advanced Portals with .NET Web Parts (SharePoint)

Developing Custom SharePoint Solutions with Microsoft FrontPage in a Hosted Environment

Programming the Office Web Components

Workflow
Workflow Options 1 Partner Solutions

Workflow Options 2 Document Library Events and Building Workflow Solutions in Sharepoint

Advanced SharePoint Workflow Using Custom Document and Form Libraries (Part 1 of 2) (Level 100)

Advanced SharePoint Workflow Using Custom Document and Form Libraries (Part 2 of 2) (Level 300)

Document Library Events and Building Custom Workflow Solutions in Microsoft SharePoint

Lists and Document Libraries
Programming SharePoint Site Lists and Document Libraries (Level 300)

Creating and Customizing SharePoint List, Library, and View Definitions (Level 300)

MSDN Webcast: Programming SharePoint Site Lists and Document Libraries (Level 300)

SharePoint List API and its Integration with Office and Excel

General
Creating Team Sites Using SharePoint Products and Technologies

TechNet Webcast: How Microsoft IT Plans and Optimizes an Enterprise SharePoint Infrastructure (Level 200)

Microsoft Executive Circle Webcast: Realizing the Benefits of SharePoint Portal Technologies

TechNet Webcast: Digital Asset Management for SharePoint Products and Technologies - Level 200

SharePoint Implementations in the Real World - Level 200

How Microsoft IT Plans and Optimizes an Enterprise SharePoint Infrastructure (Level 200)

Powering Productivity with SharePoint (Level 200)

Small Business Webcast: Create an Intranet SharePoint Site for Your Business (Level 100)

Put Team Collaboration in its Place: Developing An Enterprise Collaboration Strategy

Team Collaboration Technology Challenges

Connecting People, Teams, Knowledge, and Applications with SharePoint Portal Server

Delivering Collaboration Services to Information Workers: Extending SharePoint w⁄ Groove

Portal Scenarios for SharePoint Portal Server 2003

SharePoint Products and Technologies Overview

Microsoft Solution Enabler for Windows Media Broadcast



Infopath Integration
Case Study: Office InfoPath 2003 and Windows SharePoint Services (Level 100)

Introduction to Microsoft Office InfoPath 2003

Integrating InfoPath with SharePoint and Merging Forms - Level 300

SAP Integration

Easy Access and Analysis of SAP Information with Microsoft SharePoint Products and Technologies

Connecting SharePoint Portal Server 2003 With SAP

Easy Access and Analysis of SAP Information with SPPT (Level 200)

Exchange Integration
Migrating eRooms, Windows File Services and Exchange Public Folders to SharePoint - Level 300

Microsoft Business Solutions Webcast: Smart Messaging with Microsoft Exchange 2003, Office System 2003 and Windows SharePoint Services (Level 200)

Office 2003 Integration

Tips and Tricks Integrating Microsoft Office 2003 and SharePoint (Level 100)


Tips and Tricks for Microsoft Windows SharePoint Services (Level 200)

Tips and Tricks Integrating Microsoft Office 2003 and SharePoint (Level 100)

Microsoft Office System Webcast: Tips and Tricks for Working Better Together with Microsoft Office 2003 and Microsoft Windows SharePoint Services (Level 100)

Microsoft Office 2003: Instant Messaging and Alerts in Microsoft SharePoint

See how the Microsoft Office System can dramatically impact work productivity through collaboration

Microsoft Office Task Pane Integration and Customization



Customization
Customizing and Branding SharePoint (Level 300)

MSDN Webcast: Customizing and Branding SharePoint Portal Server and Windows SharePoint Services (Level 300)

Customizing Windows SharePoint Services (Level 100)

Developing Custom Microsoft SharePoint Solutions with Microsoft FrontPage

Extending and Customizing the SharePoint Site Application Infrastructure

FrontPage Customization of SharePoint Sites

FrontPage 2003 - Design - Code - Data

Microsoft FrontPage: Build XML Data-Driven Web Sites

Search
Enterprise Search with SharePoint Portal Server

Search Extensibility 1: Using Microsoft SharePoint Portal Server Search Technology

Search Extensibility 2: Extending the Reach of Microsoft SharePoint Portal Server Search Technology with Protocol Handlers and IFilters

MSDN Webcast: Extending and Enhancing the SharePoint Portal Server Search User Interface (Level 300)

Deployment
Deploying Microsoft SharePoint Products and Technologies

SharePoint Portal Server Infrastructure Implementation Best Practice - Level 300

SharePoint Performance and Capacity
Planning Best Practices and Lessons Learned (Level 300)


SharePoint Portal Server 2003: Deploying Shared Services - Level 300

SharePoint Portal Server 2003: Deploying as an Extranet - Level 300

10 Key Decision Points to Achieve an Outstanding SharePoint Deployment

https://www.mindsharp.com/Default.aspx?premium=Default&Roadmap= (Moving Server Farm)

SharePoint Backup and Disaster Recovery (Level 300)

SharePoint Performance and Capacity Planning Best Practices and Lessons Learned (Level 300)

SharePoint Portal Server 2003: Best Practices for an Implementation (Level 300

Migrating to SharePoint Portal Server 2003 - Level 300

SharePoint Portal Server 2003: Advanced Migration Scenarios (Level 300)

TechNet Webcast: Migrating Lotus Notes Applications to VS.NET, SQL Server, Exchange 2003, and SharePoint - Level 300

Web Parts
MSDN Webcast: Building SharePoint ASP.NET Web Parts

Best Practices for Developing and Deploying Web Parts for SharePoint Sites (Level 300)

Debugging, Packaging, and Deploying Web Part Applications

The Power of the Data View Web Part

Extending SharePoint through Web Parts and ASP.NET

Web Part Connections

Creating Web Parts with Connections

Coding and Using Web Part Connections for SharePoint Sites (Level 300)

How to Develop Web Parts for Microsoft SharePoint and Digital Dashboards Using Microsoft OfficeXP and ASP.NET

Handling the HTML Heavy Lifting Within Web Parts

Tell me If I'm mssing an important one?

ENJOY !!

Parag



Sunday, May 29, 2005

Yukon (SQL server 2005) webcasts

Yukon (SQL server 2005)
TechNet Webcast: SQL Server 2005 Technical Overview (Level 200)

TechNet Webcast: SQL Server 2005 Series (Part 1 of 10): Administration Tools

TechNet Webcast: SQL Server 2005 Series (Part 2 of 10): Monitoring Tools

TechNet Webcast: SQL Server 2005 Series (Part 3 of 10): Achieving Greater (Level 200)

TechNet Webcast: SQL Server 2005 Series (Part 4 of 10): Securing Your SQL Server (Level 200)


TechNet Webcast: SQL Server 2005 Series (Part 6 of 10): Managing Large Databases using Partitioning (Level 200)


Replication

MSDN Webcast: SQL 2005: Data Replication (Level 300)

MSDN Webcast: SQL 2005: Data Replication (Level 300)

MSDN Webcast: Introducing Replication in SQL Server 2005—Level 200

MSDN Webcast: Managing XML Data on the Database with SQL Server 2005 and Visual Studio 2005 (Level 300)

MSDN Webcast: Data Access with SQL Server 2005 Mobile Edition and the .NET Compact Framework v2.0 (Level 200)

MSDN Webcast: Native Data Access Technologies for SQL Server 2005 (Level 300)

Reporting
MSDN Webcast: Introducing Reporting Services for SQL Server 2005—Level 200

MSDN Webcast: MSDN Events Preview: End to End Data Reporting with SQL 2005 (Level 200)

High Availability
TechNet Webcast: A Technical Overview of SQL 2005 High Availability Features (Part 1 of 2) (Level 200)

TechNet Webcast: A Technical Overview of SQL 2005 High Availability Features (Part 2 of 2) (Level 200)

MSDN Webcast: Application Performance Tuning Using SQL Server Profiler 2005 (Level 200)

TechNet Webcast: SQL Server 2005 Beta 2: Using Database Mirroring for High Availability - Level 300

MSDN Webcast: Introducing Full-Text Search in SQL Server 2005—Level 200

MSDN Webcast: Introducing SQL Server 2005 Analysis Services for Developers—Level 200

MSDN Webcast: Introducing SQL Server Integration Services for SQL Server 2005—Level 200

T-SQL
MSDN Webcast: T-SQL Enhancements in SQL Server 2005—Level 200

MSDN Webcast: No, T-SQL "ISN'T" Dead: All About T-SQL in SQL Server 2005—Level 200

MSDN Webcast: T-SQL Exception Handling in SQL Server 2005 (Level 200)

Programming, Development and Management

MSDN Webcast: Overview of the new Developer features in SQL Server 2005—Level 200

MSDN Webcast: Best Practices For CLR Objects in SQL Server 2005—Level 200

MSDN Webcast: SQL Server 2005 as a .NET Runtime Host—Level 100

MSDN Webcast: Introducing Service Broker in SQL Server 2005—Level 200

MSDN Webcast: Introducing Web Services in SQL Server 2005—Level 200

MSDN Webcast: The New Security Model in SQL Server 2005—Level 200

MSDN Webcast: Introducing ADO.NET 2.0 for SQL Server 2005—Level 200

MSDN Webcast: SQL 2005: Integration Services (Level 300)

MSDN Architecture Webcast: Using Service Broker in SQL Server 2005 Express Edition for Reliable Service-Oriented Architecture (SOA) Implementations (Level 300)

MSDN Webcast: Introducing the New SQL Server Management Studio—Level 100

MSDN Webcast: Making the Most of Enterprise Hardware: SQL Server 2005 Data Transformation Services (Level 200)

MSDN Webcast: Making the Most of Enterprise Hardware: SQL Server 2005 Data Transformation Services (Level 200)

TechNet Webcast: Top 5 Design Techniques for Analysis Services—Level 200


XML Support
MSDN Webcast: Introducing XML in SQL Server 2005—Level 200

MSDN Webcast: Making the Most of XQuery with SQL Server 2005 (Level 300)

Others
MSDN Webcast: Challenges of Migrating from Oracle PL/SQL to Microsoft T/SQL – Level 200

Yukon – Smart Client

MSDN Webcast: Introducing SQL Server 2005 Express: Your Smart Client Data Store (Level 200)

MSDN Webcast: Developing Smart Client Applications Using SQL Server 2005 Native XML Support (Level 200)

MSDN Webcast: Improving Smart Client Performance Using MARS (Multiple Active Result Sets) in SQL Server 2005 (Level 300)

MSDN Webcast: Using Web Services To Connect to SQL Server 2005 from Your Smart Client Applications (Level 200)

SQL 2000
TechNet Webcast: SQL Server 2000 Common DBA Tasks - Level 200

MSDN Webcast: Application Tuning with SQL Server—Level 200

Sunday, May 15, 2005

MIT Open Courseware (OCW) - Mindblowing stuff

MIT Open Courseware Site

What an incredible concept... MIT, which can cost $40K annually, is giving away their content...

Check out the streaming video file of the CNN program on the MIT OCW Web site. These videos are in Real Player format at speeds of (220K) (80K) (56K).The videos are also highlighted on the MIT OCW homepage, and on the MIT OCW Media Coverage page.

Look at the sheer volume of courses and pages and mixed media types and binary files that are part of this site. It's not one of the largest content based sites onthe web, but it is a fun and creative one that is also extremely usable. And, it's powered by Microsoft Content Management Server 2002...


Thanks to Own Allen

Old but good Articles !!

Technology Decisions

Friday, May 13, 2005

Excellent tools for SharePoint !!

Check out these excellent New Tools for SharePoint..

SharePoint Skin

SharePoint Page ToolBar

SharePoint Status

ENJOY !!

Wednesday, May 11, 2005

Calling Win32 API in .net

Win32 API (Application Programming Interface) is a set of dlls, basically, predefined Windows functions used to control the appearance and behavior of every Windows element. Most commonly used ones are User32.dll, Kernel32.dll, Gdi32.dll, Comdlg32.dll etc... In .NET world it is UnManaged Code.In .NET we can call Win 32 API using platform Interop (P-Invoke) Services, which resides at System.Runtime.InteropServices namespace

Windows API calls were an important part of any programming model. Whenever possible, you should use managed code from the .NET Framework to perform tasks instead of Windows API calls. Before going through the trouble of and exposing yourself to the risk of calling Win32 APIs directly, make sure that the functionality you require is not already available in .NET. Some system event, for examples, can be accessed through the Microsoft.Win32 Namespace. Other functions are now an integral part of the .NET object model. That said, if you really do need to call the Win32 API, there are a few things to keep in mind:

Windows dynamic-link libraries (DLLs) represent a special category of interoperability. As mentioned earlier, Windows APIs do not use managed code, do not have built-in type libraries, and use data types that are different than those used with Visual Studio .NET. Because of these differences, and because Windows APIs are not COM objects, interoperability with Windows APIs and the .NET Platform is performed using platform invoke, or PInvoke. Platform invoke is a service that enables managed code to call unmanaged functions implemented in DLLs.

You can use PInvoke by applying the DllImport attribute to an empty procedure.
In C#, For example

public class Win32
{
[DllImport("User32.dll")]
public static extern Int32 FindWindow(String lpClassName,String lpWindowName);
}

For using any external function in .NET you have to declare that function in your program. In above statement we are trying to use FindWindow function of User32.dll. While declaring such a function we prefix extern keyword with that, which indicate that the declared function is an external function.

Some Good Artciles
Consuming Unmanaged DLL Functions

.NET Interoperability: .NET ↔ Win32

Working with Win32 API in .NET

Microsoft Win32 to Microsoft .NET Framework API Map

.NET interop marshaling made easier

Calling Windows APIs

Platform Invocation Services in .NET Framework

PINVOKE.NET

A Win32 Library for .NET

Hope that was intresting

Sunday, May 01, 2005

Some intresting News !!

Adobe Buys Macromedia for $3.4 Billion

Longhorn to 'Sparkle' With New Developer Tool

Microsoft Goes After PDF with 'Metro'

Thanks to Patrick Tisseghem

Live Communications Server 2005 Service Pack 1 for Standard and Enterprise Editions

Live Communications Server 2005 Service Pack 1 for Standard and Enterprise Editions

Microsoft Office Live Communications Server 2005 with SP1 further improves business efficiencies by enabling information workers to communicate and share presence information with contacts in real time, through a security enhanced, enterprise-grade, integrated environment.

Overview
Live Communications Server 2005 SP1 improves on the features of Live Communications Server 2005 by extending the federation model, enhancing functionality, increasing security, and improving performance and infrastructure support. These improvements include:
Tools to enable Public IM Connectivity; the ability to add contacts, send instant messages, and share presence information with users of the three main public IM service providers MSN, AOL and Yahoo!.
Enhanced federation, which uses DNS-SRV resolution to simplify connecting to federation partners.
New optional spim filters for better control of unsolicited instant messages.
Support Microsoft Office Communicator 2005.
Support for multiple tree Active Directory forests.
Improved server API performance. You can get specific information about this update in the Microsoft Knowledge Base article (897690): Description of Live Communications Server 2005 Service Pack 1. Live Communications Server 2005 SP1 is available in two editions: Standard Edition and Enterprise Edition.Live Communications Server 2005 SP1 for Standard EditionDownloadable file name: LCS2005_SE_SP1_Upgrade.exe. Consists of single, stand alone IM and presence server together on the same computer with an MSDE (Microsoft Desktop Engine) database for storing user data. It supports up to 15,000 concurrent users and is the appropriate choice in small deployments where enterprise-level capacity, availability and performance are not required.Live Communications Server 2005 SP1 for Enterprise EditionDownloadable file name: LCS2005_EE_SP1_Upgrade.exe.Consists of a pool of servers connected to a separate, shared SQL Server database that supports up to 100,000 users. This two-tier architecture, delivers substantial improvements in availability, scalability, and performance than the Standard Edition.

Note:
This upgrade is only for the English version of Live Communications Server 2005 Enterprise or Standard Editions.

This service pack will not support the upgrading of MSDN versions of Live Communications Server 2005 Enterprise or Standard Editions.
In order to update to Live Communications Server 2005 with SP1, you must update all servers within your Live Communications Server 2005 topology.
Public IM Connectivity requires a per-user; per-month subscription license that is in addition to the Live Communication Server Client Access License (CAL).
System Requirements
Supported Operating Systems: Windows Server 2003

This service pack requires the following program: Fully licensed version of Microsoft Office Live Communications Server 2005 Enterprise or Standard Edition.
Client Software Requirements: While Windows Messenger 5.1 supports basic presence and IM scenarios, the recommended client for Live Communications Server 2005 and public IM connectivity is Microsoft Office Communicator 2005. For more information, visit http://www.microsoft.com/office/livecomm/prodinfo/default.mspx

Instructions

To help ensure that you have access to and can use the most updated product documentation while planning, deploying, and maintaining your Live Communications Server environment, this download does not contain copies of the product documentation. To download and use the most recent documentation, please visit the Live Communications Server deployment resources center at http://www.microsoft.com/office/livecomm and click the link to the specific product documentation that aligns with your deployment phase. To install this download: Prior to installing this download, you must install all Security Patches from the Microsoft Windows Update site.
Download the appropriate file(s) by clicking on the links below and saving the file(s) to your hard disk.
Read the release notes for SP1 to ensure a successful SP1 installation.
Double-click the program file on your hard disk to extract the Live Communications Server 2005 SP1 Upgrade files.
From the directory where you extracted the files, go to \Setup\I386 and start the Setup program.
Follow the instructions on the screen to complete the installation. To remove this download: To remove the download file(s), delete the files LCS2005_SE_SP1_Upgrade.exe or LCS2005_EE_SP1_Upgrade.exe. To uninstall the software involves performing two steps on the Live Communications Server software: deactivate and uninstall. These steps are outlined in detail in the Live Communications Server Deployment Guide available at http://www.microsoft.com/office/livecomm.

Windows SharePoint Services SP2 in R2

Overview: Windows SharePoint Services 2.0 SP2 Beta in Windows Server 2003 R2

Overview
This document details the new features available in Windows SharePoint Services 2.0 SP2 beta, which is part of Windows Server 2003 R2. This version of Windows SharePoint Services 2.0 SP2 is available in Windows Server 2003 R2 Beta2, RC0, RC1 and RTM. The document describes how to configure and test the new features, as well as any workarounds which are required to enable them.


Intresting Updates

Support for IP-bound virtual servers
Support for advanced extranet configurations
Kerberos enabled by default
Windows SharePoint Services running on ASP.NET 2.0 (Whidbey)
Windows SharePoint Services support for Windows x64 editions

First look at IIS 7.0

check this out:
http://blog.coryisakson.com/CategoryView,category,IIS%207.0.aspx

Parag

Wednesday, April 27, 2005

Live Communications Server 2005 Webcasts

Introduction to Live Communications Server 2005 - Overview of Real-Time Collaboration and Presence (Microsoft Executive Circle)

Unlock Real-Time Communication in the Enterprise with Failover and Scalability in Live Communications Server 2005 EE (Level 300)

Develop Enterprise Communication with Live Communications Server 2005 and SIP (Level 300)

Maximizing Security Features within Microsoft Office Live Communications Server 2005 (Level 300)

Enable Real-Time Communication with Live Communications Server 2005 and Public IM Connectivity (PIC) (Level 200)

Using Live Communications Server 2005 Technical Troubleshooting Tools and Resource Kit (Level 200)

Live Communications Server and Windows Messenger: Architecture and Automation (Level 300)

How Microsoft IT Deployed Office Live Communications Server 2005 (Level 200)

Real-time Collaboration and Secure Instant Messaging with Office Live Communications Server 2005 (Level 200)

Web Based Conferencing Solutions for Team Collaboration (Microsoft Executive Circle )

Sunday, April 24, 2005

XML DataSource Controls in .NET 2.0

XML DataSource Controls in .NET 2.0 by Jesse Liberty -- With .NET 2.0's XML DataSource control, you can bind to an XML document just as easily as you bind to tables in a database. If the XML document you load is hierarchical, the data is exposed hierarchically, which makes it ideal for mapping an XML document to a TreeView control. Jesse Liberty explains how the XML DataSource works in ASP.NET.

Friday, April 22, 2005

Microsoft's Expanding Collaboration Strategy

Collaboration Software
Collaboration Software is sophisticated software to organize team work over the web. Collaboration software solutions offer the ability to communicate complex information within groups and to customers, to organize thoughts and ideas, and to manage information for meetings, presentations, projects, proposals, research, contacts, etc.

Project management tools automate and simplify task management, while web conferencing tools such as screen sharing, instant messaging and polling enable instant real-time collaboration regardless of where each of your team members are located. So your team can work with resources outside your organization as effectively as if they were down the hall.

Please check out some good articles on Microsoft Collaboration Platform
Microsoft's Expanding Collaboration Strategy !!

Microsoft's varied collaboraboration platform strategies !!

Enterprise Collaboration - It's time to consider a platform !!

Optimizing Collaboration and Communications using Microsoft Technologies !!

Team and Enterprise Collaboration Platform !!

Monday, April 18, 2005


Hey that's me !!

Deploying SharePoint Portal Server 2003 on extranet – My Findings

The purpose of this article is to outline the alternative approaches that can be taken to make SharePoint Portal available on extranet.

SharePoint Portal Server provides a great way of sharing data with employees at remote offices, suppliers, partners or anyone else who needs access to private data through an extranet. However, before you can make SharePoint workspaces available through an extranet, there are some security settings that need to be taken care of.

By default, SharePoint is set to use NTLM authentication. Although NTLM is the best choice for authentication, it may be impractical in some environments. For example, you may have users in remote offices who need to access SharePoint data, but who aren’t using Windows machines.

Though SharePoint is designed inherently for Intranets, there are many ways in which I can configure SharePoint for extranet access. However a lot would depend on the current configuration settings and security requirements.

Alternate Access Mappings.
Basically, alternate access mappings are a table which states which URL to use in which scenario. There is default, intranet, extranet, and custom URLs.
Open up SharePoint Portal Server Central Administration and click on the Configure Alternate Portal Access Settings.

On that page, edit your existing SharePoint portal mapping and add your extranet URL. You need to make sure when creating portals not to use your extranet URL as the default URL for the portal.

You can deploy SPS 2003 with or without SSL, but I would strongly recommend using it along with MS ISA 2004.

If you are NOT using SSL…………

If you are NOT using SSL (you should), then after configuring the Alternate Access Settings, add any additional mappings you need – exchange, other intranet URLs, etc. Then make sure DNS is configured properly to point the extranet URL to your SPS box and make sure there are no host headers setup on the Virtual Server in IIS manager.

Also be sure that you have a port rule setup on your router to allow port 80 traffic to pass to your SharePoint Portal Server machine.

If you are using SSL…………

If you are using SSL, then u need (at least) 2 different physical servers hosting the same portal. One for intranet and other for extranet. If u do it this way intranet users will be authenticated automatically based on their windows credentials but extranet users will have to enter their credentials. In most cases you would basic authentication for the server over SSL.

Why you can not use SSL (Secure Sockets Layer) with Host Headers?
When a client requests a "Web site" by using Secure Hypertext Transfer Protocol (HTTPS) over Transport Layer Security (TLS) or over SSL, the HTTP header with the HOST field is contained in the encrypted part of the packet. Therefore, the Web server cannot decrypt the host-header name to determine which Web site the client requested. For this reason, when you use SSL connections, you cannot use host headers as the primary means of identifying a Web site.

To configure https access, you must first setup an additional virtual server in IIS manager.

Open IIS manager and browse to Web Sites, then right-click New -> Web Site. Follow through the wizard changing the port to something that isn’t currently in use and make sure to pick a path that is not the same as the Portal’s current path (something like c:\Inetpub\wwwroot\https).
Right-click on the newly created Virtual Server and choose properties.
Go to Directory Security and click server certificate. Import or request a certificate for this virtual server. Now, test the newly created Virtual Server by opening it in IE. You will probably get an HTTP 403/Forbidden.

This is OK because you don’t have any content in your site yet, but does show that https is working.

For more information about obtaining and installing SSL certificates, see:
Obtaining and Installing Server Certificates in the IIS 6.0

Once you have verified that the Virtual Server works, you need to extend it to connect it to your portal.

Open SharePoint central administration. Click on the “Extend an existing virtual server …” link. Select the newly created HTTPS Virtual Server.

Click Extend and map to an existing Virtual Server link.

This will tell the new Virtual Server to use the same information and configuration database as the existing virtual server, basically allowing users to access the same portal from two different access points.

Choose the portal your want to map to and choose to use an existing Application Pool and choose MSSharePointPortalAppPool. Then click OK to finish the extending process.

If you want (You should) create your application pool for use with this site. Just Go to IIS Manager, Right Click Application Pools, Create New one with your choice of name and leave the rest to defaults. Then go to the newly created web site and from Home Tab, change application pool to whatever App pool you’ve just created. Hit iisreset..

Now We just have to setup alternate access settings, so go back to Central Administration and click “Configure Alternate Access …”. Edit the existing mapping name. If you are using the https site as the extranet url, then enter it into the extranet section. If you already have an extranet access URL, then use the custom URL field.

Now, open your https site (http://test-server.domain.com in my case) in IE to make sure the portal loads and you see the lock (SSL) in IE.

That's it..

Lastly we can use MS Internet Security and Acceleration (ISA) Server 2004. This is the recommended approach.

Following is a list of whitepapers/Articles available from Microsoft which discusses this issue in great details.
SharePoint Portal Server 2003 Document: Deploying on an Extranet by Using ISA Server 2000 and ISA Server 2004


Reverse Proxy Configurations for Windows SharePoint Services and Internet Security and Acceleration Server

Enabling Secure Sockets Layer for SharePoint Portal Server 2003

Enabling Client Certificates and Using Client Certificates When Crawling Content with SharePoint Portal Server 2003

There are webcasts available from Microsoft, you should view it.
SharePoint Portal Server 2003 - Deploying as an Extranet

Enabling Web and SharePoint Applications on the Internet with ISA Server 2004 - Demo 1: Publishing Web Sites with ISA Server 2004

Microsoft SharePoint Products and Technologies Resource Kit has step by step setup instruction. Great resource !!

Other Resources
Tips for a Successful SharePoint Portal Server Extranet Deployment

Configuring SharePoint Portal Server for Extranet Access

SharePoint Portal Server and SSL (Bill English)

ENJOY !!