blob: ecb4cecca2ef276ed66fde17b18811a0b1488d35 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_92) on Mon Nov 14 15:04:20 EST 2016 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>AuthorizingRealm (Apache Shiro 1.4.0-RC2 API)</title>
<meta name="date" content="2016-11-14">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AuthorizingRealm (Apache Shiro 1.4.0-RC2 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":6,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AuthorizingRealm.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/shiro/realm/CachingRealm.html" title="class in org.apache.shiro.realm"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/shiro/realm/AuthorizingRealm.html" target="_top">Frames</a></li>
<li><a href="AuthorizingRealm.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.shiro.realm</div>
<h2 title="Class AuthorizingRealm" class="title">Class AuthorizingRealm</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../org/apache/shiro/realm/CachingRealm.html" title="class in org.apache.shiro.realm">org.apache.shiro.realm.CachingRealm</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm">org.apache.shiro.realm.AuthenticatingRealm</a></li>
<li>
<ul class="inheritance">
<li>org.apache.shiro.realm.AuthorizingRealm</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../org/apache/shiro/authc/LogoutAware.html" title="interface in org.apache.shiro.authc">LogoutAware</a>, <a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a>, <a href="../../../../org/apache/shiro/authz/permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">PermissionResolverAware</a>, <a href="../../../../org/apache/shiro/authz/permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolverAware</a>, <a href="../../../../org/apache/shiro/cache/CacheManagerAware.html" title="interface in org.apache.shiro.cache">CacheManagerAware</a>, <a href="../../../../org/apache/shiro/realm/Realm.html" title="interface in org.apache.shiro.realm">Realm</a>, <a href="../../../../org/apache/shiro/util/Initializable.html" title="interface in org.apache.shiro.util">Initializable</a>, <a href="../../../../org/apache/shiro/util/Nameable.html" title="interface in org.apache.shiro.util">Nameable</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../org/apache/shiro/realm/ldap/AbstractLdapRealm.html" title="class in org.apache.shiro.realm.ldap">AbstractLdapRealm</a>, <a href="../../../../org/apache/shiro/cas/CasRealm.html" title="class in org.apache.shiro.cas">CasRealm</a>, <a href="../../../../org/apache/shiro/realm/ldap/DefaultLdapRealm.html" title="class in org.apache.shiro.realm.ldap">DefaultLdapRealm</a>, <a href="../../../../org/apache/shiro/realm/jdbc/JdbcRealm.html" title="class in org.apache.shiro.realm.jdbc">JdbcRealm</a>, <a href="../../../../org/apache/shiro/realm/SimpleAccountRealm.html" title="class in org.apache.shiro.realm">SimpleAccountRealm</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.55">AuthorizingRealm</a>
extends <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a>
implements <a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a>, <a href="../../../../org/apache/shiro/util/Initializable.html" title="interface in org.apache.shiro.util">Initializable</a>, <a href="../../../../org/apache/shiro/authz/permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">PermissionResolverAware</a>, <a href="../../../../org/apache/shiro/authz/permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolverAware</a></pre>
<div class="block">An <code>AuthorizingRealm</code> extends the <code>AuthenticatingRealm</code>'s capabilities by adding Authorization
(access control) support.
<p/>
This implementation will perform all role and permission checks automatically (and subclasses do not have to
write this logic) as long as the
<a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-"><code>getAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)</code></a> method returns an
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz"><code>AuthorizationInfo</code></a>. Please see that method's JavaDoc for an in-depth explanation.
<p/>
If you find that you do not want to utilize the <a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz"><code>AuthorizationInfo</code></a> construct,
you are of course free to subclass the <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm"><code>AuthenticatingRealm</code></a> directly instead and
implement the remaining Realm interface methods directly. You might do this if you want have better control
over how the Role and Permission checks occur for your specific data source. However, using AuthorizationInfo
(and its default implementation <a href="../../../../org/apache/shiro/authz/SimpleAuthorizationInfo.html" title="class in org.apache.shiro.authz"><code>SimpleAuthorizationInfo</code></a>) is sufficient in the large
majority of Realm cases.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.2</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/shiro/authz/SimpleAuthorizationInfo.html" title="class in org.apache.shiro.authz"><code>SimpleAuthorizationInfo</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#AuthorizingRealm--">AuthorizingRealm</a></span>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#AuthorizingRealm-org.apache.shiro.cache.CacheManager-">AuthorizingRealm</a></span>(<a href="../../../../org/apache/shiro/cache/CacheManager.html" title="interface in org.apache.shiro.cache">CacheManager</a>&nbsp;cacheManager)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#AuthorizingRealm-org.apache.shiro.cache.CacheManager-org.apache.shiro.authc.credential.CredentialsMatcher-">AuthorizingRealm</a></span>(<a href="../../../../org/apache/shiro/cache/CacheManager.html" title="interface in org.apache.shiro.cache">CacheManager</a>&nbsp;cacheManager,
<a href="../../../../org/apache/shiro/authc/credential/CredentialsMatcher.html" title="interface in org.apache.shiro.authc.credential">CredentialsMatcher</a>&nbsp;matcher)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#AuthorizingRealm-org.apache.shiro.authc.credential.CredentialsMatcher-">AuthorizingRealm</a></span>(<a href="../../../../org/apache/shiro/authc/credential/CredentialsMatcher.html" title="interface in org.apache.shiro.authc.credential">CredentialsMatcher</a>&nbsp;matcher)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#afterCacheManagerSet--">afterCacheManagerSet</a></span>()</code>
<div class="block">This implementation attempts to acquire an authentication cache if one is not already configured.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermission-org.apache.shiro.authz.Permission-org.apache.shiro.authz.AuthorizationInfo-">checkPermission</a></span>(<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermission-org.apache.shiro.subject.PrincipalCollection-org.apache.shiro.authz.Permission-">checkPermission</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)</code>
<div class="block">Ensures a subject/user <a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>Permission.implies(Permission)</code></a> implies} the specified <tt>Permission</tt>.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermission-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">checkPermission</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;permission)</code>
<div class="block">Ensures the corresponding Subject/user implies the specified permission String.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermissions-java.util.Collection-org.apache.shiro.authz.AuthorizationInfo-">checkPermissions</a></span>(<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermissions-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">checkPermissions</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</code>
<div class="block">Ensures the corresponding Subject/user
<a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>implies</code></a> all of the
specified permission strings.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkPermissions-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">checkPermissions</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;permissions)</code>
<div class="block">Ensures the corresponding Subject/user
<a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>implies</code></a> all of the
specified permission strings.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRole-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">checkRole</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;role)</code>
<div class="block">Asserts the corresponding Subject/user has the specified role by returning quietly if they do or throwing an
<a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRole-java.lang.String-org.apache.shiro.authz.AuthorizationInfo-">checkRole</a></span>(<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;role,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRoles-java.util.Collection-org.apache.shiro.authz.AuthorizationInfo-">checkRoles</a></span>(<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roles,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">checkRoles</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roles)</code>
<div class="block">Asserts the corresponding Subject/user has all of the specified roles by returning quietly if they do or
throwing an <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#checkRoles-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">checkRoles</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;roles)</code>
<div class="block">Same as <a href="../../../../org/apache/shiro/authz/Authorizer.html#checkRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-"><code>checkRoles(PrincipalCollection subjectPrincipal, Collection&lt;String&gt; roleIdentifiers)</code></a> but doesn't require a collection
as an argument.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#clearCachedAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-">clearCachedAuthorizationInfo</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code>
<div class="block">Clears out the AuthorizationInfo cache entry for the specified account.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#doClearCache-org.apache.shiro.subject.PrincipalCollection-">doClearCache</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code>
<div class="block">Calls <code>super.doClearCache</code> to ensure any cached authentication data is removed and then calls
<a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#clearCachedAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-"><code>clearCachedAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)</code></a> to remove any cached
authorization data.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>protected abstract <a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#doGetAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-">doGetAuthorizationInfo</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code>
<div class="block">Retrieves the AuthorizationInfo for the given principals from the underlying data store.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/shiro/cache/Cache.html" title="interface in org.apache.shiro.cache">Cache</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>,<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationCache--">getAuthorizationCache</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>protected <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationCacheKey-org.apache.shiro.subject.PrincipalCollection-">getAuthorizationCacheKey</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code>&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationCacheName--">getAuthorizationCacheName</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-">getAuthorizationInfo</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code>
<div class="block">Returns an account's authorization-specific information for the specified <code>principals</code>,
or <code>null</code> if no account could be found.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/shiro/authz/permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getPermissionResolver--">getPermissionResolver</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>protected <a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getPermissions-org.apache.shiro.authz.AuthorizationInfo-">getPermissions</a></span>(<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/shiro/authz/permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getRolePermissionResolver--">getRolePermissionResolver</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasAllRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">hasAllRoles</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roleIdentifiers)</code>
<div class="block">Returns <tt>true</tt> if the corresponding Subject/user has all of the specified roles, <tt>false</tt> otherwise.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasRole-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">hasRole</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;roleIdentifier)</code>
<div class="block">Returns <tt>true</tt> if the corresponding Subject/user has the specified role, <tt>false</tt> otherwise.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasRole-java.lang.String-org.apache.shiro.authz.AuthorizationInfo-">hasRole</a></span>(<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;roleIdentifier,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>protected boolean[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasRoles-java.util.List-org.apache.shiro.authz.AuthorizationInfo-">hasRoles</a></span>(<a href="http://java.sun.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roleIdentifiers,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>boolean[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#hasRoles-org.apache.shiro.subject.PrincipalCollection-java.util.List-">hasRoles</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roleIdentifiers)</code>
<div class="block">Checks if the corresponding Subject/user has the specified roles, returning a boolean array indicating
which roles are associated with the given subject.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isAuthorizationCachingEnabled--">isAuthorizationCachingEnabled</a></span>()</code>
<div class="block">Returns <code>true</code> if authorization caching should be utilized if a <a href="../../../../org/apache/shiro/cache/CacheManager.html" title="interface in org.apache.shiro.cache"><code>CacheManager</code></a> has been
<a href="../../../../org/apache/shiro/realm/CachingRealm.html#setCacheManager-org.apache.shiro.cache.CacheManager-"><code>configured</code></a>, <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>protected boolean[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted-java.util.List-org.apache.shiro.authz.AuthorizationInfo-">isPermitted</a></span>(<a href="http://java.sun.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted-org.apache.shiro.authz.Permission-org.apache.shiro.authz.AuthorizationInfo-">isPermitted</a></span>(<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>boolean[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.util.List-">isPermitted</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="http://java.sun.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</code>
<div class="block">Checks if the corresponding Subject/user implies the given Permissions and returns a boolean array indicating
which permissions are implied.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-org.apache.shiro.authz.Permission-">isPermitted</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)</code>
<div class="block">Returns <tt>true</tt> if the corresponding subject/user is permitted to perform an action or access a resource
summarized by the specified permission.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>boolean[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">isPermitted</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;permissions)</code>
<div class="block">Checks if the corresponding Subject implies the given permission strings and returns a boolean array
indicating which permissions are implied.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">isPermitted</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;permission)</code>
<div class="block">Returns <tt>true</tt> if the corresponding subject/user is permitted to perform an action or access a resource
summarized by the specified permission string.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermittedAll-java.util.Collection-org.apache.shiro.authz.AuthorizationInfo-">isPermittedAll</a></span>(<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code>&nbsp;</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermittedAll-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">isPermittedAll</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</code>
<div class="block">Returns <tt>true</tt> if the corresponding Subject/user implies all of the specified permissions, <tt>false</tt>
otherwise.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#isPermittedAll-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">isPermittedAll</a></span>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;permissions)</code>
<div class="block">Returns <tt>true</tt> if the corresponding Subject/user implies all of the specified permission strings,
<tt>false</tt> otherwise.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#onInit--">onInit</a></span>()</code>
<div class="block">Initializes this realm and potentially enables a cache, depending on configuration.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCache-org.apache.shiro.cache.Cache-">setAuthorizationCache</a></span>(<a href="../../../../org/apache/shiro/cache/Cache.html" title="interface in org.apache.shiro.cache">Cache</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>,<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&gt;&nbsp;authorizationCache)</code>&nbsp;</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCacheName-java.lang.String-">setAuthorizationCacheName</a></span>(<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;authorizationCacheName)</code>&nbsp;</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCachingEnabled-boolean-">setAuthorizationCachingEnabled</a></span>(boolean&nbsp;authenticationCachingEnabled)</code>
<div class="block">Sets whether or not authorization caching should be utilized if a <a href="../../../../org/apache/shiro/cache/CacheManager.html" title="interface in org.apache.shiro.cache"><code>CacheManager</code></a> has been
<a href="../../../../org/apache/shiro/realm/CachingRealm.html#setCacheManager-org.apache.shiro.cache.CacheManager-"><code>configured</code></a>, <code>false</code> otherwise.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setName-java.lang.String-">setName</a></span>(<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">Sets the (preferably application unique) name for this component.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setPermissionResolver-org.apache.shiro.authz.permission.PermissionResolver-">setPermissionResolver</a></span>(<a href="../../../../org/apache/shiro/authz/permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a>&nbsp;permissionResolver)</code>
<div class="block">Sets the specified <tt>PermissionResolver</tt> on this instance.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setRolePermissionResolver-org.apache.shiro.authz.permission.RolePermissionResolver-">setRolePermissionResolver</a></span>(<a href="../../../../org/apache/shiro/authz/permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a>&nbsp;permissionRoleResolver)</code>
<div class="block">Sets the specified <tt>RolePermissionResolver</tt> on this instance.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.shiro.realm.AuthenticatingRealm">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.shiro.realm.<a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a></h3>
<code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#assertCredentialsMatch-org.apache.shiro.authc.AuthenticationToken-org.apache.shiro.authc.AuthenticationInfo-">assertCredentialsMatch</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#clearCachedAuthenticationInfo-org.apache.shiro.subject.PrincipalCollection-">clearCachedAuthenticationInfo</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#doGetAuthenticationInfo-org.apache.shiro.authc.AuthenticationToken-">doGetAuthenticationInfo</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationCache--">getAuthenticationCache</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationCacheKey-org.apache.shiro.authc.AuthenticationToken-">getAuthenticationCacheKey</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationCacheKey-org.apache.shiro.subject.PrincipalCollection-">getAuthenticationCacheKey</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationCacheName--">getAuthenticationCacheName</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationInfo-org.apache.shiro.authc.AuthenticationToken-">getAuthenticationInfo</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationTokenClass--">getAuthenticationTokenClass</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getCredentialsMatcher--">getCredentialsMatcher</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#init--">init</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#isAuthenticationCachingEnabled--">isAuthenticationCachingEnabled</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#isAuthenticationCachingEnabled-org.apache.shiro.authc.AuthenticationToken-org.apache.shiro.authc.AuthenticationInfo-">isAuthenticationCachingEnabled</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setAuthenticationCache-org.apache.shiro.cache.Cache-">setAuthenticationCache</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setAuthenticationCacheName-java.lang.String-">setAuthenticationCacheName</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setAuthenticationCachingEnabled-boolean-">setAuthenticationCachingEnabled</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setAuthenticationTokenClass-java.lang.Class-">setAuthenticationTokenClass</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setCredentialsMatcher-org.apache.shiro.authc.credential.CredentialsMatcher-">setCredentialsMatcher</a>, <a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#supports-org.apache.shiro.authc.AuthenticationToken-">supports</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.shiro.realm.CachingRealm">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.shiro.realm.<a href="../../../../org/apache/shiro/realm/CachingRealm.html" title="class in org.apache.shiro.realm">CachingRealm</a></h3>
<code><a href="../../../../org/apache/shiro/realm/CachingRealm.html#clearCache-org.apache.shiro.subject.PrincipalCollection-">clearCache</a>, <a href="../../../../org/apache/shiro/realm/CachingRealm.html#getAvailablePrincipal-org.apache.shiro.subject.PrincipalCollection-">getAvailablePrincipal</a>, <a href="../../../../org/apache/shiro/realm/CachingRealm.html#getCacheManager--">getCacheManager</a>, <a href="../../../../org/apache/shiro/realm/CachingRealm.html#getName--">getName</a>, <a href="../../../../org/apache/shiro/realm/CachingRealm.html#isCachingEnabled--">isCachingEnabled</a>, <a href="../../../../org/apache/shiro/realm/CachingRealm.html#onLogout-org.apache.shiro.subject.PrincipalCollection-">onLogout</a>, <a href="../../../../org/apache/shiro/realm/CachingRealm.html#setCacheManager-org.apache.shiro.cache.CacheManager-">setCacheManager</a>, <a href="../../../../org/apache/shiro/realm/CachingRealm.html#setCachingEnabled-boolean-">setCachingEnabled</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.shiro.util.Initializable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.shiro.util.<a href="../../../../org/apache/shiro/util/Initializable.html" title="interface in org.apache.shiro.util">Initializable</a></h3>
<code><a href="../../../../org/apache/shiro/util/Initializable.html#init--">init</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="AuthorizingRealm--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AuthorizingRealm</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.90">AuthorizingRealm</a>()</pre>
</li>
</ul>
<a name="AuthorizingRealm-org.apache.shiro.cache.CacheManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AuthorizingRealm</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.94">AuthorizingRealm</a>(<a href="../../../../org/apache/shiro/cache/CacheManager.html" title="interface in org.apache.shiro.cache">CacheManager</a>&nbsp;cacheManager)</pre>
</li>
</ul>
<a name="AuthorizingRealm-org.apache.shiro.authc.credential.CredentialsMatcher-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AuthorizingRealm</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.98">AuthorizingRealm</a>(<a href="../../../../org/apache/shiro/authc/credential/CredentialsMatcher.html" title="interface in org.apache.shiro.authc.credential">CredentialsMatcher</a>&nbsp;matcher)</pre>
</li>
</ul>
<a name="AuthorizingRealm-org.apache.shiro.cache.CacheManager-org.apache.shiro.authc.credential.CredentialsMatcher-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AuthorizingRealm</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.102">AuthorizingRealm</a>(<a href="../../../../org/apache/shiro/cache/CacheManager.html" title="interface in org.apache.shiro.cache">CacheManager</a>&nbsp;cacheManager,
<a href="../../../../org/apache/shiro/authc/credential/CredentialsMatcher.html" title="interface in org.apache.shiro.authc.credential">CredentialsMatcher</a>&nbsp;matcher)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="setName-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.121">setName</a>(<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/util/Nameable.html#setName-java.lang.String-">Nameable</a></code></span></div>
<div class="block">Sets the (preferably application unique) name for this component.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/util/Nameable.html#setName-java.lang.String-">setName</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/util/Nameable.html" title="interface in org.apache.shiro.util">Nameable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#setName-java.lang.String-">setName</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the preferably application unique name for this component.</dd>
</dl>
</li>
</ul>
<a name="setAuthorizationCache-org.apache.shiro.cache.Cache-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAuthorizationCache</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.131">setAuthorizationCache</a>(<a href="../../../../org/apache/shiro/cache/Cache.html" title="interface in org.apache.shiro.cache">Cache</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>,<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&gt;&nbsp;authorizationCache)</pre>
</li>
</ul>
<a name="getAuthorizationCache--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAuthorizationCache</h4>
<pre>public&nbsp;<a href="../../../../org/apache/shiro/cache/Cache.html" title="interface in org.apache.shiro.cache">Cache</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>,<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.135">getAuthorizationCache</a>()</pre>
</li>
</ul>
<a name="getAuthorizationCacheName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAuthorizationCacheName</h4>
<pre>public&nbsp;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.139">getAuthorizationCacheName</a>()</pre>
</li>
</ul>
<a name="setAuthorizationCacheName-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAuthorizationCacheName</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.144">setAuthorizationCacheName</a>(<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;authorizationCacheName)</pre>
</li>
</ul>
<a name="isAuthorizationCachingEnabled--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAuthorizationCachingEnabled</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.156">isAuthorizationCachingEnabled</a>()</pre>
<div class="block">Returns <code>true</code> if authorization caching should be utilized if a <a href="../../../../org/apache/shiro/cache/CacheManager.html" title="interface in org.apache.shiro.cache"><code>CacheManager</code></a> has been
<a href="../../../../org/apache/shiro/realm/CachingRealm.html#setCacheManager-org.apache.shiro.cache.CacheManager-"><code>configured</code></a>, <code>false</code> otherwise.
<p/>
The default value is <code>true</code>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if authorization caching should be utilized, <code>false</code> otherwise.</dd>
</dl>
</li>
</ul>
<a name="setAuthorizationCachingEnabled-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAuthorizationCachingEnabled</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.169">setAuthorizationCachingEnabled</a>(boolean&nbsp;authenticationCachingEnabled)</pre>
<div class="block">Sets whether or not authorization caching should be utilized if a <a href="../../../../org/apache/shiro/cache/CacheManager.html" title="interface in org.apache.shiro.cache"><code>CacheManager</code></a> has been
<a href="../../../../org/apache/shiro/realm/CachingRealm.html#setCacheManager-org.apache.shiro.cache.CacheManager-"><code>configured</code></a>, <code>false</code> otherwise.
<p/>
The default value is <code>true</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>authenticationCachingEnabled</code> - the value to set</dd>
</dl>
</li>
</ul>
<a name="getPermissionResolver--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPermissionResolver</h4>
<pre>public&nbsp;<a href="../../../../org/apache/shiro/authz/permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.176">getPermissionResolver</a>()</pre>
</li>
</ul>
<a name="setPermissionResolver-org.apache.shiro.authz.permission.PermissionResolver-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPermissionResolver</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.180">setPermissionResolver</a>(<a href="../../../../org/apache/shiro/authz/permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a>&nbsp;permissionResolver)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/permission/PermissionResolverAware.html#setPermissionResolver-org.apache.shiro.authz.permission.PermissionResolver-">PermissionResolverAware</a></code></span></div>
<div class="block">Sets the specified <tt>PermissionResolver</tt> on this instance.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/permission/PermissionResolverAware.html#setPermissionResolver-org.apache.shiro.authz.permission.PermissionResolver-">setPermissionResolver</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">PermissionResolverAware</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>permissionResolver</code> - the <tt>PermissionResolver</tt> being set.</dd>
</dl>
</li>
</ul>
<a name="getRolePermissionResolver--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRolePermissionResolver</h4>
<pre>public&nbsp;<a href="../../../../org/apache/shiro/authz/permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.185">getRolePermissionResolver</a>()</pre>
</li>
</ul>
<a name="setRolePermissionResolver-org.apache.shiro.authz.permission.RolePermissionResolver-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRolePermissionResolver</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.189">setRolePermissionResolver</a>(<a href="../../../../org/apache/shiro/authz/permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a>&nbsp;permissionRoleResolver)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/permission/RolePermissionResolverAware.html#setRolePermissionResolver-org.apache.shiro.authz.permission.RolePermissionResolver-">RolePermissionResolverAware</a></code></span></div>
<div class="block">Sets the specified <tt>RolePermissionResolver</tt> on this instance.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/permission/RolePermissionResolverAware.html#setRolePermissionResolver-org.apache.shiro.authz.permission.RolePermissionResolver-">setRolePermissionResolver</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolverAware</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>permissionRoleResolver</code> - the <tt>RolePermissionResolver</tt> being set.</dd>
</dl>
</li>
</ul>
<a name="onInit--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onInit</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.217">onInit</a>()</pre>
<div class="block">Initializes this realm and potentially enables a cache, depending on configuration.
<p/>
When this method is called, the following logic is executed:
<ol>
<li>If the <a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCache-org.apache.shiro.cache.Cache-"><code>cache</code></a> property has been set, it will be
used to cache the AuthorizationInfo objects returned from <a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-"><code>getAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)</code></a>
method invocations.
All future calls to <code>getAuthorizationInfo</code> will attempt to use this cache first
to alleviate any potentially unnecessary calls to an underlying data store.</li>
<li>If the <a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCache-org.apache.shiro.cache.Cache-"><code>cache</code></a> property has <b>not</b> been set,
the <a href="../../../../org/apache/shiro/realm/CachingRealm.html#setCacheManager-org.apache.shiro.cache.CacheManager-"><code>cacheManager</code></a> property will be checked.
If a <code>cacheManager</code> has been set, it will be used to create an authorization
<code>cache</code>, and this newly created cache which will be used as specified in #1.</li>
<li>If neither the <a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCache-org.apache.shiro.cache.Cache-"><code>(org.apache.shiro.cache.Cache) cache</code></a>
or <a href="../../../../org/apache/shiro/realm/CachingRealm.html#setCacheManager-org.apache.shiro.cache.CacheManager-"><code>cacheManager</code></a>
properties are set, caching will be disabled and authorization look-ups will be delegated to
subclass implementations for each authorization check.</li>
</ol></div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#onInit--">onInit</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a></code></dd>
</dl>
</li>
</ul>
<a name="afterCacheManagerSet--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterCacheManagerSet</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.223">afterCacheManagerSet</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#afterCacheManagerSet--">AuthenticatingRealm</a></code></span></div>
<div class="block">This implementation attempts to acquire an authentication cache if one is not already configured.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#afterCacheManagerSet--">afterCacheManagerSet</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a></code></dd>
</dl>
</li>
</ul>
<a name="getAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAuthorizationInfo</h4>
<pre>protected&nbsp;<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.310">getAuthorizationInfo</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</pre>
<div class="block">Returns an account's authorization-specific information for the specified <code>principals</code>,
or <code>null</code> if no account could be found. The resulting <code>AuthorizationInfo</code> object is used
by the other method implementations in this class to automatically perform access control checks for the
corresponding <code>Subject</code>.
<p/>
This implementation obtains the actual <code>AuthorizationInfo</code> object from the subclass's
implementation of
<a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#doGetAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-"><code>doGetAuthorizationInfo</code></a>, and then
caches it for efficient reuse if caching is enabled (see below).
<p/>
Invocations of this method should be thought of as completely orthogonal to acquiring
<a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#getAuthenticationInfo-org.apache.shiro.authc.AuthenticationToken-"><code>authenticationInfo</code></a>, since either could
occur in any order.
<p/>
For example, in &quot;Remember Me&quot; scenarios, the user identity is remembered (and
assumed) for their current session and an authentication attempt during that session might never occur.
But because their identity would be remembered, that is sufficient enough information to call this method to
execute any necessary authorization checks. For this reason, authentication and authorization should be
loosely coupled and not depend on each other.
<h3>Caching</h3>
The <code>AuthorizationInfo</code> values returned from this method are cached for efficient reuse
if caching is enabled. Caching is enabled automatically when an <a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#setAuthorizationCache-org.apache.shiro.cache.Cache-"><code>authorizationCache</code></a>
instance has been explicitly configured, or if a <a href="../../../../org/apache/shiro/realm/CachingRealm.html#setCacheManager-org.apache.shiro.cache.CacheManager-"><code>cacheManager</code></a> has been configured, which
will be used to lazily create the <code>authorizationCache</code> as needed.
<p/>
If caching is enabled, the authorization cache will be checked first and if found, will return the cached
<code>AuthorizationInfo</code> immediately. If caching is disabled, or there is a cache miss, the authorization
info will be looked up from the underlying data store via the
<a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#doGetAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-"><code>doGetAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)</code></a> method, which must be implemented
by subclasses.
<h4>Changed Data</h4>
If caching is enabled and if any authorization data for an account is changed at
runtime, such as adding or removing roles and/or permissions, the subclass implementation should clear the
cached AuthorizationInfo for that account via the
<a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#clearCachedAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-"><code>clearCachedAuthorizationInfo</code></a>
method. This ensures that the next call to <code>getAuthorizationInfo(PrincipalCollection)</code> will
acquire the account's fresh authorization data, where it will then be cached for efficient reuse. This
ensures that stale authorization data will not be reused.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the corresponding Subject's identifying principals with which to look up the Subject's
<code>AuthorizationInfo</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the authorization information for the account associated with the specified <code>principals</code>,
or <code>null</code> if no account could be found.</dd>
</dl>
</li>
</ul>
<a name="getAuthorizationCacheKey-org.apache.shiro.subject.PrincipalCollection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAuthorizationCacheKey</h4>
<pre>protected&nbsp;<a href="http://java.sun.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.355">getAuthorizationCacheKey</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</pre>
</li>
</ul>
<a name="clearCachedAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearCachedAuthorizationInfo</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.377">clearCachedAuthorizationInfo</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</pre>
<div class="block">Clears out the AuthorizationInfo cache entry for the specified account.
<p/>
This method is provided as a convenience to subclasses so they can invalidate a cache entry when they
change an account's authorization data (add/remove roles or permissions) during runtime. Because an account's
AuthorizationInfo can be cached, there needs to be a way to invalidate the cache for only that account so that
subsequent authorization operations don't used the (old) cached value if account data changes.
<p/>
After this method is called, the next authorization check for that same account will result in a call to
<a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#getAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-"><code>getAuthorizationInfo</code></a>, and the
resulting return value will be cached before being returned so it can be reused for later authorization checks.
<p/>
If you wish to clear out all associated cached data (and not just authorization data), use the
<a href="../../../../org/apache/shiro/realm/CachingRealm.html#clearCache-org.apache.shiro.subject.PrincipalCollection-"><code>CachingRealm.clearCache(org.apache.shiro.subject.PrincipalCollection)</code></a> method instead (which will in turn call this
method by default).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the principals of the account for which to clear the cached AuthorizationInfo.</dd>
</dl>
</li>
</ul>
<a name="doGetAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doGetAuthorizationInfo</h4>
<pre>protected abstract&nbsp;<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.399">doGetAuthorizationInfo</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</pre>
<div class="block">Retrieves the AuthorizationInfo for the given principals from the underlying data store. When returning
an instance from this method, you might want to consider using an instance of
<a href="../../../../org/apache/shiro/authz/SimpleAuthorizationInfo.html" title="class in org.apache.shiro.authz"><code>SimpleAuthorizationInfo</code></a>, as it is suitable in most cases.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the primary identifying principals of the AuthorizationInfo that should be retrieved.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the AuthorizationInfo associated with this principals.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/shiro/authz/SimpleAuthorizationInfo.html" title="class in org.apache.shiro.authz"><code>SimpleAuthorizationInfo</code></a></dd>
</dl>
</li>
</ul>
<a name="getPermissions-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPermissions</h4>
<pre>protected&nbsp;<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.402">getPermissions</a>(<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="isPermitted-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.456">isPermitted</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;permission)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">Authorizer</a></code></span></div>
<div class="block">Returns <tt>true</tt> if the corresponding subject/user is permitted to perform an action or access a resource
summarized by the specified permission string.
<p>This is an overloaded method for the corresponding type-safe <a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz"><code>Permission</code></a> variant.
Please see the class-level JavaDoc for more information on these String-based permission methods.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permission</code> - the String representation of a Permission that is being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the corresponding Subject/user is permitted, false otherwise.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-org.apache.shiro.authz.Permission-"><code>Authorizer.isPermitted(PrincipalCollection principals,Permission permission)</code></a></dd>
</dl>
</li>
</ul>
<a name="isPermitted-org.apache.shiro.subject.PrincipalCollection-org.apache.shiro.authz.Permission-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.461">isPermitted</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-org.apache.shiro.authz.Permission-">Authorizer</a></code></span></div>
<div class="block">Returns <tt>true</tt> if the corresponding subject/user is permitted to perform an action or access a resource
summarized by the specified permission.
<p>More specifically, this method determines if any <tt>Permission</tt>s associated
with the subject <a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>imply</code></a> the specified permission.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-org.apache.shiro.authz.Permission-">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permission</code> - the permission that is being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the corresponding Subject/user is permitted, false otherwise.</dd>
</dl>
</li>
</ul>
<a name="isPermitted-org.apache.shiro.authz.Permission-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre>protected&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.467">isPermitted</a>(<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="isPermitted-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre>public&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.479">isPermitted</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;permissions)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">Authorizer</a></code></span></div>
<div class="block">Checks if the corresponding Subject implies the given permission strings and returns a boolean array
indicating which permissions are implied.
<p>This is an overloaded method for the corresponding type-safe <a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz"><code>Permission</code></a> variant.
Please see the class-level JavaDoc for more information on these String-based permission methods.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectIdentifier</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the String representations of the Permissions that are being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array of booleans whose indices correspond to the index of the
permissions in the given list. A true value at an index indicates the user is permitted for
for the associated <tt>Permission</tt> string in the list. A false value at an index
indicates otherwise.</dd>
</dl>
</li>
</ul>
<a name="isPermitted-org.apache.shiro.subject.PrincipalCollection-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre>public&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.487">isPermitted</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="http://java.sun.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.util.List-">Authorizer</a></code></span></div>
<div class="block">Checks if the corresponding Subject/user implies the given Permissions and returns a boolean array indicating
which permissions are implied.
<p>More specifically, this method should determine if each <tt>Permission</tt> in
the array is <a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>implied</code></a> by permissions
already associated with the subject.
<p>This is primarily a performance-enhancing method to help reduce the number of
<a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.lang.String-"><code>Authorizer.isPermitted(org.apache.shiro.subject.PrincipalCollection, java.lang.String)</code></a> invocations over the wire in client/server systems.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermitted-org.apache.shiro.subject.PrincipalCollection-java.util.List-">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the permissions that are being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array of booleans whose indices correspond to the index of the
permissions in the given list. A true value at an index indicates the user is permitted for
for the associated <tt>Permission</tt> object in the list. A false value at an index
indicates otherwise.</dd>
</dl>
</li>
</ul>
<a name="isPermitted-java.util.List-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre>protected&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.492">isPermitted</a>(<a href="http://java.sun.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="isPermittedAll-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermittedAll</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.507">isPermittedAll</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;permissions)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermittedAll-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">Authorizer</a></code></span></div>
<div class="block">Returns <tt>true</tt> if the corresponding Subject/user implies all of the specified permission strings,
<tt>false</tt> otherwise.
<p>This is an overloaded method for the corresponding type-safe <a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz"><code>Permission</code></a> variant.
Please see the class-level JavaDoc for more information on these String-based permission methods.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermittedAll-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">isPermittedAll</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectIdentifier</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the String representations of the Permissions that are being checked.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the user has all of the specified permissions, false otherwise.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermittedAll-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-"><code>Authorizer.isPermittedAll(PrincipalCollection,Collection)</code></a></dd>
</dl>
</li>
</ul>
<a name="isPermittedAll-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermittedAll</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.518">isPermittedAll</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermittedAll-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">Authorizer</a></code></span></div>
<div class="block">Returns <tt>true</tt> if the corresponding Subject/user implies all of the specified permissions, <tt>false</tt>
otherwise.
<p>More specifically, this method determines if all of the given <tt>Permission</tt>s are
<a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>implied by</code></a> permissions already associated with the subject.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#isPermittedAll-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">isPermittedAll</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principal</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the permissions to check.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the user has all of the specified permissions, false otherwise.</dd>
</dl>
</li>
</ul>
<a name="isPermittedAll-java.util.Collection-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermittedAll</h4>
<pre>protected&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.523">isPermittedAll</a>(<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="checkPermission-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermission</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.534">checkPermission</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;permission)
throws <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkPermission-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">Authorizer</a></code></span></div>
<div class="block">Ensures the corresponding Subject/user implies the specified permission String.
<p>If the subject's existing associated permissions do not <a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>Permission.implies(Permission)</code></a> imply}
the given permission, an <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> will be thrown.
<p>This is an overloaded method for the corresponding type-safe <a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz"><code>Permission</code></a> variant.
Please see the class-level JavaDoc for more information on these String-based permission methods.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkPermission-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">checkPermission</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectIdentifier</code> - the application-specific subject/user identifier.</dd>
<dd><code>permission</code> - the String representation of the Permission to check.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have the permission.</dd>
</dl>
</li>
</ul>
<a name="checkPermission-org.apache.shiro.subject.PrincipalCollection-org.apache.shiro.authz.Permission-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermission</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.539">checkPermission</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)
throws <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkPermission-org.apache.shiro.subject.PrincipalCollection-org.apache.shiro.authz.Permission-">Authorizer</a></code></span></div>
<div class="block">Ensures a subject/user <a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>Permission.implies(Permission)</code></a> implies} the specified <tt>Permission</tt>.
If the subject's existing associated permissions do not <a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>Permission.implies(Permission)</code></a> imply}
the given permission, an <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> will be thrown.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkPermission-org.apache.shiro.subject.PrincipalCollection-org.apache.shiro.authz.Permission-">checkPermission</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principal</code> - the application-specific subject/user identifier.</dd>
<dd><code>permission</code> - the Permission to check.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have the permission.</dd>
</dl>
</li>
</ul>
<a name="checkPermission-org.apache.shiro.authz.Permission-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermission</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.544">checkPermission</a>(<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="checkPermissions-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermissions</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.551">checkPermissions</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;permissions)
throws <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkPermissions-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">Authorizer</a></code></span></div>
<div class="block">Ensures the corresponding Subject/user
<a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>implies</code></a> all of the
specified permission strings.
If the subject's existing associated permissions do not
<a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>imply</code></a> all of the given permissions,
an <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> will be thrown.
<p>This is an overloaded method for the corresponding type-safe <a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz"><code>Permission</code></a> variant.
Please see the class-level JavaDoc for more information on these String-based permission methods.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkPermissions-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">checkPermissions</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectIdentifier</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the string representations of Permissions to check.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the given permissions.</dd>
</dl>
</li>
</ul>
<a name="checkPermissions-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermissions</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.559">checkPermissions</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)
throws <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkPermissions-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">Authorizer</a></code></span></div>
<div class="block">Ensures the corresponding Subject/user
<a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>implies</code></a> all of the
specified permission strings.
If the subject's existing associated permissions do not
<a href="../../../../org/apache/shiro/authz/Permission.html#implies-org.apache.shiro.authz.Permission-"><code>imply</code></a> all of the given permissions,
an <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> will be thrown.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkPermissions-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">checkPermissions</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principal</code> - the application-specific subject/user identifier.</dd>
<dd><code>permissions</code> - the Permissions to check.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the given permissions.</dd>
</dl>
</li>
</ul>
<a name="checkPermissions-java.util.Collection-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermissions</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.564">checkPermissions</a>(<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../org/apache/shiro/authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="hasRole-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRole</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.572">hasRole</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;roleIdentifier)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#hasRole-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">Authorizer</a></code></span></div>
<div class="block">Returns <tt>true</tt> if the corresponding Subject/user has the specified role, <tt>false</tt> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#hasRole-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">hasRole</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principal</code> - the application-specific subject/user identifier.</dd>
<dd><code>roleIdentifier</code> - the application-specific role identifier (usually a role id or role name).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><tt>true</tt> if the corresponding subject has the specified role, <tt>false</tt> otherwise.</dd>
</dl>
</li>
</ul>
<a name="hasRole-java.lang.String-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRole</h4>
<pre>protected&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.577">hasRole</a>(<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;roleIdentifier,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="hasRoles-org.apache.shiro.subject.PrincipalCollection-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRoles</h4>
<pre>public&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.581">hasRoles</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roleIdentifiers)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#hasRoles-org.apache.shiro.subject.PrincipalCollection-java.util.List-">Authorizer</a></code></span></div>
<div class="block">Checks if the corresponding Subject/user has the specified roles, returning a boolean array indicating
which roles are associated with the given subject.
<p>This is primarily a performance-enhancing method to help reduce the number of
<a href="../../../../org/apache/shiro/authz/Authorizer.html#hasRole-org.apache.shiro.subject.PrincipalCollection-java.lang.String-"><code>Authorizer.hasRole(org.apache.shiro.subject.PrincipalCollection, java.lang.String)</code></a> invocations over the wire in client/server systems.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#hasRoles-org.apache.shiro.subject.PrincipalCollection-java.util.List-">hasRoles</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principal</code> - the application-specific subject/user identifier.</dd>
<dd><code>roleIdentifiers</code> - the application-specific role identifiers to check (usually role ids or role names).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array of booleans whose indices correspond to the index of the
roles in the given identifiers. A true value indicates the user has the
role at that index. False indicates the user does not have the role at that index.</dd>
</dl>
</li>
</ul>
<a name="hasRoles-java.util.List-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRoles</h4>
<pre>protected&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.590">hasRoles</a>(<a href="http://java.sun.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roleIdentifiers,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="hasAllRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasAllRoles</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.605">hasAllRoles</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roleIdentifiers)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#hasAllRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">Authorizer</a></code></span></div>
<div class="block">Returns <tt>true</tt> if the corresponding Subject/user has all of the specified roles, <tt>false</tt> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#hasAllRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">hasAllRoles</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principal</code> - the application-specific subject/user identifier.</dd>
<dd><code>roleIdentifiers</code> - the application-specific role identifiers to check (usually role ids or role names).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the user has all the roles, false otherwise.</dd>
</dl>
</li>
</ul>
<a name="checkRole-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRole</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.621">checkRole</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;role)
throws <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkRole-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">Authorizer</a></code></span></div>
<div class="block">Asserts the corresponding Subject/user has the specified role by returning quietly if they do or throwing an
<a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkRole-org.apache.shiro.subject.PrincipalCollection-java.lang.String-">checkRole</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principal</code> - the application-specific subject/user identifier.</dd>
<dd><code>role</code> - the application-specific role identifier (usually a role id or role name ).</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have the role.</dd>
</dl>
</li>
</ul>
<a name="checkRole-java.lang.String-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRole</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.626">checkRole</a>(<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;role,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="checkRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRoles</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.633">checkRoles</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roles)
throws <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">Authorizer</a></code></span></div>
<div class="block">Asserts the corresponding Subject/user has all of the specified roles by returning quietly if they do or
throwing an <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-">checkRoles</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principal</code> - the application-specific subject/user identifier.</dd>
<dd><code>roles</code> - the application-specific role identifiers to check (usually role ids or role names).</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the specified roles.</dd>
</dl>
</li>
</ul>
<a name="checkRoles-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRoles</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.638">checkRoles</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;roles)
throws <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkRoles-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">Authorizer</a></code></span></div>
<div class="block">Same as <a href="../../../../org/apache/shiro/authz/Authorizer.html#checkRoles-org.apache.shiro.subject.PrincipalCollection-java.util.Collection-"><code>checkRoles(PrincipalCollection subjectPrincipal, Collection&lt;String&gt; roleIdentifiers)</code></a> but doesn't require a collection
as an argument.
Asserts the corresponding Subject/user has all of the specified roles by returning quietly if they do or
throwing an <a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/Authorizer.html#checkRoles-org.apache.shiro.subject.PrincipalCollection-java.lang.String...-">checkRoles</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/shiro/authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principal</code> - the application-specific subject/user identifier.</dd>
<dd><code>roles</code> - the application-specific role identifiers to check (usually role ids or role names).</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/authz/AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the specified roles.</dd>
</dl>
</li>
</ul>
<a name="checkRoles-java.util.Collection-org.apache.shiro.authz.AuthorizationInfo-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRoles</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.642">checkRoles</a>(<a href="http://java.sun.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://java.sun.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;roles,
<a href="../../../../org/apache/shiro/authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a name="doClearCache-org.apache.shiro.subject.PrincipalCollection-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>doClearCache</h4>
<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.661">doClearCache</a>(<a href="../../../../org/apache/shiro/subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</pre>
<div class="block">Calls <code>super.doClearCache</code> to ensure any cached authentication data is removed and then calls
<a href="../../../../org/apache/shiro/realm/AuthorizingRealm.html#clearCachedAuthorizationInfo-org.apache.shiro.subject.PrincipalCollection-"><code>clearCachedAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)</code></a> to remove any cached
authorization data.
<p/>
If overriding in a subclass, be sure to call <code>super.doClearCache</code> to ensure this behavior is maintained.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html#doClearCache-org.apache.shiro.subject.PrincipalCollection-">doClearCache</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>principals</code> - the principals of the account for which to clear any cached AuthorizationInfo</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.2</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/AuthorizingRealm.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/shiro/realm/AuthenticatingRealm.html" title="class in org.apache.shiro.realm"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/shiro/realm/CachingRealm.html" title="class in org.apache.shiro.realm"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/shiro/realm/AuthorizingRealm.html" target="_top">Frames</a></li>
<li><a href="AuthorizingRealm.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2004&#x2013;2016 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>