123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177 |
- <!--
- ~ Copyright 2019 Red Hat, Inc. and/or its affiliates
- ~ and other contributors as indicated by the @author tags.
- ~
- ~ Licensed under the Apache License, Version 2.0 (the "License");
- ~ you may not use this file except in compliance with the License.
- ~ You may obtain a copy of the License at
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing, software
- ~ distributed under the License is distributed on an "AS IS" BASIS,
- ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- ~ See the License for the specific language governing permissions and
- ~ limitations under the License.
- ~
- -->
- <div class="col-sm-9 col-md-10 col-sm-push-3 col-md-push-2">
- <h1>{{:: 'authentication' | translate}}</h1>
- <span data-ng-init="redirectIfWebAuthnDisabled()"></span>
- <kc-tabs-authentication></kc-tabs-authentication>
- <form class="form-horizontal" name="realmForm" novalidate kc-read-only="!access.manageRealm">
- <div class="form-group">
- <label for="name" class="col-md-2 control-label"><span class="required">*</span> {{:: 'webauthn-rp-entity-name' | translate}}</label>
- <div class="col-md-2">
- <div>
- <input id="name" type="text" ng-model="realm.webAuthnPolicyPasswordlessRpEntityName" class="form-control">
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-rp-entity-name.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group">
- <label for="sigalg" class="col-md-2 control-label">{{:: 'webauthn-signature-algorithms' | translate}}</label>
- <div class="col-md-2">
- <div>
- <select id="sigalg" ng-model="realm.webAuthnPolicyPasswordlessSignatureAlgorithms" class="form-control" multiple>
- <option value="ES256">ES256</option>
- <option value="ES384">ES384</option>
- <option value="ES512">ES512</option>
- <option value="RS256">RS256</option>
- <option value="RS384">RS384</option>
- <option value="RS512">RS512</option>
- <option value="RS1">RS1</option>
- </select>
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-signature-algorithms.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group">
- <label for="rpid" class="col-md-2 control-label">{{:: 'webauthn-rp-id' | translate}}</label>
- <div class="col-md-2">
- <div>
- <input id="rpid" type="text" ng-model="realm.webAuthnPolicyPasswordlessRpId" class="form-control">
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-rp-id.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group">
- <label for="attpref" class="col-md-2 control-label">{{:: 'webauthn-attestation-conveyance-preference' | translate}}</label>
- <div class="col-md-2">
- <div>
- <select id="attpref" ng-model="realm.webAuthnPolicyPasswordlessAttestationConveyancePreference" class="form-control">
- <option value="not specified"></option>
- <option value="none">none</option>
- <option value="indirect">indirect</option>
- <option value="direct">direct</option>
- </select>
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-attestation-conveyance-preference.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group">
- <label for="authnatt" class="col-md-2 control-label">{{:: 'webauthn-authenticator-attachment' | translate}}</label>
- <div class="col-md-2">
- <div>
- <select id="authnatt" ng-model="realm.webAuthnPolicyPasswordlessAuthenticatorAttachment" class="form-control">
- <option value="not specified"></option>
- <option value="platform">platform</option>
- <option value="cross-platform">cross-platform</option>
- </select>
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-authenticator-attachment.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group">
- <label for="reqresident" class="col-md-2 control-label">{{:: 'webauthn-require-resident-key' | translate}}</label>
- <div class="col-md-2">
- <div>
- <select id="reqresident" ng-model="realm.webAuthnPolicyPasswordlessRequireResidentKey" class="form-control">
- <option value="not specified"></option>
- <option value="Yes">Yes</option>
- <option value="No">No</option>
- </select>
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-require-resident-key.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group">
- <label for="usrverify" class="col-md-2 control-label">{{:: 'webauthn-user-verification-requirement' | translate}}</label>
- <div class="col-md-2">
- <div>
- <select id="usrverify" ng-model="realm.webAuthnPolicyPasswordlessUserVerificationRequirement" class="form-control">
- <option value="not specified"></option>
- <option value="required">required</option>
- <option value="preferred">preferred</option>
- <option value="discouraged">discouraged</option>
- </select>
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-user-verification-requirement.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group">
- <label for="timeout" class="col-md-2 control-label">{{:: 'webauthn-create-timeout' | translate}}</label>
- <div class="col-md-2">
- <div>
- <input id="timeout" type="number" min="0" max="31536" ng-model="realm.webAuthnPolicyPasswordlessCreateTimeout" class="form-control"/>
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-create-timeout.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group">
- <label for="avoidsame" class="col-md-2 control-label">{{:: 'webauthn-avoid-same-authenticator-register' | translate}}</label>
- <div class="col-md-2">
- <div>
- <input id="avoidsame" ng-model="realm.webAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister" onoffswitch on-text="{{:: 'onText' | translate}}" off-text="{{:: 'offText' | translate}}"/>
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-avoid-same-authenticator-register.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group">
- <label for="type" class="col-md-2 control-label">{{:: 'webauthn-acceptable-aaguids' | translate}}</label>
- <div class="col-sm-4">
- <div class="input-group" ng-repeat="(i, acceptableAaguid) in realm.webAuthnPolicyPasswordlessAcceptableAaguids track by $index">
- <input class="form-control webauthn-acceptable-aaguid" ng-model="realm.webAuthnPolicyPasswordlessAcceptableAaguids[i]">
- <div class="input-group-btn">
- <button class="btn btn-default" type="button" data-ng-click="deleteAcceptableAaguid($index)">
- <span class="fa fa-minus"></span>
- </button>
- </div>
- </div>
- <div class = "input-group">
- <input class="form-control" ng-model="newAcceptableAaguid" id="newAcceptableAaguid">
- <div class="input-group-btn">
- <button class="btn btn-default" type="button" data-ng-click="newAcceptableAaguid.length > 0 && addAcceptableAaguid()">
- <span class="fa fa-plus"></span>
- </button>
- </div>
- </div>
- </div>
- <kc-tooltip>{{:: 'webauthn-acceptable-aaguids.tooltip' | translate}}</kc-tooltip>
- </div>
- <div class="form-group" data-ng-show="access.manageRealm">
- <div class="col-md-10 col-md-offset-2">
- <button kc-save data-ng-disabled="!changed">{{:: 'save' | translate}}</button>
- <button kc-reset data-ng-disabled="!changed">{{:: 'cancel' | translate}}</button>
- </div>
- </div>
- </form>
- </div>
- <kc-menu></kc-menu>
|