hgssoauthentication / README

Mercurial SSO Authentication
============================

This mecurial extension allows you to use single sign-on authenticate with
web servers that use NTLM or kerberos authentication.

Either the kerberos or sspi (from pywin32) python packages have to be
available in your mecurial installation. 

I tested it with
::
    Windows client -> Windows Server (with mod_auth_sspi)    (works)
    Ubuntu client  -> Windows Server (with mod_auth_sspi)    (doesn't work)
    Windows client -> Ubuntu Server (with mod_auth_kerb)     (works)
    Ubuntu client  -> Ubuntu Server (with mod_auth_kerb)     (works)

Installation
------------

To use this extension simply add it to your mercurial.ini like this:
::
    [extensions]
    hgssoauthentication=c:\path\to\hgssoauthentication.py

Example Apache Configuration
----------------------------

mod_auth_sspi
::
    AuthName "My Login"
    SSPIAuth On
    SSPIAuthoritative On
    SSPIDomain mydomain.com
    SSPIOfferBasic Off
    SSPIOmitDomain On
    SSPIUsernameCase lower
    Require valid-user

    
mod_auth_kerb
::
    AuthName "My Login"
    AuthType Kerberos
    Krb5Keytab /etc/apache2/http.keytab
    KrbMethodK5Passwd off
    KrbAuthRealms MYDOMAIN.COM
    KrbVerifyKDC on
    Require valid-user
    
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.