├── .github └── workflows │ ├── maven-publish.yml │ └── maven.yml ├── .gitignore ├── LICENSE ├── README.md ├── dynamic-email-code-auth-extension.iml ├── pom.xml ├── src └── main │ ├── java │ └── com │ │ └── mesutpiskin │ │ └── keycloak │ │ └── auth │ │ └── email │ │ ├── ConditionalEmailAuthenticatorForm.java │ │ ├── ConditionalEmailAuthenticatorFormFactory.java │ │ ├── EmailAuthenticatorForm.java │ │ ├── EmailAuthenticatorFormFactory.java │ │ └── EmailConstants.java │ └── resources │ ├── META-INF │ └── services │ │ └── org.keycloak.authentication.AuthenticatorFactory │ ├── theme-resources │ ├── messages │ │ ├── messages_en.properties │ │ ├── messages_fr.properties │ │ ├── messages_it.properties │ │ ├── messages_tr.properties │ │ └── messages_tr.properties.orig │ └── templates │ │ ├── email-code-form.ftl │ │ ├── html │ │ └── code-email.ftl │ │ └── text │ │ └── code-email.ftl │ └── theme │ └── email-code-theme │ └── email │ ├── html │ ├── email-test.ftl │ ├── email-update-confirmation.ftl │ ├── email-verification-with-code.ftl │ ├── email-verification.ftl │ ├── event-login_error.ftl │ ├── event-remove_totp.ftl │ ├── event-update_password.ftl │ ├── event-update_totp.ftl │ ├── executeActions.ftl │ ├── identity-provider-link.ftl │ ├── password-reset.ftl │ └── template.ftl │ └── text │ ├── email-test.ftl │ ├── email-update-confirmation.ftl │ ├── email-verification-with-code.ftl │ ├── email-verification.ftl │ ├── event-login_error.ftl │ ├── event-remove_totp.ftl │ ├── event-update_password.ftl │ ├── event-update_totp.ftl │ ├── executeActions.ftl │ ├── identity-provider-link.ftl │ └── password-reset.ftl └── static └── otp-form.png /.github/workflows/maven-publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/.github/workflows/maven-publish.yml -------------------------------------------------------------------------------- /.github/workflows/maven.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/.github/workflows/maven.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/README.md -------------------------------------------------------------------------------- /dynamic-email-code-auth-extension.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/dynamic-email-code-auth-extension.iml -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/pom.xml -------------------------------------------------------------------------------- /src/main/java/com/mesutpiskin/keycloak/auth/email/ConditionalEmailAuthenticatorForm.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/java/com/mesutpiskin/keycloak/auth/email/ConditionalEmailAuthenticatorForm.java -------------------------------------------------------------------------------- /src/main/java/com/mesutpiskin/keycloak/auth/email/ConditionalEmailAuthenticatorFormFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/java/com/mesutpiskin/keycloak/auth/email/ConditionalEmailAuthenticatorFormFactory.java -------------------------------------------------------------------------------- /src/main/java/com/mesutpiskin/keycloak/auth/email/EmailAuthenticatorForm.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/java/com/mesutpiskin/keycloak/auth/email/EmailAuthenticatorForm.java -------------------------------------------------------------------------------- /src/main/java/com/mesutpiskin/keycloak/auth/email/EmailAuthenticatorFormFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/java/com/mesutpiskin/keycloak/auth/email/EmailAuthenticatorFormFactory.java -------------------------------------------------------------------------------- /src/main/java/com/mesutpiskin/keycloak/auth/email/EmailConstants.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/java/com/mesutpiskin/keycloak/auth/email/EmailConstants.java -------------------------------------------------------------------------------- /src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory -------------------------------------------------------------------------------- /src/main/resources/theme-resources/messages/messages_en.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme-resources/messages/messages_en.properties -------------------------------------------------------------------------------- /src/main/resources/theme-resources/messages/messages_fr.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme-resources/messages/messages_fr.properties -------------------------------------------------------------------------------- /src/main/resources/theme-resources/messages/messages_it.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme-resources/messages/messages_it.properties -------------------------------------------------------------------------------- /src/main/resources/theme-resources/messages/messages_tr.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme-resources/messages/messages_tr.properties -------------------------------------------------------------------------------- /src/main/resources/theme-resources/messages/messages_tr.properties.orig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme-resources/messages/messages_tr.properties.orig -------------------------------------------------------------------------------- /src/main/resources/theme-resources/templates/email-code-form.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme-resources/templates/email-code-form.ftl -------------------------------------------------------------------------------- /src/main/resources/theme-resources/templates/html/code-email.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme-resources/templates/html/code-email.ftl -------------------------------------------------------------------------------- /src/main/resources/theme-resources/templates/text/code-email.ftl: -------------------------------------------------------------------------------- 1 | <#ftl output_format="plainText"> 2 | ${msg("emailCodeBody", code, ttl)} -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/email-test.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/email-test.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/email-update-confirmation.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/email-update-confirmation.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/email-verification-with-code.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/email-verification-with-code.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/email-verification.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/email-verification.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/event-login_error.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/event-login_error.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/event-remove_totp.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/event-remove_totp.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/event-update_password.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/event-update_password.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/event-update_totp.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/event-update_totp.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/executeActions.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/executeActions.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/identity-provider-link.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/identity-provider-link.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/password-reset.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/password-reset.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/html/template.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/html/template.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/email-test.ftl: -------------------------------------------------------------------------------- 1 | <#ftl output_format="plainText"> 2 | ${msg("emailTestBody", realmName)} -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/email-update-confirmation.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/text/email-update-confirmation.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/email-verification-with-code.ftl: -------------------------------------------------------------------------------- 1 | <#ftl output_format="plainText"> 2 | ${msg("emailVerificationBodyCode",code)} -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/email-verification.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/text/email-verification.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/event-login_error.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/text/event-login_error.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/event-remove_totp.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/text/event-remove_totp.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/event-update_password.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/text/event-update_password.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/event-update_totp.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/text/event-update_totp.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/executeActions.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/text/executeActions.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/identity-provider-link.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/text/identity-provider-link.ftl -------------------------------------------------------------------------------- /src/main/resources/theme/email-code-theme/email/text/password-reset.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/src/main/resources/theme/email-code-theme/email/text/password-reset.ftl -------------------------------------------------------------------------------- /static/otp-form.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mesutpiskin/keycloak-2fa-email-authenticator/HEAD/static/otp-form.png --------------------------------------------------------------------------------