Category Archives: Application Development

Your Vote Matters in Affecting Technology!

I’m not one to jump on the soapbox, well not usually ;), but SOPA/PIPA and other bills written as Anti-Piracy laws really threaten Internet freedoms.  Politicians are paying far too much attention to the rights of corporations than they are to the rights of the people and that’s just not right… er… so to say.

Please vote and let politicians that back half-baked bills such as SOPA/PIPA, get it right.  Did you know sponsors of SOPA/PIPA only caved in the last hour due to Internet outrage, … koff… Marco Rubio (from what I heard! It may not be true), and don’t really understand the technology or the ramifications of the tech laws that they are attempting to pass.

Rant over. 🙂

Team Foundation Server 2010 Installation Experiences and Lessons Learned

Do it right the first time! 🙂

There’s quite a few posts on Team Foundation Server 2010 (TFS) and how to install and configure it, as well as a really good CHM file from Microsoft on the same topics, so I won’t go through duplicating what everyone else has done and will link to one at the bottom of this post.  I’m writing this just to relay the experience I had with getting the product configured just the way I wanted it, or some facsimile thereof and some lessons learned.

 tfs001

After viewing some videos on YouTube of TFS, reading some of the Microsoft marketing material, and some of the posts on it, I decided to stand up TFS in my environment to see how well it works and to explore changes since the last version.  Right now, the team I lead isn’t really using any ‘set’ collaborative product.  We tend to work in small teams on projects so the need isn’t really there, though I’m sure the organization wouldn’t hurt.  We’re currently using Subversion as our source repository and occasionally use MOSS or WSS to collaborate.  Otherwise it’s phone calls and emails since we also tend to bounce around the country.  Enough background, on to TFS installation…

After reading through a few blog posts and Microsoft’s documentation on how to install and configure TFS, I stood up a Windows Server 2008 R2 VM and installed SQL Server 2008.  I was going with a single server install.  I followed the documentation to the letter for a single server install, and everything worked out just fine.  WONDERFUL!  GREAT!  So far…

Continue reading Team Foundation Server 2010 Installation Experiences and Lessons Learned

The iPad, to wreak havoc on current tech?

Havoc Hav"oc, v. t. To devastate; to destroy; to lay waste. [1913 Webster]

I’ve seen some really negative reviews on the iPad and it’s potential and feature set. I’ve talked to some friends about it, mostly PC users, that are less than thrilled with what the iPad has to offer.  I can understand people potentially not wanting to go out and jump on the boat immediately due to costs, but the shortsightedness of the negative reviewers never ceases to amaze me.

iPad001

Continue reading The iPad, to wreak havoc on current tech?

Windows Server 2008 and Subversion over HTTPS

Here’s the scenario, I decided to try out Subversion as a source control repository on a Windows Server 2008 server, attached to a Win Server 2008 domain, with ISA Server forwarding HTTP traffic.  After doing a little bit of research, I decided to give VisualSVN Server a try.  If you don’t know it, it’s a very small footprint product produced by VisualSVN Limited, that installs Subversion and an Apache server, on Windows, to handle the HTTP connection to SVN (Subversion).

The product installed and configured very easily, ‘hats off’ to VisualSVN, and I was immediately able to connect to it from internal on my network.  There are a few self-explanatory questions that are posed in the installation wizard.  Tough things like where do you want to store your repositories. ;)  (If you’re going to use a file share as a repository, make sure that you use the UNC and not a mapped drive.)

websiteshot

I’m amazed that I’ve come across yet another tech product that is actually behaving as advertised.  Is it just me, or is that odd???

Not the fault of VisualSVN, I began to run into configuration issues when I tried to route the traffic through ISA Server.

Keep Reading…

Continue reading Windows Server 2008 and Subversion over HTTPS

Build a Windows Server 2008 R2 Domain Controller

I posted a tutorial on creating a domain controller using Windows Server 2003, and decided to post an update that included step-by-step instructions for Windows Server 2008 R2.  This should be the same for Windows Server 2008.

This is great for developers, testers, and anyone looking to learn Active Directory or deploy to a small network.  If this is for a production deployment, you might want to bring in a professional to help you.  There are many other things to consider, like ‘hardening’ your server and setting up Group Policy.  Having an insecure or unprotected domain controller is inviting havoc on your network.

So without any further ado and in the immortal words of ‘Marv’, “Let’s get to it!”

In the Server Manager click on Add Roles.

001 

Keep reading…

Continue reading Build a Windows Server 2008 R2 Domain Controller

Run MOSS Against Multiple Active Directories

One of the great new features that MOSS introduced, was an easy way to have the same information shared between multiple portals/sites.  By extending your web applications, you can have separate authentication providers utilized to reach the same information using Forms Based Authentication (FBA).  FBA is usually associated with a custom SQL server database, or some other authentication mechanism, however you can use it to provide AD services as well.

