分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!
#
# licensed to the apache software foundation (asf) under one
# or more contributor license agreements. see the notice file
# distributed with this work for additional information
# to you under the apache license, version 2.0 (the
# "license"); you may not use this file except in compliance
# with the license. you may obtain a copy of the license at
##
## software distributed under the license is distributed on an
# "as is" basis, without warranties or conditions of any
# kind, either express or implied. see the license for the
# specific language governing permissions and limitations
# under the license.
.stdout=org.apache
.stdout
.layout=org.apache
.stdout
.layout
.conversionpattern=%d %p [%c] - %m %n# general apache librarieslog4j.logger
.org
.apache=warn# springlog4j.logger
.org
.springframework=warn# default shiro logginglog4j.logger
.org
.apache
.shiro=trace# disable verbose logginglog4j.logger
.org
.apache
.shiro
.util
.threadcontext=warnlog4j.logger
.org
.apache
.shiro
.cache
.ehcache
.ehcache=warn
[users]
admin = 123,role1
[roles]
role1 = printer:print
使用者名稱:admin密碼:123
為admin這個賬戶賦予role1角色,多個角色使用逗號隔開
role1這個角色擁有
printer:print
這個許可權,關於這個許可權的寫法,後面會講到
package com.shiro.helloworld;import org.apache.shiro.securityutils;import org.apache.shiro.authc.authenticationexception;import org.apache.shiro.authc.incorrectcredential***ception;import org.apache.shiro.authc.lockedaccountexception;import org.apache.shiro.authc.unknownaccountexception;import org.apache.shiro.authc.usernamepasswordtoken;import org.apache.shiro.config.inisecuritymanage***ctory;import org.apache.shiro.mgt.securitymanager;import org.apache.shiro.session.session;import org.apache.shiro.subject.subject;import org.apache.shiro.util.factory;import org.slf4j.logger;import org.slf4j.logge***ctory;public
class
helloworld else //是否有對印表機進行列印操作的許可權
if(currenuser.ispermitted("printer:print"))else //退出登入 currenuser.logout(); system.exit(0); }}
用簡單的字串來表示乙個許可權,如:queryprinter
printer:print
其中第一部分是許可權被操作的領域(印表機),第二部分是被執行的操作多個值
多個值使用逗號隔開,如role1 = printer:print,printer:query不一定要***:yyyy的形式,也可以直接使用簡單字串可以使用*號表示所有
比如printer:*,表示你可以對印表機進行任何操作,這種情況通常會使用三個部件——第乙個是域,第二個是操作,第三個是被付諸或者使用*:query,表示你在任何領域下,都有查詢操作
實施的例項。如:printer:query:lp7200
也可以使用萬用字元來定義,如:部分省略:缺少的部件意味著使用者可以訪問所有與之匹配的值printer:print:*
printer::
printer:*:lp7200
printer:query, print:lp7200
printer:print 等價於 printer:print:*給我老師的人工智慧教程打call!printer 等價於 printer::
但是請記住:只能從字串的結尾處省略部件,也就是說
printer:lp7200 於 並不等價於 printer:*:lp7200
shiro框架學習 1 shiro基本概念
1.什麼是許可權控制 基本上涉及到使用者參與的系統都要進行許可權管理,許可權管理屬於系統安全的範疇,許可權管理實現對使用者訪問系統的控制,按照安全規則或者安全策略控制使用者可以訪問而且只能訪問自己被授權的資源,理解兩個概念 使用者和資源,許可權控制就是讓指定的使用者,只能操作指定的資源 crud 這...
Shiro學習筆記之Shiro加密
雜湊演算法一般用於生成資料的摘要資訊,是一種不可逆的演算法,一般適合儲存密碼之類的資料,常見的雜湊演算法如 md5 sha 等。一般進行雜湊時最好提供乙個 雜訊,這樣可以使破解密碼的難度變大。以下是md5加密演算法的乙個演示 public class tes 5 此介面提供加密密碼和驗證密碼的功能。...
Shiro 學習筆記(一) shiro簡介
apache shiro 是乙個安全框架。說白了,就是進行一下 許可權校驗,判斷下這個使用者是否登入了,是否有許可權去做這件事情。shiro 可以幫助我們完成 認證 授權 加密 會話管理 與web 整合 快取等。其基本功能點 如下圖 authentication 身份認證 登入,驗證使用者是不是擁有...