Spring Security之旅————————————基本介紹安裝(1)
阿新 • • 發佈:2018-11-24
首先建立一個maven專案 並建立一個子模組
然後父模組pom
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>SolaSecurity</groupId> <artifactId>security</artifactId> <version>1.0.0</version> <packaging>pom</packaging> <parent> <groupId>io.spring.platform</groupId> <artifactId>platform-bom</artifactId> <version>Cairo-SR5</version> <relativePath/> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <spring-cloud.version>Finchley.SR2</spring-cloud.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <!--指定使用maven打包 --> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <classifier>exec</classifier> <!-- 打包fat jar --> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <skipTests>true</skipTests> <!--預設關掉單元測試 --> </configuration> </plugin> </plugins> </build> <modules> <module>security-core</module> </modules> </project>
子模組Pom
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>SolaSecurity</groupId> <artifactId>security</artifactId> <version>1.0.0</version> </parent> <groupId>SolaSecurity</groupId> <artifactId>security-core</artifactId> <version>1.0.0</version> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-oauth2</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc14</artifactId> <version>10.2.0.4.0</version> </dependency> <dependency> <groupId>org.springframework.social</groupId> <artifactId>spring-social-config</artifactId> </dependency> <dependency> <groupId>org.springframework.social</groupId> <artifactId>spring-social-core</artifactId> </dependency> <dependency> <groupId>org.springframework.social</groupId> <artifactId>spring-social-security</artifactId> </dependency> <dependency> <groupId>org.springframework.social</groupId> <artifactId>spring-social-web</artifactId> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> </dependency> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> </dependency> <dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> </dependency> </dependencies> </project>
spring-cloud-starter-oauth2可以把Security相關的jar包全引用進來
Lang 操作字串的工具 collections操作集合的工具 beanutils反射操作的工具 social第三方登陸用到的包
然後再建立一個子模組app來引用上面core模組(core模組就當成一個整合jar包)
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>SolaSecurity</groupId> <artifactId>security</artifactId> <version>1.0.0</version> </parent> <artifactId>security-app</artifactId> <dependencies> <dependency> <groupId>SolaSecurity</groupId> <artifactId>security-core</artifactId> <version>1.0.0</version> </dependency> </dependencies> </project>
再建立一個browser引入core的jar 同時加入新的依賴
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>SolaSecurity</groupId>
<artifactId>security</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>security-browser</artifactId>
<dependencies>
<dependency>
<groupId>SolaSecurity</groupId>
<artifactId>security-core</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session</artifactId>
<version>1.3.3.RELEASE</version>
</dependency>
</dependencies>
</project>
因為browser是瀏覽器模組 所以 這裡加入了一個springsession 如果叢集服務環境的話來控制session一致
最後我們來建一個demo子模組
案例從browser開始,所以在demo模組引入browser,模組的jar包
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>SolaSecurity</groupId>
<artifactId>security</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>security-demo</artifactId>
<dependencies>
<dependency>
<groupId>SolaSecurity</groupId>
<artifactId>security-browser</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
</project>
之後無聊啟動一下demo專案 報錯是正常的 因為(之前還有個錯,沒有配置資料庫地址也會報錯不過我比較機智)
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session</artifactId>
<version>1.3.3.RELEASE</version>
</dependency>
session的儲存沒有配置,暫時可以把他關掉
spring:
session:
store-type: none
然後我們在頁面測測我們寫的helloworld介面(就是返回個字串)
然後彈出來個這玩意
這個預設的賬號是user,預設的密碼會在控制檯打出
也可以自己設定
security:
user:
name: sola
password: sola
暫時也可以關閉它,在啟動類里加入註解
@SpringBootApplication
@EnableAutoConfiguration(exclude = {
org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration.class
})
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
這樣基本的操作就搞完了,下面可以搞點事情了