Since implementing FBA in MOSS is pretty well documented already, I won’t go down that route, but just tell you what needs to be changed for it to work with Active Directory (AD).  If you need an article that talks about FBA specifically, try this one:
http://www.devcow.com/blogs/jdattis/archive/2007/02/23/Office-SharePoint-Server-2007-Forms-Based-Authentication-FBA-Walkthrough-Part-1.aspx.  This article assumes you have implemented FBA already or know how to, and just need the specifics for the ADMembershipProvider.

This article also assumes that you have extended a web application to use FBA.  Though there is nothing preventing you from using this on a primary web application and not using an extended web application, I use the term ‘extended web application’ to mean the web application that you want to set up for FBA.

In the extended web application’s web.config file, change the connectionString element to:

<connectionStrings>
<add name=”ADConnectionString” connectionString=LDAP://[ldapquery]/>
</connectionStrings>

I placed this node between </configSections> and <SharePoint>.

The next change is to the membership node and should read:

<membership defaultProvider=”ADMembershipProvider”>
<providers>
<add
name=”ADMembershipProvider”
type=”System.Web.Security.ActiveDirectoryMembershipProvider,
System.Web,Version=2.0.0.0,
Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”
connectionStringName=”ADConnectionString”
connectionUsername=”[accountName]
connectionPassword=”[password]
enableSearchMethods=”true”
attributeMapUsername=”sAMAccountName” />
</providers>
</membership>

This node, I placed between <sessionState … /> and </system.web>.  Please make sure that the ‘type’ line is properly formatted XML as this post may not display properly.  Put type=”…” all on one line.

Make sure to replace [ldapquery], [accountName], and [password] with the information specific to your AD.  You can even change sAMAccountName as the attributeMapUsername to another field in your AD if that is appropriate.  Your domain administrators will be able to help you with the LDAP query if you aren’t familiar with the technology or the domain’s structure.

You’ll also need to change the nodes in the Central Administration web.config and change the authentication provider at Central Administration > Application Management > Authentication Providers (all of which you should have touched with doing a typical FBA configuration).

Infrastructure Requirements:

  • the account used above should have ‘read’ permissions on the directory (a standard user account will usually work.)
  • the appropriate firewall ports will need to be open if traveling outside of the local network – port 389 by default.

Again, this article assumes that you know what you’re doing with MOSS and FBA and just need the specifics for the AD integration.  I had a hard time finding that information at the time, so I decided to post it here.  If you have any questions, post them into comments and I’ll get them answered ASAP.

Create an ISO From Any Folder On Your Windows Computer

Today I was building a VM in VMware VI3 (ESX), one that was completely isolated from my network and I realized that one of the pieces of software that I wanted to install was in a folder on a share.  Since this system was on an isolated virtual switch (vswitch), I realized that I had no way to get the folder of software to the guest system.

At that point I started considering my options, change the vswitch that the system was on and re-IP’ing, some other complicated file copy operation, burn the software to CD and place it in the server or my local CD-ROM for mounting… and a lot of silly other methods that either would have been to dirty to try or would fail outright.  Then I remembered that there is software out there that will allow you to create ISO’s from whatever folders on your computer.

I started browsing those software packages and was really not satisfied as I didn’t want to install any new software for this one-time thing on my system.  I remembered OSCDIMG.exe.

OSCDIMG.exe is a command-line utility that allows you to create an ISO from any folder on your file system, or any folder that the command line can gain access to.  No software to install, a few options that are configurable, like being able to use longer filenames, the source or source folder, and the target file (.iso).  What could be easier?  Check it out!

oscdimg

Apologies, but as this file is an executable (.exe extension) I will not host it on my blog.  I’m also not sure about the usage and redistribution rights.  Google’s your best friend here.  Search for OSCDIMG.EXE DOWNLOAD.  If you can’t find it there, I believe it’s one of the tools included in the Windows Server 2003 Resource Kit.

Windows PowerShell sticker, and /n Software for free

So after following a link from a buddy’s blog, Bobby Shea, I started browsing around /n software’s web site. I filled out the form for a free Windows PowerShell Sticker, again – yes, they didn’t send it months ago the first time I tried, and I found something else interesting on their site.

Months ago, the first time I visited /n’s site, I downloaded a trial version of Netcmdlets.  Netcmdlets is /n’s PowerShell snap-in that extends PS into remoting, SSH, and other network protocols.  I ended up uninstalling the software after the trial was over.  Now, the software is FREE for hobbyists!  Since I’m not using PowerShell for work with clients, restricting my PS activities to my home network and ‘playing around’, I’m qualified as a hobbyist!  I’m on my way to download right now!

