Skip to content
Snippets Groups Projects
index.html.old 9.93 KiB
Newer Older
Scotty Logan's avatar
Scotty Logan committed
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>IT Lab Login</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta http-equiv="content-type" content="text/html; charset=windows-1252">
    <link rel="icon" href="https://weblogin.itlab.stanford.edu/favicon.ico" type="image/x-icon">
    <link rel="shortcut icon" href="https://weblogin.itlab.stanford.edu/favicon.ico" type="image/x-icon">
    <link rel="stylesheet" href="/css/bootstrap.min.css">
    <link href="/css/su-identity.css" rel="stylesheet">
    <script src="/js/jquery-1.11.1.min.js"></script>

    <!-- bootstrap -->
    <script src="/js/bootstrap.min.js"></script>

    <!--[if lt IE 9]>
    <script src="/js/html5.js"></script>
    <![endif]-->
    <!--[if IE 8]>
    <link rel="stylesheet" type="text/css" href="/css/ie8.css" />
    <![endif]-->
    <!--[if IE 7]>
    <link rel="stylesheet" type="text/css" href="/css/ie7.css" />
    <![endif]-->

    <!-- login CSS -->
    <link rel="stylesheet" href="/css/login.css">
  </head>

  <body id="homepage">
    <div id="su-wrap">
      <!-- #su-wrap start -->
      <div id="su-content">
        <!-- #su-content start -->
        <!-- Brandbar snippet start -->
        <div id="brandbar">
          <div class="container">
            <a href="http://www.stanford.edu"> <img src="/images/brandbar-stanford-logo@2x.png" alt="Stanford University" width="153" height="22"> </a>
          </div>
          <!-- .container end -->
        </div>
        <!-- #brandbar end -->
        <!-- Brandbar snippet end -->

        <div id="header">
          <div class="container">
            <div style="margin: 1em 10px 0 0;">
              <h2 class="pagetitle">IT Lab SAML 2.0 Identity Provider</h2>
            </div>
          </div>
          <!-- /.container -->
        </div>

        <div id="content">
          <div class="container">

            <div class="row">
              <div class="col-md-8 bg-warning">
                <h3>Test It!</h3>
                <p>
                  Test this IdP by logging into the <a href='https://webapp.itlab.stanford.edu/valid-user/'>Test
                  SP</a>
                </p>
              </div>
            </div>

            <div class="row">&nbsp;</div>
              
            <div class="row">
              <div class="col-md-8">
                <p>
                  There are three test users available on this IdP:
                </p>
                <table class="table table-striped table-bordered">
                  <thead>
                    <tr>
                      <th>Username</th>
                      <th>displayName</th>
                      <th>eduPersonAffiliation</th>
                      <th>eduPersonPrincipalName</th>
                    </tr>
                  </thead>
                  <tbody>
                    <tr>
                      <td>jane</td>
                      <td>Jane Stanford</td>
                      <td>faculty</td>
                      <td>jane@itlab.stanford.edu</td>
                    </tr>
                    <tr>
                      <td>leland</td>
                      <td>Leland Stanford</td>
                      <td>staff</td>
                      <td>leland@itlab.stanford.edu</td>
                    </tr>
                    <tr>
                      <td>lelandjr</td>
                      <td>Leland Stanford, Jr</td>
                      <td>student</td>
                      <td>lelandjr@itlab.stanford.edu</td>
                    </tr>
                  </tbody>
                </table>
                <p>
                  Each account has the same password: <em>stanford</em>
                </p>
                <p>
                  Logging in as any of these users will return an assertion
                  to your SP similar to the ones that are released from the
                  production IdPs.
                </p>
              </div>
            </div>

            <div class="row">
              <div class="col-md-8">

                <h3>SP Configuration</h3>
                <p>
                  You will need to download or link to the metadata for this IdP at 
                  <a href='https://weblogin.itlab.stanford.edu/idp/shibboleth'>https://weblogin.itlab.stanford.edu/idp/shibboleth</a>
                </p>
                <p>
                  Unlike our production IdP, this service does not require metadata for your SP.
                </p>
                <p><strong>
                  Your SP metadata will be required to move to production
                </strong></p>
    
                <p>
                  Here is a sample <em>shibboleth2.xml</em> configuration file. Replace
                  <em>YOUR-ENTITY-ID</em> with the URL for your app's home page (e.g.
                  https://webapp.itlab.stanford.edu/) and <em>YOUR-EMAIL</em> with your,
                  or your team's, email address.
                </p>
                <pre>
