<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="/topics-files/atom2xhtml.xsl" type="text/xsl"?>
<!-- This is a 512 byte XML comment that one must put into XML Atom feeds
such that browsers like Firefox 2.0 and IE7 will obey the XSL stylesheet.
Everybody hates overbearing browsers.
This is a 512 byte XML comment that one must put into XML Atom feeds
such that browsers like Firefox 2.0 and IE7 will obey the XSL stylesheet.
Everybody hates overbearing browsers.
This is a 512 byte XML comment that one must put into XML Atom feeds
such that browsers like Firefox 2.0 and IE7 will obey the XSL stylesheet.
Everybody hates overbearing browsers.
This is a 512 byte XML comment that one must put into XML Atom feeds
such that browsers like Firefox 2.0 and IE7 will obey the XSL stylesheet.
Everybody hates overbearing browsers.
This is a 512 byte XML comment that one must put into XML Atom feeds
such that browsers like Firefox 2.0 and IE7 will obey the XSL stylesheet.
Everybody hates overbearing browsers.
This is a 512 byte XML comment that one must put into XML Atom feeds
such that browsers like Firefox 2.0 and IE7 will obey the XSL stylesheet.
Everybody hates overbearing browsers. -->
<feed xmlns="http://www.w3.org/2005/Atom"
><title
>Blog@Case Topics: cas</title
><link rel="self" href="http://blog.case.edu/topics/cas"
 /><id
>http://blog.case.edu/topics/cas</id
><category term="cas" label="cas"
 /><link rel="related" href="http://blog.case.edu/topics/sso" title="sso"
 /><link rel="related" href="http://blog.case.edu/topics/single%20sign%20on" title="single sign on"
 /><link rel="related" href="http://blog.case.edu/topics/linkblog" title="linkblog"
 /><link rel="related" href="http://blog.case.edu/topics/case%20it" title="case it"
 /><link rel="related" href="http://blog.case.edu/topics/mainblog" title="mainblog"
 /><link rel="related" href="http://blog.case.edu/topics/openid" title="openid"
 /><link rel="related" href="http://blog.case.edu/topics/identity%20management" title="identity management"
 /><link rel="related" href="http://blog.case.edu/topics/web" title="web"
 /><link rel="related" href="http://blog.case.edu/topics/open%20source" title="open source"
 /><link rel="related" href="http://blog.case.edu/topics/web%20services" title="web services"
 /><link rel="related" href="http://blog.case.edu/topics/google" title="google"
 /><contributor
><name
>Gregory Szorc</name
><email
>gregory.szorc@case.edu</email
><uri
>http://blog.case.edu/gps10</uri
></contributor
><contributor
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></contributor
><contributor
><name
>Barry Lukoff</name
><email
>barry.lukoff@case.edu</email
><uri
>http://blog.case.edu/barry.lukoff</uri
></contributor
><updated
>2008-02-22T21:55:36Z</updated
><entry
><title
>How do you use Single Signon on a IIS web site?</title
><link href="http://blog.case.edu/barry.lukoff/2009/10/28/how_do_you_use_single_signon_on_a_iis_web_site"
 /><id
>http://blog.case.edu/barry.lukoff/2009/10/28/how_do_you_use_single_signon_on_a_iis_web_site</id
><published
>2009-10-28T14:57:55Z</published
><updated
>2009-10-28T15:21:28Z</updated
><category term="Active" label="Active"
 /><category term="CAS" label="CAS"
 /><category term="Directory" label="Directory"
 /><category term="IIS" label="IIS"
 /><category term="SSO" label="SSO"
 /><category term="SSO" label="SSO"
 /><category term="Signon" label="Signon"
 /><category term="Web" label="Web"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>Platform: IIS 6 running on Windows Server 2003 SP2 Using ASP.NET built-in functionality, you can control access to your web site using Single Signon (SSO), also called CAS. When the web page loads, you validate the browser has a valid ticket, created by SSO. The Case Network ID then be used for authentication in Active Directory.</div
></content
><author
><name
>Barry Lukoff</name
><email
>barry.lukoff@case.edu</email
><uri
>http://blog.case.edu/barry.lukoff</uri
></author
></entry
><entry
><title
>Zero Sign On</title
><link href="http://blog.case.edu/jeremy.smith/2008/02/22/zero_sign_on"
 /><id
>http://blog.case.edu/jeremy.smith/2008/02/22/zero_sign_on</id
><published
>2008-02-22T18:53:37Z</published
><updated
>2008-02-22T21:55:36Z</updated
><category term="Web Services" label="Web Services"
 /><category term="cas" label="cas"
 /><category term="identity management" label="identity management"
 /><category term="linkblog" label="linkblog"
 /><category term="openid" label="openid"
 /><category term="single sign on" label="single sign on"
 /><category term="sso" label="sso"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>
