cas-service-ja/overlays/org.apereo.cas.cas-server-w.../WEB-INF/classes/templates/casU2fRegistrationView.html

62 lines
2.2 KiB
HTML

<!DOCTYPE html>
<html xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout" layout:decorate="~{layout}">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/>
<title th:text="#{cas.mfa.u2f.pagetitle}">U2f Registration View</title>
<link href="../../static/css/cas.css" rel="stylesheet" th:remove="tag" />
<script th:src="@{/js/u2f/u2f-api.js}"></script>
<script th:inline="javascript">
/*<![CDATA[*/
setTimeout(function () {
var appId = /*[[${u2fReg.appId}]]*/;
var version = /*[[${u2fReg.version}]]*/;
var challenge = /*[[${u2fReg.challenge}]]*/;
var registerRequests = [{version: version, challenge: challenge}];
console.log(appId, registerRequests);
u2f.register(appId, registerRequests, [], function (data) {
var form = document.getElementById('form');
var reg = document.getElementById('tokenResponse');
if (data.errorCode) {
console.log('U2F failed: error ' + data.errorCode);
return;
}
reg.value = JSON.stringify(data);
form.submit();
});
}, 1000);
/*]]>*/
</script>
</head>
<body>
<main role="main" class="container mt-3 mb-3">
<div layout:fragment="content" id="login">
<div class="alert alert-info">
<h3 th:text="#{cas.mfa.u2f.register.device}">Register Device</h3>
<div th:utext="#{cas.mfa.u2f.authentication.message}">
<p><strong>Please touch the flashing U2F device now.</strong></p>
<p> You may be prompted to allow the site permission to access your security keys. After granting
permission, the device will start to blink.</p>
</div>
<form method="POST" id="form">
<input type="hidden" name="tokenResponse" id="tokenResponse"/>
<input type="hidden" name="_eventId" value="submit"/>
<input type="hidden" name="execution" th:value="${flowExecutionKey}"/>
</form>
</div>
</div>
</main>
</body>
</html>