Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Om det inte är möjligt att anpassa applikationen för krav på AL2-inloggning går det att konfigurera Shibboleth Service Provider för att kontrollera detta.

Idén är att en mellansida införs i inloggningsflödet som kontrollerar tillitsnivå på användaren innan användaren vidarebefordras till den egentliga applikationen. Shibboleth konfigureras också för att kräva AL2 för inloggningssidan i applikationen. Felhantering läggs in så att användare kan ges varning innan kravet aktiveras, och fel när kravet finns på plats, med errorURL för att hänvisa obekräftade användare till inloggningstjänstens hjälpsidor för bekräftelse av konto.

Normalt inloggningsflöde

draw.io Diagram
bordertrue
diagramNameLogin flow
simpleViewerfalse
width
linksauto
tbstyletop
lboxtrue
diagramWidth481
revision4

Modifierat inloggningsflöde

draw.io Diagram
bordertrue
diagramNameModified Login Flow
simpleViewerfalse
width
linksauto
tbstyletop
lboxtrue
diagramWidth601
revision3

Konfigurationen består av dessa delar:

...

Se 3.3 Configure Shibboleth SP - Check for Identity Assurance or REFEDS SIRTFI för konfigurering av Meta-Assurance-Certification i Shibboleth så att assurance, Meta-Assurance-Certification, errorURL och registrationAuthority finns tillgängliga.

...

Code Block
languagepy
titlelogin.cgi
linenumberstrue
# Warn on AL2 login after this date
warn_date = "2024-12-01"

# Require AL2 login after this date
error_date = "2025-01-01"

# Name of site
site_name_sv = "Confluence"
site_name_en = "Confluence"

# Url of application
target_url = "https://confluence.its.umu.se/confluence"

# Url to this script
retry_url = "https://confluence.its.umu.se/cgi-bin/login.cgi"

# EntityidentityID of this Service Provider
entityid = "https://confluence.its.umu.se/shibboleth"

# File to log all access to
logfile = "/var/www/cgi-bin/login.log"

...

Ladda ned login.cgi

Ladda ned login.css

...

Code Block
languagexml
titlehttpdswamid-al2.conf
linenumberstrue
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
<Directory "/var/www/cgi-bin">
  AllowOverride None
  Options None
  Require all granted
</Directory>
<Location /cgi-bin/login.cgi>
  AuthType shibboleth
  ShibRequestSetting requireSession true
  ShibUseHeaders On
  Require valid-user
</Location>

Ladda ned require-swamid-al2.conf

Felsida

Felsida för användare som hamnar direkt i applikationen istället för scriptet som ger hjälp att hitta till scriptet där mer specifik information kan ges. Felsidan pekas ut i Error-konfigurationen i Shibboleth.

...

Code Block
languagexml
titleshibboleth2.xml
linenumberstrue
<SPConfig...
  <RequestMapper type="Native">
    <RequestMap>
      <Host name="confluence.its.umu.se">
        <Path name="confluence">
          <AccessControl>
            <OR>
              <!-- Allow SWAMID AL2 sessions from IdP:ns without SWAMID -->
              <AND>
                <Rule require="assurance">http://www.swamid.se/policy/assurance/al2</Rule>
                <Rule require="Meta-Assurance-Certification">http://www.swamid.se/policy/assurance/al2</Rule>
                <Rule require="Meta-registrationAuthority">http://www.swamid.se/</Rule>
              </AND>
               <!-- Allow REFEDS RAF medium sessions from IdP:s outside of SWAMID -->
              <AND> <AND>
                <Rule require="assurance">https://refeds.org/assurance/IAP/medium</Rule>
                <Rule require="assurance">https://refeds.org/assurance/ID/eppn-unique-no-reassign</Rule>
                <NOT>
                  <Rule require="Meta-registrationAuthority">http://www.swamid.se/</Rule>
                </NOT>
              </AND>
            </OR>
          </AccessControl>
        </Path>
      </Host>
    </RequestMap>
  </RequestMapper>
  <ApplicationDefaults...
    <Sessions...
    <Errors ...
      access="accessError.html"
    />
  ...
  </ApplicationDefaults
  ...
</SPConfig>

...