<p>
<a title="Dr Nic : Zero Sign On - 1 better or Infinitely better than Single Sign On?" href="http://drnicwilliams.com/2008/02/22/zero-sign-on-with-client-certificates/">Zero Sign On - Better than Single Sign On?</a>
</p>
<p>We've talked about doing this here with 
<a href="http://wiki.case.edu/CAS">CAS</a>.</p>
</div
></content
><author
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
><entry
><title
>Google Apps at Case</title
><link href="http://blog.case.edu/jeremy.smith/2007/07/20/google_apps_at_case"
 /><id
>http://blog.case.edu/jeremy.smith/2007/07/20/google_apps_at_case</id
><published
>2007-07-20T21:23:11Z</published
><updated
>2007-07-20T21:24:33Z</updated
><category term="cas" label="cas"
 /><category term="google" label="google"
 /><category term="googleapps" label="googleapps"
 /><category term="linkblog" label="linkblog"
 /><category term="openid" label="openid"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>
<a title="GoogleApps/FAQ - CaseWiki" href="http://wiki.case.edu/GoogleApps/FAQ">GoogleApps@Case</a> Once I found out about 
<a title="Jeremy Smith's blog: Using " google="" apps="" for="" at="" case="" href="http://blog.case.edu/jms18/2006/08/30/using_google_apps_for_education_at_case_western">the CAS integration</a>, I was sold. And, yes, I plan on rolling this in to 
<a title="ONLamp.com -- CAS : Single Sign-On with Jifty (Part 1)" href="http://www.onlamp.com/pub/a/onlamp/2007/05/31/cas-single-sign-on-with-jifty.html">CAS+</a> as soon as I finish 
<a title="Jeremy Smith's blog: CAS " href="http://blog.case.edu/jms18/2007/06/01/cas">rolling in OpenID</a>.</div
></content
><author
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
><entry
><title
>RubyCAS Server</title
><link href="http://blog.case.edu/jeremy.smith/2007/06/04/rubycas_server"
 /><id
>http://blog.case.edu/jeremy.smith/2007/06/04/rubycas_server</id
><published
>2007-06-04T20:47:59Z</published
><updated
>2007-06-04T20:48:37Z</updated
><category term="cas" label="cas"
 /><category term="linkblog" label="linkblog"
 /><category term="ruby" label="ruby"
 /><category term="single sign on" label="single sign on"
 /><category term="sso" label="sso"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>
<a title="rubycas-server - Google Code" href="http://code.google.com/p/rubycas-server/">RubyCAS-Server</a> Apparently rewriting 
<a title="Jeremy Smith's blog: CAS " href="http://blog.case.edu/jms18/2007/06/01/cas">CAS servers in a non-Java language</a> is gaining popularity.</div
></content
><author
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
><entry
><title
>CAS+</title
><link href="http://blog.case.edu/jeremy.smith/2007/06/01/cas"
 /><id
>http://blog.case.edu/jeremy.smith/2007/06/01/cas</id
><published
>2007-06-01T20:58:21Z</published
><updated
>2007-06-01T21:01:04Z</updated
><category term="cas" label="cas"
 /><category term="mainblog" label="mainblog"
 /><category term="open source" label="open source"
 /><category term="openid" label="openid"
 /><category term="single sign on" label="single sign on"
 /><category term="sso" label="sso"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>
<p>
<a title="ONLamp.com -- CAS : Single Sign-On with Jifty (Part 1)" href="http://www.onlamp.com/pub/a/onlamp/2007/05/31/cas-single-sign-on-with-jifty.html">CAS+</a>
</p>
<blockquote>
<p>I decided to implement my own CAS server using the CAS Protocol Specification on the CAS web site for a few reasons:</p>
<ul>
<li>
<strong>I do not like Java</strong> very much and I like J2EE servers even less. If you like Java and J2EE, I don't mean any offense. It's just not my preference (for both logical and purely emotional reasons).
<br /></li>
<li>
<strong>I cannot host Java</strong> web applications on my web host, and I like my web host too much to change.</li>
<li>
<strong>I like Perl</strong> a lot and have come to like Jifty very much as well.</li>
<li>
<strong>I can host Perl</strong>, and all the tools I need for my own CAS customizations are available to me on 
<a href="http://search.cpan.org" title="CPAN">CPAN</a>.</li>
<li>
<strong>CAS+ is a Jifty test application</strong> I'm writing in conjunction with work I am contributing back to Jifty.</li>
</ul>
</blockquote>
<p>
<strong>Awesome!</strong> I'd been thinking about doing something like that myself for the same reasons.</p>
<p>And I will definitely seek to merge the 
<a title="Jeremy Smith's blog: OpenID Server Integrated with CAS" href="http://blog.case.edu/jms18/2007/03/09/openid_server_integrated_with_cas">OpenID server I cooked up and integrated with CAS</a> with this project. My only barrier to doing so with 
<a title="JA-SIG Central Authentication Service (CAS)" href="http://www.ja-sig.org/products/cas/">JA-SIG's CAS</a> was that it was written in Java.</p>
</div
></content
><author
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
><entry
><title
>CAS Sucks!</title
><link href="http://blog.case.edu/jeremy.smith/2007/04/16/cas_sucks"
 /><id
