Beispiel für eine EU-DSGVO-konforme Konfiguration des User Consent Moduls - Terms of Use Template

Zurück zur Hauptseite: Shib IdP 4.1.x, Shib IdP 4.0.x

./views/intercept/terms-of-use.vm
##
## Velocity Template for DisplayTermsOfUsePage view-state
##
## Velocity context will contain the following properties :
##
## encoder - HTMLEncoder class
## flowExecutionKey - SWF execution key (this is built into the flowExecutionUrl)
## flowExecutionUrl - form action location
## flowRequestContext - Spring Web Flow RequestContext
## request - HttpServletRequest
## response - HttpServletResponse
## rpUIContext - context with SP UI information from the metadata
## termsOfUseId - terms of use ID to lookup message strings
## environment - Spring Environment object for property resolution
#set ($serviceName = $rpUIContext.serviceName)
#set ($rpOrganizationLogo = $rpUIContext.getLogo())
##
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width,initial-scale=1.0">
        <link rel="stylesheet" type="text/css" href="$request.getContextPath()/css/consent.css">
        <title>#springMessageText("${termsOfUseId}.title", "Terms of Use")</title>
    </head>
    <body>
        <div class="box">
            <header>
                <img src="$request.getContextPath()#springMessage("idp.logo")" alt="#springMessageText("idp.logo.alt-text", "logo")" class="federation_logo">
                #if ($rpOrganizationLogo)
                    <img src="$encoder.encodeForHTMLAttribute($rpOrganizationLogo)" alt="$encoder.encodeForHTMLAttribute($serviceName)" class="organization_logo">
                #end
            </header>
 
            <div id="tou-content">
                <strong>#springMessageText("my-tou.title", "Einwilligungserklärung")</strong><br />
                #springMessageText("my-service-description", "Description of IdP")
                #springMessageText("my-tou.text", "Terms of Use Text...")
            </div>
            <div id="tou-acceptance">
                <div style="float:left;">
                    <form action="$flowExecutionUrl" method="post" >
                        #parse("csrf/csrf.vm")
                        <input type="submit" name="_eventId_TermsRejected" value="#springMessageText("idp.terms-of-use.reject", "Refuse")" style="margin-right: 30px;">
                    </form>
                </div>
                <div style="float:right;">
                    <form action="$flowExecutionUrl" method="post" >
                        #parse("csrf/csrf.vm")
                        <input id="accept" type="checkbox" name="_shib_idp_consentIds" value="$encoder.encodeForHTML($termsOfUseId)" required>
                        <label for="accept">#springMessageText("idp.terms-of-use.accept", "I accept the terms of use")</label>
                        #if ($requireCheckbox)
                            <p class="form-error">#springMessageText("idp.terms-of-use.required", "Please check this box if you want to proceed.")</p>
                        #end
                        <input type="submit" name="_eventId_proceed" value="#springMessageText("idp.terms-of-use.submit", "Submit")">
                    </form>
                </div>
                <div style="clear:both;"></div>
            </div>
            <footer>
                <div class="container container-footer">
                    <p class="footer-text">#springMessageText("idp.footer", "Insert your footer text here.")</p>
                </div>
            </footer>
        </div>
    </body>
</html>