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...