&lt;SPConfig xmlns=&quot;urn:mace:shibboleth:2.0:native:sp:config&quot;
          xmlns:conf=&quot;urn:mace:shibboleth:2.0:native:sp:config&quot;
          xmlns:saml=&quot;urn:oasis:names:tc:SAML:2.0:assertion&quot;
          xmlns:samlp=&quot;urn:oasis:names:tc:SAML:2.0:protocol&quot;
          xmlns:md=&quot;urn:oasis:names:tc:SAML:2.0:metadata&quot;
          clockSkew=&quot;180&quot;&gt;

  &lt;ApplicationDefaults entityID=&quot;YOUR-ENTITY-ID&quot; REMOTE_USER=&quot;eppn&quot;&gt;

    &lt;Sessions lifetime=&quot;28800&quot; timeout=&quot;3600&quot; relayState=&quot;ss:mem&quot;
              checkAddress=&quot;false&quot; handlerSSL=&quot;true&quot;
              cookieProps=&quot;; path=/; secure; HttpOnly&quot;&gt;

      &lt;SSO entityID=&quot;https://weblogin.itlab.stanford.edu/idp/shibboleth&quot;&gt;
        SAML2
      &lt;/SSO&gt;

      &lt;Logout&gt;Local&lt;/Logout&gt;

      &lt;Handler type=&quot;MetadataGenerator&quot; Location=&quot;/Metadata&quot; signing=&quot;false&quot;/&gt;

    &lt;/Sessions&gt;

    &lt;Errors supportContact=&quot;YOUR-EMAIL-ADDRESS&quot;
            helpLocation=&quot;/about.html&quot;
            styleSheet=&quot;/shibboleth-sp/main.css&quot;/&gt;

    &lt;MetadataProvider type=&quot;XML&quot; reloadInterval=&quot;7200&quot;
                      uri=&quot;https://weblogin.itlab.stanford.edu/idp/shibboleth&quot;
                      backingFilePath=&quot;/var/cache/shibboleth/weblogin-metata.xml&quot;/&gt;

    &lt;AttributeExtractor type=&quot;XML&quot; validate=&quot;true&quot;
                        reloadChanges=&quot;false&quot; path=&quot;attribute-map.xml&quot;/&gt;

    &lt;AttributeFilter type=&quot;XML&quot; validate=&quot;true&quot; path=&quot;attribute-policy.xml&quot;/&gt;

    &lt;CredentialResolver type=&quot;File&quot; key=&quot;sp-key.pem&quot; certificate=&quot;sp-cert.pem&quot;/&gt;

  &lt;/ApplicationDefaults&gt;

  &lt;SecurityPolicyProvider type=&quot;XML&quot; validate=&quot;true&quot; path=&quot;security-policy.xml&quot;/&gt;

  &lt;ProtocolProvider type=&quot;XML&quot; validate=&quot;true&quot; reloadChanges=&quot;false&quot; path=&quot;protocols.xml&quot;/&gt;

&lt;/SPConfig&gt;

                </pre>

                <p>
                  Generate a self-signed certificate using the <tt>openssl</tt> command line. Replace <em>YOUR-HOST-NAME</em> with the fully qualified name of your host (or the loadbalancer in front of a cluster):
                </p>
                <pre>
  % openssl req -x509 -newkey rsa:2048 -keyout sp-key.pem -out sp-cert.pem -nodes \
  > -days 3650 -subj /CN=YOUR-HOST-NAME
  Generating a 2048 bit RSA private key
  ...............+++
  .............................................................................+++
  writing new private key to 'sp-key.pem'
  -----
                </pre>
              
              </div>
            </div>


            <div class="row">
              <div class="col-md-12">
              </div>
            </div>
    
            <div class="row">
              <div class="col-md-12">
                <p class="fineprint">
                  This is not the real Stanford WebLogin system.  This is the
                  IT Lab Authentication System that we use for testing.
                </p>
              </div>
            </div>

          </div>
          <!-- .container end -->
        </div>
        <!-- .content end -->

      </div>
      <!-- #su-content end -->
    </div>
    <!-- #su-wrap end -->

    <!-- Global footer snippet start -->
    <div id="global-footer">
      <div class="container">
        <div class="row">
          <div class="col-xs-6 col-sm-2" id="bottom-logo"> <a href="http://itlab.stanford.edu"> <img width="105" height="49" alt="IT Lab" src="/images/bunsen-beaker-2.png"> </a> </div>
          <!-- #bottom-logo end -->
          <div class="col-xs-6 col-sm-10" id="bottom-text">
            <ul>
              <li class="home"><a href="http://www.stanford.edu">SU Home</a></li>
              <li class="home"><a href="http://uit.stanford.edu">UIT Home</a></li>
              <li class="search-stanford"><a href="http://stanford.edu/search/">Search Stanford</a></li>
            </ul>
          </div>
          <!-- .bottom-text end -->
          <div class="clear"></div>
          <p class="copyright vcard col-sm-10">&copy; <span class="fn org">Stanford University</span>.&nbsp; <span class="adr"> <span class="locality">Stanford</span>, <span class="region">California</span> <span class="postal-code">94305</span></span>. <span id="termsofuse"><a data-ua-label="global-footer" data-ua-action="copyright-complaints" class="su-link" href="http://www.stanford.edu/group/security/dmca.html">Copyright Complaints</a>&nbsp;&nbsp;&nbsp;<a data-ua-label="global-footer" data-ua-action="trademark-notice" class="su-link" href="https://adminguide.stanford.edu/chapter-1/subchapter-5/policy-1-5-4">Trademark Notice</a></span></p>
        </div>
        <!-- .row end --> 
      </div>
      <!-- .container end --> 
    </div>

    <!-- global-footer end -->
    <!-- Global footer snippet end -->
  </body>
</html>