├── spring-security-phone-samples
├── spring-security-phone-samples-helloworld
│ ├── src
│ │ └── main
│ │ │ ├── resources
│ │ │ ├── application.properties
│ │ │ ├── messages.properties
│ │ │ ├── messages_zh_CN.properties
│ │ │ ├── log4j2.xml
│ │ │ └── templates
│ │ │ │ ├── layout.html
│ │ │ │ ├── login.html
│ │ │ │ └── login
│ │ │ │ └── phone.html
│ │ │ └── java
│ │ │ └── org
│ │ │ └── oxerr
│ │ │ └── spring
│ │ │ └── security
│ │ │ └── phone
│ │ │ └── samples
│ │ │ └── helloworld
│ │ │ ├── package-info.java
│ │ │ ├── web
│ │ │ ├── package-info.java
│ │ │ └── IndexController.java
│ │ │ ├── SecurityConfiguration.java
│ │ │ ├── WebMvcConfiguration.java
│ │ │ └── Application.java
│ └── pom.xml
└── pom.xml
├── spring-security-phone-web
├── src
│ └── main
│ │ └── java
│ │ └── org
│ │ └── oxerr
│ │ └── spring
│ │ └── security
│ │ └── phone
│ │ └── web
│ │ └── authentication
│ │ ├── package-info.java
│ │ └── PhoneAuthenticationFilter.java
└── pom.xml
├── spring-security-phone-config
├── src
│ └── main
│ │ └── java
│ │ └── org
│ │ └── oxerr
│ │ └── spring
│ │ └── security
│ │ └── phone
│ │ └── config
│ │ └── annotation
│ │ └── web
│ │ └── configurers
│ │ ├── package-info.java
│ │ └── PhoneLoginConfigurer.java
└── pom.xml
├── spring-security-phone-core
├── src
│ └── main
│ │ └── java
│ │ └── org
│ │ └── oxerr
│ │ └── spring
│ │ └── security
│ │ └── phone
│ │ ├── core
│ │ ├── package-info.java
│ │ └── userdetails
│ │ │ ├── PhoneUserDetailsService.java
│ │ │ └── PhoneNumberNotFoundException.java
│ │ └── authentication
│ │ ├── PhoneAuthenticationToken.java
│ │ └── PhoneAuthenticationProvider.java
└── pom.xml
├── maven-version-rules.xml
├── src
└── site
│ └── site.xml
├── .gitignore
├── spring-security-phone-coverage
└── pom.xml
└── pom.xml
/spring-security-phone-samples/spring-security-phone-samples-helloworld/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | spring.thymeleaf.cache=false
2 |
--------------------------------------------------------------------------------
/spring-security-phone-web/src/main/java/org/oxerr/spring/security/phone/web/authentication/package-info.java:
--------------------------------------------------------------------------------
1 | package org.oxerr.spring.security.phone.web.authentication;
2 |
--------------------------------------------------------------------------------
/spring-security-phone-config/src/main/java/org/oxerr/spring/security/phone/config/annotation/web/configurers/package-info.java:
--------------------------------------------------------------------------------
1 | package org.oxerr.spring.security.phone.config.annotation.web.configurers;
2 |
--------------------------------------------------------------------------------
/spring-security-phone-samples/spring-security-phone-samples-helloworld/src/main/java/org/oxerr/spring/security/phone/samples/helloworld/package-info.java:
--------------------------------------------------------------------------------
1 | package org.oxerr.spring.security.phone.samples.helloworld;
2 |
--------------------------------------------------------------------------------
/spring-security-phone-samples/spring-security-phone-samples-helloworld/src/main/java/org/oxerr/spring/security/phone/samples/helloworld/web/package-info.java:
--------------------------------------------------------------------------------
1 | package org.oxerr.spring.security.phone.samples.helloworld.web;
2 |
--------------------------------------------------------------------------------
/spring-security-phone-core/src/main/java/org/oxerr/spring/security/phone/core/package-info.java:
--------------------------------------------------------------------------------
1 | /**
2 | * Authenticates users via phone number & verification code.
3 | */
4 | package org.oxerr.spring.security.phone.core;
5 |
--------------------------------------------------------------------------------
/spring-security-phone-core/src/main/java/org/oxerr/spring/security/phone/core/userdetails/PhoneUserDetailsService.java:
--------------------------------------------------------------------------------
1 | package org.oxerr.spring.security.phone.core.userdetails;
2 |
3 | import org.springframework.security.core.userdetails.UserDetails;
4 |
5 | public interface PhoneUserDetailsService {
6 |
7 | boolean consumeCode(String number, String code);
8 |
9 | UserDetails loadUserByNumber(String number) throws PhoneNumberNotFoundException;
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/spring-security-phone-samples/spring-security-phone-samples-helloworld/src/main/resources/messages.properties:
--------------------------------------------------------------------------------
1 | login.title=Please Sign In
2 | login.failure=Your login attempt was not successful, try again.
3 | login.failure.reason=Reason:
4 | login.rememberMe=Remember me on this computer.
5 | login.username=Username
6 | login.password=Password
7 | login.login=Login
8 |
9 | login.type.password=Login via Username
10 | login.type.phone=Login via Phone
11 |
12 | phone.number=Phone number
13 | phone.code=Code
14 | phone.code.send=Send code
15 |
--------------------------------------------------------------------------------
/maven-version-rules.xml:
--------------------------------------------------------------------------------
1 |
Your login attempt was not successful, try again.
20 |Reason:
21 |