If you’re not familiar with NetCmdlets, you should definitely check out the site, the description, fill out the form for your sticker and keep your fingers crossed, then download the hobbyist version, unless you’re planning on using it commercially in which case, pay /n some money. 🙂

A quick list of the features, taken from the /n site are:

Device Management SNMP device monitoring and management capabilities, complete with SNMPv3 Security.
Remote Access Secure Shell enabled remote execution using Rexec, Rshell, or SSH.
Directory Administration Access Active Directory or OpenLDAP servers through LDAP Directory Access.
Email Send & Receive Send HTML Emails or Emails with file attachments. Retrieve Email through POP or IMAP Connectivity.
File Transfer File transfer capabilities through FTP, TFTP, & RCP connectivity.
Instant Messaging Jabber Instant Messaging, SMS messaging, and Alphanumeric Paging.
Network Monitoring Listen and react to SNMP Traps and Syslog event messages or access raw Ethernet Packet captures.
Access to Web Services Connect to web services through HTTP and RSS client capabilities.
DNS Configuration Monitor DNS and other network configuration changes.
Encoding / Decoding A complete array of utility encoding and decoding capabilities including MIME, UUEncoding, URL, Hex, etc.
Zip Compression File compression including password protection, AES Encryption, and 4GB+ archive support.

This is really good stuff, at a great price, free!  Check it out.  If you type instead of click, and you know who you are, you really need these tools.

/n software inc. – Show your support for Windows PowerShell!

IIS Can Manage Multiple Web sites on Port 80 with a single IP address

Host Headers are the answer!

YES!  IIS can manage multiple web sites on the same port (properly port 80) without having to do extraneous configuring.  This can even be done with MOSS and WSS implementations.

I’ve always considered it to be common knowledge that ‘host headers’ could be used to allow IIS to handle multiple web sites on the same IP and port.  Lately I’m finding out that some very smart people are completely unaware of this fact, so I decided to blog about it.

Configuring it for basic site usage:

– Open IIS (Start > Run > inetmgr). 

– Expand the <server> node, and expand the Web Sites node.

iis01

– Right-Click on the web site that you want to edit and choose Properties.

– On the Web Site tab in the Web site identification area, click on Advanced.

– The top area titled ‘Multiple identities for this Web site’ will allow you to add host headers, modify IP address usage within IIS, and modify the non-SSL ports.

iis02  iis04

The host header value will cause IIS to route requests that are directed to the specific host header to that specific web site.

You can and should use this to facilitate development and production deployments within IIS.  If host headers are not used, then the only other way to assign multiple sites using the same port (80) to a single web server is to assign multiple IP addresses.  There is no reason to do that.  A single IP address can be used to route your sites and to state once more, this can be used with MOSS and WSS web applications. 

For MOSS deployments, when creating a web application you can assign a host header and MOSS will configure IIS accordingly.  If your web applications are already created and you want to host them on a new port (80) using host headers, you should be able to make the changes directly within IIS to manage this.  Make sure you leave the original entries in IIS so that no URL’s break, but you should now be able to route through IIS on port 80 to your web application.  Please post any environment specific questions and I’ll answer as I can.

Hope this helps some people out.

And please note, this does not apply for SSL (HTTPS) sites.  SSL does not support multiple sites on the same port and IP address due to the way encryption and certificates are managed.

Tutorial: Creating A MOSS Development Environment Part III – VS.NET Installation

Welcome back and onto part III of this installation guide.  This installment will document installing Visual Studio .NET 2008 and also discuss the additional software that is advised to facilitate MOSS development.

Parts one and two can be found here:

Tutorial: Creating A MOSS Development Environment Part I – SQL Server Installation
Tutorial: Creating A MOSS Development Environment Part II – MOSS Installation

If you’re following along, great, and if you’re just coming across this entry because you wanted a sample of the software to install in the environment to facilitate development, that’s great too.  I hope this entry helps.  Installing Visual Studio .NET is pretty straight forward, the only thing I do different than the standard install is change the installation path, and remove SQL Express since we installed that during step one, so before I move onto documenting that, I’ll list the software that I add to development environments.

Software to add to your MOSS Development Environments

BDC Metadata Manager
Fiddler HTTP Debugger
Internet Explorer Developer Toolbar
Lutz Roeder’s .NET Reflector
PowerShell
Microsoft Office 2007
SharePoint Designer
Visual Studio 2008 Extensions for Windows SharePoint Services (VSeWSS)
Visual Studio 2005 Tools for the 2007 Microsoft Office System (VSTO)
WSS 3.0 SDK
MOSS 2007 SDK

From the above software list, everything is either included with your MSDN License (hopefully you have one) or available as a free download, with the exception of BDC Metadata Manager.  However for BDC Meta Man, you can download a light-weight free version of the product that will allow you demonstrate functionality.

Continue reading Tutorial: Creating A MOSS Development Environment Part III – VS.NET Installation