>http://blog.case.edu/jeremy.smith/2007/04/16/cas_sucks</id
><published
>2007-04-16T18:11:19Z</published
><updated
>2007-04-17T03:32:52Z</updated
><category term="Failures of Technology" label="Failures of Technology"
 /><category term="cas" label="cas"
 /><category term="mainblog" label="mainblog"
 /><category term="single sign on" label="single sign on"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>In my 
<a title="Jeremy Smith's blog: Case.tv" href="http://blog.case.edu/jms18/2007/04/12/casetv">previous entry praising</a> 
<a title="Case TV" href="http://tv.case.edu/">Case.TV</a>, I inadvertently caused a long thread on the demerits of 
<a href="http://wiki.case.edu/CAS">CAS</a>, our Single Sign On System. From the comments, a 
<a title="Jeremy Smith's blog: Case.tv" href="http://blog.case.edu/jms18/2007/04/12/casetv#71881">quote from Sean Maxwell</a> (who was the designer (from the markup perspective not the UI perspective) of the Case.TV web site &#8212; the person I was looking for):
<blockquote>I hate CAS. Whatever CAS is doing I can do better and faster. I don't mind integrating with it, but relying on it is a bad idea in my opinion.</blockquote>That's clear-cut enough. I had actually not heard any push-back regarding 
<a href="http://wiki.case.edu/CAS">CAS</a> before. I didn't know CAS sucked. And I 
<em>hate</em> stuff that sucks (RE: previous post &#8212; 
<a title="Jeremy Smith's blog: I Must Be the Most Demanding User in the World" href="http://blog.case.edu/jms18/2005/02/23/demanding_user">I Must Be the Most Demanding User in the World</a>). So I'd like to hear more regarding the demerits, inefficiencies, and general suckiness of CAS from others. Too slow? UI sucks? Confusing redirects? Too much work to interoperate with? Other? As a possible counter-point to this future discussion, I did write-up 
<a title="Jeremy Smith's blog: The Benefits of Single Sign On" href="http://blog.case.edu/jms18/2005/06/27/the_benefits_of_single_sign_on">The Benefits of Single Sign On</a>, which covers "handling expired passwords", "handling disabled accounts", "increased security with two-factor login controls", "interoperability with federated identity for free" (for example, the 
<a title="Jeremy Smith's blog: OpenID Server Integrated with CAS" href="http://blog.case.edu/jms18/2007/03/09/openid_server_integrated_with_cas">OpenID server I integrated with CAS</a>), etc. Things I didn't cover in that 2 year old article that are upcoming features to CAS include anti-phishing measures and security monitoring tools to detect compromised accounts. But what I want to focus on is why 
<a href="http://wiki.case.edu/CAS">CAS</a> sucks. I'd prefer it not to suck. So any feedback is appreciated so that I can attempt to make it suck less. Thanks!</div
></content
><author
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
><entry
><title
>OpenID Server Integrated with CAS</title
><link href="http://blog.case.edu/jeremy.smith/2007/03/09/openid_server_integrated_with_cas"
 /><id
>http://blog.case.edu/jeremy.smith/2007/03/09/openid_server_integrated_with_cas</id
><published
>2007-03-10T00:53:01Z</published
><updated
>2007-03-10T00:55:54Z</updated
><category term="Federated Identity" label="Federated Identity"
 /><category term="HTTP" label="HTTP"
 /><category term="Programming" label="Programming"
 /><category term="Shibboleth" label="Shibboleth"
 /><category term="Web Services" label="Web Services"
 /><category term="cas" label="cas"
 /><category term="identity management" label="identity management"
 /><category term="mainblog" label="mainblog"
 /><category term="openid" label="openid"
 /><category term="web" label="web"
 /><category term="web standards" label="web standards"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>With the help of some of the Network Engineers (to get some magic routing working), I cobbled together an 
<a title="OpenID: an actually distributed identity system" href="http://openid.net/">OpenID</a> server and integrated it with 
<a href="http://www.case.edu">Case's</a> 
<a title="Case Central Authentication Service (CAS)" href="https://login.case.edu">Single Sign On</a> system, 
<a title="Central Authentication Service - CaseWiki" href="http://wiki.case.edu/Central_Authentication_Service">CAS</a>. The "server" end-point is located at 
<a href="http://login.case.edu/id">http://login.case.edu/id</a>. Your "identity URL" is the 
<em>first.last</em> portion of your email address followed with 
<strong>.id.case.edu</strong>. For example, my email is 
<a href="mailto:jeremy.smith@case.edu">jeremy.smith@case.edu</a>, so my OpenID identity URL is 
<a href="http://jeremy.smith.id.case.edu">
<strong>jeremy.smith.id.case.edu</strong>
</a>. For those averse to typing (like I am), you can also use your 
<a title="Case Network ID - CaseWiki" href="http://wiki.case.edu/Case_Network_ID">Case Network ID</a> followed by 
<strong>.id.case.edu</strong>. So, I could also use 
<a href="http://jms18.id.case.edu">
<strong>jms18.id.case.edu</strong>
</a>. If you want to try logging in with it, you can head over to 
<a title="Simon Willison's Weblog" href="http://simonwillison.net/">Simon Willison's Weblog</a> and, at the top where it says "Sign in with OpenID," click on that and enter 
<strong>&lt;USERNAME&gt;.id.case.edu</strong>. A better example is logging into 
<a title="Free Worldwide Travel Guides - Wikitravel" href="http://wikitravel.org/">Wikitravel</a> because it shows how information (such as nicknames, email address, full name, etc.) can be shared between a OpenID Provider and client. You can sign in to Wikitravel 
<a title="Login with OpenID - Wikitravel" href="http://wikitravel.org/en/Special:OpenIDLogin">here</a>. The information sharing part doesn't so much "work" yet. I'm getting there. And because it is integrated upwards towards 
<a href="http://wiki.case.edu/CAS">CAS</a>, it should interoperate with all of the other "identity systems/protocols" we've integrated with CAS like 
<a title="Shibboleth Project - Internet2 Middleware" href="http://shibboleth.internet2.edu/">Shibboleth</a> (and, in testing, Oracle's Single Sign On, Sun's, and 
<a title="Google Apps - SAML-based Single Sign-On" href="http://code.google.com/apis/apps/sso/saml_reference_implementation.html">Google's SAML-based Single Sign-On</a>). I may throw up some screencasts showing the effects of this by bouncing in between normal CAS-protected apps (like this 
<a href="http://blog.case.edu">blog system</a> or the 
<a href="http://wiki.case.edu">wiki</a>), Shibboleth protected ones, and OpenID protected ones.</div
></content
><author
><name
></name
><email
>blog-admin@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
><entry
><title
>Configuring CAS to use X.509 Client Certificates</title
><link href="http://blog.case.edu/jeremy.smith/2006/02/22/authenticating_client_certificates_with_cas"
 /><id
>http://blog.case.edu/jeremy.smith/2006/02/22/authenticating_client_certificates_with_cas</id
><published
>2006-02-22T21:47:59Z</published
><updated
>2006-02-22T21:50:40Z</updated
><category term="cas" label="cas"
 /><category term="linkblog" label="linkblog"
 /><category term="pki" label="pki"
 /><category term="single sign on" label="single sign on"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>
<a title="Client Certificates" href="http://www.ja-sig.org/products/cas/server/certs/">Configuring CAS to use X.509 Client Certificates</a>
</div
></content
><author
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
><entry
><title
>Student Affairs Now Using CAS</title
><link href="http://blog.case.edu/gps10/2006/02/16/student_affairs_now_using_cas"
 /><id
>http://blog.case.edu/gps10/2006/02/16/student_affairs_now_using_cas</id
><published
>2006-02-16T16:41:42Z</published
><updated
>2006-02-16T16:43:53Z</updated
><category term="CAS" label="CAS"
 /><category term="Case IT" label="Case IT"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>Joel Kraft has informed that 
<a href="http://studentaffairs.case.edu">Student Affairs</a> and all of its daughter sites (Career Center, Housing, etc) are now using 
<a href="http://wiki.case.edu/CAS">CAS</a>. Looks like he did it all in ASP too. Great work!</div
></content
><author
><name
>Gregory Szorc</name
><email
>gregory.szorc@case.edu</email
><uri
>http://blog.case.edu/gps10</uri
></author
></entry
><entry
><title
>Blackboard Now Using CAS</title
><link href="http://blog.case.edu/gps10/2006/02/16/blackboard_now_using_cas"
 /><id
>http://blog.case.edu/gps10/2006/02/16/blackboard_now_using_cas</id
><published
>2006-02-16T16:10:10Z</published
><updated
>2006-02-16T16:17:15Z</updated
><category term="CAS" label="CAS"
 /><category term="Case IT" label="Case IT"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>I woke up this morning and saw that 
<a href="http://wiki.case.edu/Blackboard">Blackboard</a> is now using 
<a href="http://wiki.case.edu/CAS">CAS</a> for authentication. W00t. It's not even noon and already over 1000 unique logins to Blackboard have been logged. This should create a nice plateau in the 
<a href="http://wiki.case.edu/CAS#Statistics">CAS statistics</a>. I'm pleased to report that even with the increased usage, the 'load' on the CAS server is still "0.00 0.00 0.00." My laptop could probably power this service for the entire university... Bring on web mail!</div
></content
><author
><name
>Gregory Szorc</name
><email
>gregory.szorc@case.edu</email
><uri
>http://blog.case.edu/gps10</uri
></author
></entry
><entry
><title
>Case Single Sign-On Service Upgraded</title
><link href="http://blog.case.edu/gps10/2006/02/03/case_single_signon_service_upgraded"
 /><id
>http://blog.case.edu/gps10/2006/02/03/case_single_signon_service_upgraded</id
><published
>2006-02-03T23:22:25Z</published
><updated
>2006-02-03T23:34:57Z</updated
><category term="CAS" label="CAS"
 /><category term="Case IT" label="Case IT"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>If you have been to 
<a href="https://login.case.edu">login.case.edu</a> lately, you will notice it has changed from when you last saw it. 
<a href="http://wiki.case.edu/CAS">CAS</a>, the software powering our single sign-on service has been upgraded to the latest and greatest version. We took this opportunity to make the skin look more official. In addition, several improvements were made to the service:
<ul>
<li>The authentication mechanism can distinguish between a bad password and an expired password. If your password is expired, you will be given a direct link to the password change form when you try to log in.</li>
<li>More thorough operational logs are kept for security and statistical purposes. Eventually we will have charts and graphs showing the most popular services.</li>
<li>You can now log in with LDAP-only accounts.</li>
</ul>No operational functionality should have changed as a result of the upgrade. The CAS protocol for this version of the software is the same, so the instructions on the 
<a href="http://wiki.case.edu/CAS">CAS</a> article in the Case Wiki are still valid.</div
></content
><author
><name
>Gregory Szorc</name
><email
>gregory.szorc@case.edu</email
><uri
>http://blog.case.edu/gps10</uri
></author
></entry
><entry
><title
>&lt;code&gt;require valid-user&lt;/code&gt; Considered Harmful at Case</title
><link href="http://blog.case.edu/jeremy.smith/2006/02/03/require_validuser_considered_harmful"
 /><id
>http://blog.case.edu/jeremy.smith/2006/02/03/require_validuser_considered_harmful</id
><published
>2006-02-03T19:13:31Z</published
><updated
>2006-02-03T19:14:30Z</updated
><category term="LDAP" label="LDAP"
 /><category term="cas" label="cas"
 /><category term="identity management" label="identity management"
 /><category term="mainblog" label="mainblog"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>If you run a web server (or similar device) that has protected realms meant to be restricted to Case persons, and the only authorization component you have on it is 
<code>require valid-user</code> (or similar), you should change it. In the near future, it is going to be increasingly likely that more and more persons with only a passing association with the University will be able to login i.e. they will have Case credentials and they may not be a Case employee, student, or alum. People who are using authorization that is in the style of 
<code>require valid-user</code> and are expecting their service to only be available to Case users are going to have an unwelcome surprise when someone else authenticates and gets in. (At which point, they will undoubtable blame 
<a href="http://wiki.case.edu/ITS">ITS</a> for the security hole and an op-ed will appear in the 
<a title="The Observer - Volume XXXVIII, Issue 15" href="http://observer.case.edu">Observer</a> about how we are not security conscious.) The best way to handle authentication in your web app is to use 
<a href="http://wiki.case.edu/CAS">CAS</a>. The best way to handle authorization in your web app is (for Apache, at least) to use 
<a title="An LDAP Apache Module that Works with Pubcookie and Dynamic Groups :: Middleware Engineering :: Case Western Reserve University" href="https://its-services.case.edu/middleware/docs/mod_auth_ldap/">mod_auth_ldap</a>. In the scenario where you want active Case users to be able to access your protected realm, you don't do a 
<code>require valid-user</code>; rather, you:
<pre>
<code>require group students
<br />require group employees</code>
</pre>I'm not sure what the best way to disseminate this message about "
<code>require valid-user</code> considered harmful." A post to 
<a title="Information Technology Services at Case" href="http://www.case.edu/its/">ITS homepage</a>, maybe? Have someone bring it up at the next CTO's meeting? Probably the latter. But the information needs to get out there before someone running a service has something unexpected happen.</div
></content
><author
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
><entry
><title
>Single Sign-On Eases Headaches, Especially on February 15</title
><link href="http://blog.case.edu/gps10/2006/01/27/single_signon_eases_headaches_especially_on_february_15"
 /><id
>http://blog.case.edu/gps10/2006/01/27/single_signon_eases_headaches_especially_on_february_15</id
><published
>2006-01-27T17:31:04Z</published
><updated
>2006-01-27T18:06:49Z</updated
><category term="CAS" label="CAS"
 /><category term="CAS" label="CAS"
 /><category term="Case IT" label="Case IT"
 /><category term="SSO" label="SSO"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>Hopefully by now you are acquainted with the university's single sign-on service, 
<a href="http://wiki.case.edu/CAS">CAS</a>. You appreciate how much easier it makes your day. You get to work in the morning, sign on, and don't worry about specifying your password again and again and again. Well, that isn't accurate. There are still numerous services that haven't been converted to CAS. Some are for political reasons. Some are for technical reasons. Although ITS has internally tested CAS with the portal, webmail, the web Oracle calendar, and even Blackboard, these services haven't been converted chiefly because the current CAS server won't let users with passwords older than September 1999 log in. The next version of the CAS service (which is due for deployment any day now) corrects this issue. It also looks branded and even allows special users defined in 
<a href="http://wiki.case.edu/LDAP">LDAP</a> to log in. For service deployers, this should be enough to convince you to convert your service. If not, you will pay dearly come February 15. The upgraded CAS service features something no other current login method at Case will: friendly integration with the new password policies. When your password expires, your account is disabled. You will not be able to log in from anywhere. The only thing you can do with your old password is use it to change your password. However, when you log in to CAS with your expired password, CAS will say "Your password has expired. Please use the Password Change Page to change your password." SITES NOT USING CAS WILL NOT BE ABLE TO DISTINGUISH BETWEEN A BAD PASSWORD AND AN EXPIRED ONE. Users will visit these non-CASified sites and enter their password over and over, confident it is correct. Frustration builds up. These services aren't programmed to check for an expired account. They just check whether the password works, which the password policies dictate it won't. People will get upset they can't use your service. They have no idea why. They file trouble tickets with the Help Desk. They call you. They e-mail you. Loss of productivity ensues. CAS exists for user convenience and for peace-of-mind with information security. I HATE typing in my password to access a site. After all, that password is available to that site to do what they want. There is nothing stopping a web site operator from putting up a site that requires my password, then takes that password and logs in to the the e-mail server as myself and downloads all my mail. They can bind to the LDAP as me and obtain my personal information. They can log in to other services as me. Your Case ID password should be yours and yours only. You should only need as few times as possible. CAS makes that possible. For all the system administrators out there who haven't deployed 
<a href="http://wiki.case.edu/CAS">CAS</a> yet, I implore you to do so. You will be conveniencing the users of your services as well as securing some peace-of-mind come February 15.</div
></content
><author
><name
>Gregory Szorc</name
><email
>gregory.szorc@case.edu</email
><uri
>http://blog.case.edu/gps10</uri
></author
></entry
><entry
><title
>Single Sign-On Eases Headaches, Especially on February 15</title
><link href="http://blog.case.edu/gps10/2006/01/27/single_signon_eases_headaches_especially_on_february_15"
 /><id
>http://blog.case.edu/gps10/2006/01/27/single_signon_eases_headaches_especially_on_february_15</id
><published
>2006-01-27T17:31:04Z</published
><updated
>2006-01-27T18:06:49Z</updated
><category term="CAS" label="CAS"
 /><category term="CAS" label="CAS"
 /><category term="Case IT" label="Case IT"
 /><category term="SSO" label="SSO"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>Hopefully by now you are acquainted with the university's single sign-on service, 
<a href="http://wiki.case.edu/CAS">CAS</a>. You appreciate how much easier it makes your day. You get to work in the morning, sign on, and don't worry about specifying your password again and again and again. Well, that isn't accurate. There are still numerous services that haven't been converted to CAS. Some are for political reasons. Some are for technical reasons. Although ITS has internally tested CAS with the portal, webmail, the web Oracle calendar, and even Blackboard, these services haven't been converted chiefly because the current CAS server won't let users with passwords older than September 1999 log in. The next version of the CAS service (which is due for deployment any day now) corrects this issue. It also looks branded and even allows special users defined in 
<a href="http://wiki.case.edu/LDAP">LDAP</a> to log in. For service deployers, this should be enough to convince you to convert your service. If not, you will pay dearly come February 15. The upgraded CAS service features something no other current login method at Case will: friendly integration with the new password policies. When your password expires, your account is disabled. You will not be able to log in from anywhere. The only thing you can do with your old password is use it to change your password. However, when you log in to CAS with your expired password, CAS will say "Your password has expired. Please use the Password Change Page to change your password." SITES NOT USING CAS WILL NOT BE ABLE TO DISTINGUISH BETWEEN A BAD PASSWORD AND AN EXPIRED ONE. Users will visit these non-CASified sites and enter their password over and over, confident it is correct. Frustration builds up. These services aren't programmed to check for an expired account. They just check whether the password works, which the password policies dictate it won't. People will get upset they can't use your service. They have no idea why. They file trouble tickets with the Help Desk. They call you. They e-mail you. Loss of productivity ensues. CAS exists for user convenience and for peace-of-mind with information security. I HATE typing in my password to access a site. After all, that password is available to that site to do what they want. There is nothing stopping a web site operator from putting up a site that requires my password, then takes that password and logs in to the the e-mail server as myself and downloads all my mail. They can bind to the LDAP as me and obtain my personal information. They can log in to other services as me. Your Case ID password should be yours and yours only. You should only need as few times as possible. CAS makes that possible. For all the system administrators out there who haven't deployed 
<a href="http://wiki.case.edu/CAS">CAS</a> yet, I implore you to do so. You will be conveniencing the users of your services as well as securing some peace-of-mind come February 15.</div
></content
><author
><name
>Gregory Szorc</name
><email
>gregory.szorc@case.edu</email
><uri
>http://blog.case.edu/gps10</uri
></author
></entry
><entry
><title
>Hey Blackboard, Where's the RSS</title
><link href="http://blog.case.edu/gps10/2005/09/09/hey_blackboard_wheres_the_rss"
 /><id
>http://blog.case.edu/gps10/2005/09/09/hey_blackboard_wheres_the_rss</id
><published
>2005-09-09T15:48:54Z</published
><updated
>2005-09-10T20:38:57Z</updated
><category term="CAS" label="CAS"
 /><category term="RSS" label="RSS"
 /><category term="open source" label="open source"
 /><category term="syndicated feeds" label="syndicated feeds"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>After completing my chemical dependence on 
<a href="http://wiki.case.edu/syndicated_feeds">syndicated feeds</a> this summer, I have grown accustomed to reading all of my news without surfing to any web sites. My news aggregator simply grabs everything and displays it for me. This fall, every one of my classes uses Blackboard, and every single course on Blackboard is updated frequently. It kills me to have to log in to Blackboard (which still requires my username and password (Blackboard can work with 
<a href="http://wiki.case.edu/CAS">CAS</a>)) to get recent announcements for my courses. So, where is the 
<a href="http://wiki.case.edu/RSS">RSS</a>? OK, so Blackboard doesn't have RSS support. Let's edit the source code. Oh wait, it is closed source.</div
></content
><author
><name
>Gregory Szorc</name
><email
>gregory.szorc@case.edu</email
><uri
>http://blog.case.edu/gps10</uri
></author
></entry
><entry
><title
>USG Finance System Now Using CAS</title
><link href="http://blog.case.edu/gps10/2005/09/08/usg_finance_system_now_using_cas"
 /><id
>http://blog.case.edu/gps10/2005/09/08/usg_finance_system_now_using_cas</id
><published
>2005-09-09T00:14:11Z</published
><updated
>2005-09-09T00:18:35Z</updated
><category term="CAS" label="CAS"
 /><category term="SSO" label="SSO"
 /><category term="USG" label="USG"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>
<a href="http://wiki.case.edu/CAS">CAS</a> was silently deployed earlier this week and now the 
<a href="http://usg.case.edu/funding/">USG Finance System</a> uses it. I look forward to hearing from others as they embrace the new Case single sign-on system.</div
></content
><author
><name
>Gregory Szorc</name
><email
>gregory.szorc@case.edu</email
><uri
>http://blog.case.edu/gps10</uri
></author
></entry
><entry
><title
>CASifying Blackboard</title
><link href="http://blog.case.edu/jeremy.smith/2005/08/31/casifying_blackboard"
 /><id
>http://blog.case.edu/jeremy.smith/2005/08/31/casifying_blackboard</id
><published
>2005-08-31T19:53:43Z</published
><updated
>2005-08-31T19:54:40Z</updated
><category term="cas" label="cas"
 /><category term="linkblog" label="linkblog"
 /><category term="single sign on" label="single sign on"
 /><category term="sso" label="sso"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>
<a title="CASifying Blackboard" href="http://www.bris.ac.uk/is/projects/portal/software/blackboard_cas">CASifying Blackboard</a>
</div
></content
><author
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
><entry
><title
>Evaluating Single Sign-On Alternatives</title
><link href="http://blog.case.edu/gps10/2005/08/09/evaluating_single_signon_alternatives"
 /><id
>http://blog.case.edu/gps10/2005/08/09/evaluating_single_signon_alternatives</id
><published
>2005-08-09T16:09:56Z</published
><updated
>2005-08-09T17:56:17Z</updated
><category term="CAS" label="CAS"
 /><category term="Computing" label="Computing"
 /><category term="OSSO" label="OSSO"
 /><category term="Oracle" label="Oracle"
 /><category term="SSO" label="SSO"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>In a 
<a href="http://blog.case.edu/gps10/2005/08/09/evaluating_oracle_single_signon">previous post</a>, I raised the need for a replacement single sign-on service for the university and investigated the usage of Oracle's single sign-on product as a viable replacement. The results were discouraging. Therefore, a separate single sign-on product is desired. The first product to grab our attention was 
<a href="http://tp.its.yale.edu/tiki/tiki-index.php?page=CentralAuthenticationService">CAS</a>. What really got our attention was the 
<a href="http://jasigch.princeton.edu:9000/display/CAS/Clients">list of CAS clients</a> as well as the 
<a href="http://jasigch.princeton.edu:9000/display/CAS/CAS+Deployers">list of CAS deployers</a>. Let's evaluate CAS:
<ul>
<li>It is widely used. This means support for the product should be easily available.</li>
<li>It is built using standards. CAS actions are performed using simple HTTP GET and POST requests.</li>
<li>We know what CAS does and can modify it accordingly because the product is open source.</li>
<li>It has plugins for almost every desired usage. The Apache module (for both version 1 and 2) easily install. The modules even work with mod_auth_ldap (I did have to change 4 lines in the source code for this feature, however). If a user doesn't have access to the Apache config, Perl and PHP modules exist to easily integrate your application. For languages without a client yet, designing one is very simple because CAS is built upon standards.</li>
<li>Using CAS requires you to just know the URL of the login server. There is no need for anyone in ITS to configure CAS to allow you to use it.</li>
</ul>So CAS wins big points for being built on standards, easy to use, and easy for ITS to maintain. However, what about the other applications. How do we get the Oracle applications to use CAS? The good news here is that Oracle Single Sign-On can be 
<a href="http://docs.jcu.edu.au/appserver_904_doc/manage.904/b10851/tpsso.htm">integrated with CAS</a>. We could deploy CAS as our primary single sign-on service and Oracle's single sign-on would use CAS to authenticate. In addition, other universities have successfully used CAS as the authentication method for PeopleSoft implementations (our ERP system). Webmail could also be modified to use it. Looking at the big picture, we have two requirements:
<ol>
<li>We must be running Oracle Single Sign-On for the portal</li>
<li>We want to maintain a single sign-on service that is easy for clients to use</li>
</ol>If Oracle Single Sign-On was the only SSO service, #2 would not be true. The requirement of #2 therefore dictates that we operate a separate and primary single sign-on service. CAS seems to fit that requirement perfectly. The only problem left is integrating Oracle Single Sign-On to work with CAS. Until that solution is put in place, users must settle for separately logging into Oracle products; not a big deal considering this is already the case. The advantages of using CAS as our central authentication service are great. The usage barrier for CASifying web sites is so low, that system administrators can easily adopt this solution. Deploying CAS requires a one-time effort by ITS. No intervention is required for new applications to use the service. The solution appears clear. When can we make it official?</div
></content
><author
><name
>Gregory Szorc</name
><email
>gregory.szorc@case.edu</email
><uri
>http://blog.case.edu/gps10</uri
></author
></entry
><entry
><title
>SSO for IMAP... and Beyond</title
><link href="http://blog.case.edu/jeremy.smith/2005/07/01/sso_for_imap_and_beyond"
 /><id
>http://blog.case.edu/jeremy.smith/2005/07/01/sso_for_imap_and_beyond</id
><published
>2005-07-01T20:19:41Z</published
><updated
>2005-07-01T20:20:09Z</updated
><category term="cas" label="cas"
 /><category term="linkblog" label="linkblog"
 /><category term="single sign on" label="single sign on"
 /><category term="sso" label="sso"
 /><content type="xhtml"
><div xmlns="http://www.w3.org/1999/xhtml"
>From 
<a title="PAM Module - JASIG Wiki" href="http://jasigch.princeton.edu:9000/display/CAS/PAM%20Module">Case PAM Module</a>
<blockquote>The 
<a href="http://jasigch.princeton.edu:9000/display/CAS/Yale+CAS+client+distribution" title="Yale CAS client distribution">Yale CAS client distribution</a> includes a PAM module suitable for CAS-authenticating, say, an IMAP server.</blockquote>
<em>Cooooool!</em></div
></content
><author
><name
>Jeremy Smith</name
><email
>jeremy.smith@case.edu</email
><uri
>http://blog.case.edu/jeremy.smith</uri
></author
></entry
></feed
>