spring acegi 官方例子

2021-08-30 00:12:32 字數 3235 閱讀 7404

acegi安全是乙個強大的,靈活的安全解決方案的企業軟體,並特別著重於應用,利用spring。用acegi安全,為使用者的應用與全面的認證,授權,例如基於職務的訪問控制,通道安全和人類使用者檢測能力。(google 對acegid的翻譯)

參考資料:

以上就是所有的源**配置在spring 的配置檔案中。詳細的說明在官方的文件上。

在上面的配置檔案的方式是以in-memory 的方法,也就是在配置檔案中指定登入的使用者名稱及密碼。在實際的應用中,應用到資料庫或其它技術。

<

bean id="

datasource

"class="

org.springframework.jdbc.datasource.drivermanagerdatasource

">

<

property name="

driverclassname

">

<

value

>

com.mysql.jdbc.driver

value

>

property

>

<

property name="

url"

>

<

value

>

jdbc:mysql:

//localhost:3306/test

property

>

<

property name="

username

">

<

value

>

root

value

>

property

>

<

property name="

password

">

<

value

>

1value

>

property

>

bean

>

以上兩個bean的**就是把資訊儲存到資料庫中。

sql 語句如下:

create table `users` (

`username` varchar(

50) not null,

`password` varchar(

50) not null,

`enabled` varchar(

50) not null,

primary key (`username`)

) engine

=innodb default charset

=utf8;

insert into `users` values (

'dianne',

'emu',

'true');

insert into `users` values (

'marissa',

'koala',

'true');

insert into `users` values (

'peter',

'opal',

'true');

insert into `users` values (

'scott',

'wombat',

'true');

create table `authorities` (

`username` varchar(50) not null,

`authority` varchar(50) not null,

unique key `ix_auth_username` (`username`,`authority`)

) engine=innodb default charset=utf8;

insert into `authorities` values ('dianne','role_admin');

insert into `authorities` values ('marissa','role_admin');

insert into `authorities` values ('marissa','role_user');

insert into `authorities` values ('peter','role_user');

insert into `authorities` values ('scott','role_admin');

alter table `authorities`

add foreign key (`username`) references `users` (`username`);

所有的配置就是這些:

理解一下原理:

1。acegi的新增,可以在程式寫完之後再新增,配置靈活但並不簡單。

2.四個步驟:

安全是實施這四項檢查:

1 限制出入檢查(是以資源擔保? ) ;

2 現有的認證檢查(有使用者被認證? ) ;

3 如果沒有有效的登入使用者:認證要求退房(都是正確的使用者名稱和密碼提供? ) ;

4 授權入住(不含使用者擁有所需的角色? ) ;

3.對於授權的處理,未授權的使用者無法進行訪問。應該設定 403.jsp未授權頁面。

spring acegi 許可權設計

一般在乙個應用系統中都會有許可權的設計,最基本的許可權設計會關係到五張表,使用者表,角色表,許可權表使用者和角色的中間表,角色和許可權的中間表,這樣五張表,在負責一些的許可權設計還會進行分組,將資源放入表中,並建立許可權和資源的中間關係表,副本.jpg spring acegi 是spring框架中...

Node express 官方例子cors

最近學習node以及express,看例子看的頭疼,剛看完cors,寫一下記錄下來。以下是index.js var express require var logger require morgan var bodyparser require body parser var api express...

Hadoop 官方小例子

wordcount 案例 注 output 資料夾不可以存在,會拋異常 檔案已存在異常 統計單詞的個數 atguigu hadoop101 hadoop 2.7.2 mkdir wcinput atguigu hadoop101 hadoop 2.7.2 cd wcinput atguigu had...