blob: bbc392b1159696adc74afc6da4a342e732931e6d [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="fr">
<head>
<!-- Generated by javadoc (11.0.4) on Fri Jan 24 17:11:59 CET 2020 -->
<title>AuthorizingRealm (Apache Shiro :: Core 1.5.0 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2020-01-24">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="AuthorizingRealm (Apache Shiro :: Core 1.5.0 API)";
}
}
catch(err) {
}
//-->
var data = {"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";
var pathtoroot = "../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.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" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</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 id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.shiro.realm</a></div>
<h2 title="Class AuthorizingRealm" class="title">Class AuthorizingRealm</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="CachingRealm.html" title="class in org.apache.shiro.realm">org.apache.shiro.realm.CachingRealm</a></li>
<li>
<ul class="inheritance">
<li><a href="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><code><a href="../authc/LogoutAware.html" title="interface in org.apache.shiro.authc">LogoutAware</a></code>, <code><a href="../authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a></code>, <code><a href="../authz/permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">PermissionResolverAware</a></code>, <code><a href="../authz/permission/RolePermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolverAware</a></code>, <code>org.apache.shiro.cache.CacheManagerAware</code>, <code><a href="Realm.html" title="interface in org.apache.shiro.realm">Realm</a></code>, <code>org.apache.shiro.util.Initializable</code>, <code>org.apache.shiro.util.Nameable</code></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><code><a href="ldap/AbstractLdapRealm.html" title="class in org.apache.shiro.realm.ldap">AbstractLdapRealm</a></code>, <code><a href="ldap/DefaultLdapRealm.html" title="class in org.apache.shiro.realm.ldap">DefaultLdapRealm</a></code>, <code><a href="jdbc/JdbcRealm.html" title="class in org.apache.shiro.realm.jdbc">JdbcRealm</a></code>, <code><a href="SimpleAccountRealm.html" title="class in org.apache.shiro.realm">SimpleAccountRealm</a></code></dd>
</dl>
<hr>
<pre>public abstract class <a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.56">AuthorizingRealm</a>
extends <a href="AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a>
implements <a href="../authz/Authorizer.html" title="interface in org.apache.shiro.authz">Authorizer</a>, org.apache.shiro.util.Initializable, <a href="../authz/permission/PermissionResolverAware.html" title="interface in org.apache.shiro.authz.permission">PermissionResolverAware</a>, <a href="../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="#getAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)"><code>getAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)</code></a> method returns an
<a href="../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="../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="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="../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="../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 ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">AuthorizingRealm</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.apache.shiro.authc.credential.CredentialsMatcher)">AuthorizingRealm</a></span>&#8203;(<a href="../authc/credential/CredentialsMatcher.html" title="interface in org.apache.shiro.authc.credential">CredentialsMatcher</a>&nbsp;matcher)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.apache.shiro.cache.CacheManager)">AuthorizingRealm</a></span>&#8203;(org.apache.shiro.cache.CacheManager&nbsp;cacheManager)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.apache.shiro.cache.CacheManager,org.apache.shiro.authc.credential.CredentialsMatcher)">AuthorizingRealm</a></span>&#8203;(org.apache.shiro.cache.CacheManager&nbsp;cacheManager,
<a href="../authc/credential/CredentialsMatcher.html" title="interface in org.apache.shiro.authc.credential">CredentialsMatcher</a>&nbsp;matcher)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<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="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#afterCacheManagerSet()">afterCacheManagerSet</a></span>()</code></th>
<td class="colLast">
<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>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermission(org.apache.shiro.authz.Permission,org.apache.shiro.authz.AuthorizationInfo)">checkPermission</a></span>&#8203;(<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermission(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">checkPermission</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;permission)</code></th>
<td class="colLast">
<div class="block">Ensures the corresponding Subject/user implies the specified permission String.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermission(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">checkPermission</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)</code></th>
<td class="colLast">
<div class="block">Ensures a subject/user <a href="../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="i4" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermissions(java.util.Collection,org.apache.shiro.authz.AuthorizationInfo)">checkPermissions</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">checkPermissions</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</code></th>
<td class="colLast">
<div class="block">Ensures the corresponding Subject/user
<a href="../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>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">checkPermissions</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</code></th>
<td class="colLast">
<div class="block">Ensures the corresponding Subject/user
<a href="../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>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkRole(java.lang.String,org.apache.shiro.authz.AuthorizationInfo)">checkRole</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;role,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">checkRole</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;role)</code></th>
<td class="colLast">
<div class="block">Asserts the corresponding Subject/user has the specified role by returning quietly if they do or throwing an
<a href="../authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkRoles(java.util.Collection,org.apache.shiro.authz.AuthorizationInfo)">checkRoles</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roles,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">checkRoles</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;roles)</code></th>
<td class="colLast">
<div class="block">Same as <a href="../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="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">checkRoles</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roles)</code></th>
<td class="colLast">
<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="../authz/AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#clearCachedAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">clearCachedAuthorizationInfo</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code></th>
<td class="colLast">
<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>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doClearCache(org.apache.shiro.subject.PrincipalCollection)">doClearCache</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code></th>
<td class="colLast">
<div class="block">Calls <code>super.doClearCache</code> to ensure any cached authentication data is removed and then calls
<a href="#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="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doGetAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">doGetAuthorizationInfo</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code></th>
<td class="colLast">
<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>org.apache.shiro.cache.Cache&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>,&#8203;<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAuthorizationCache()">getAuthorizationCache</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAuthorizationCacheKey(org.apache.shiro.subject.PrincipalCollection)">getAuthorizationCacheKey</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAuthorizationCacheName()">getAuthorizationCacheName</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>protected <a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">getAuthorizationInfo</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</code></th>
<td class="colLast">
<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="../authz/permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPermissionResolver()">getPermissionResolver</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPermissions(org.apache.shiro.authz.AuthorizationInfo)">getPermissions</a></span>&#8203;(<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="../authz/permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRolePermissionResolver()">getRolePermissionResolver</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasAllRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">hasAllRoles</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers)</code></th>
<td class="colLast">
<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>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasRole(java.lang.String,org.apache.shiro.authz.AuthorizationInfo)">hasRole</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;roleIdentifier,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">hasRole</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;roleIdentifier)</code></th>
<td class="colLast">
<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="i25" class="rowColor">
<td class="colFirst"><code>protected boolean[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasRoles(java.util.List,org.apache.shiro.authz.AuthorizationInfo)">hasRoles</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>boolean[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasRoles(org.apache.shiro.subject.PrincipalCollection,java.util.List)">hasRoles</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers)</code></th>
<td class="colLast">
<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>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAuthorizationCachingEnabled()">isAuthorizationCachingEnabled</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns <code>true</code> if authorization caching should be utilized if a <code>CacheManager</code> has been
<a href="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>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(java.util.List,org.apache.shiro.authz.AuthorizationInfo)">isPermitted</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(org.apache.shiro.authz.Permission,org.apache.shiro.authz.AuthorizationInfo)">isPermitted</a></span>&#8203;(<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">isPermitted</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;permission)</code></th>
<td class="colLast">
<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="i31" class="rowColor">
<td class="colFirst"><code>boolean[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">isPermitted</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</code></th>
<td class="colLast">
<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="i32" class="altColor">
<td class="colFirst"><code>boolean[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.util.List)">isPermitted</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</code></th>
<td class="colLast">
<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="i33" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">isPermitted</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)</code></th>
<td class="colLast">
<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="i34" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermittedAll(java.util.Collection,org.apache.shiro.authz.AuthorizationInfo)">isPermittedAll</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">isPermittedAll</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</code></th>
<td class="colLast">
<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="i36" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">isPermittedAll</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</code></th>
<td class="colLast">
<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="i37" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#onInit()">onInit</a></span>()</code></th>
<td class="colLast">
<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>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAuthorizationCache(org.apache.shiro.cache.Cache)">setAuthorizationCache</a></span>&#8203;(org.apache.shiro.cache.Cache&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>,&#8203;<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&gt;&nbsp;authorizationCache)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAuthorizationCacheName(java.lang.String)">setAuthorizationCacheName</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;authorizationCacheName)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAuthorizationCachingEnabled(boolean)">setAuthorizationCachingEnabled</a></span>&#8203;(boolean&nbsp;authenticationCachingEnabled)</code></th>
<td class="colLast">
<div class="block">Sets whether or not authorization caching should be utilized if a <code>CacheManager</code> has been
<a href="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>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setName(java.lang.String)">setName</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)">setPermissionResolver</a></span>&#8203;(<a href="../authz/permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission">PermissionResolver</a>&nbsp;permissionResolver)</code></th>
<td class="colLast">
<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>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)">setRolePermissionResolver</a></span>&#8203;(<a href="../authz/permission/RolePermissionResolver.html" title="interface in org.apache.shiro.authz.permission">RolePermissionResolver</a>&nbsp;permissionRoleResolver)</code></th>
<td class="colLast">
<div class="block">Sets the specified <tt>RolePermissionResolver</tt> on this instance.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.shiro.realm.AuthenticatingRealm">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.shiro.realm.<a href="AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a></h3>
<code><a href="AuthenticatingRealm.html#assertCredentialsMatch(org.apache.shiro.authc.AuthenticationToken,org.apache.shiro.authc.AuthenticationInfo)">assertCredentialsMatch</a>, <a href="AuthenticatingRealm.html#clearCachedAuthenticationInfo(org.apache.shiro.subject.PrincipalCollection)">clearCachedAuthenticationInfo</a>, <a href="AuthenticatingRealm.html#doGetAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken)">doGetAuthenticationInfo</a>, <a href="AuthenticatingRealm.html#getAuthenticationCache()">getAuthenticationCache</a>, <a href="AuthenticatingRealm.html#getAuthenticationCacheKey(org.apache.shiro.authc.AuthenticationToken)">getAuthenticationCacheKey</a>, <a href="AuthenticatingRealm.html#getAuthenticationCacheKey(org.apache.shiro.subject.PrincipalCollection)">getAuthenticationCacheKey</a>, <a href="AuthenticatingRealm.html#getAuthenticationCacheName()">getAuthenticationCacheName</a>, <a href="AuthenticatingRealm.html#getAuthenticationInfo(org.apache.shiro.authc.AuthenticationToken)">getAuthenticationInfo</a>, <a href="AuthenticatingRealm.html#getAuthenticationTokenClass()">getAuthenticationTokenClass</a>, <a href="AuthenticatingRealm.html#getCredentialsMatcher()">getCredentialsMatcher</a>, <a href="AuthenticatingRealm.html#init()">init</a>, <a href="AuthenticatingRealm.html#isAuthenticationCachingEnabled()">isAuthenticationCachingEnabled</a>, <a href="AuthenticatingRealm.html#isAuthenticationCachingEnabled(org.apache.shiro.authc.AuthenticationToken,org.apache.shiro.authc.AuthenticationInfo)">isAuthenticationCachingEnabled</a>, <a href="AuthenticatingRealm.html#setAuthenticationCache(org.apache.shiro.cache.Cache)">setAuthenticationCache</a>, <a href="AuthenticatingRealm.html#setAuthenticationCacheName(java.lang.String)">setAuthenticationCacheName</a>, <a href="AuthenticatingRealm.html#setAuthenticationCachingEnabled(boolean)">setAuthenticationCachingEnabled</a>, <a href="AuthenticatingRealm.html#setAuthenticationTokenClass(java.lang.Class)">setAuthenticationTokenClass</a>, <a href="AuthenticatingRealm.html#setCredentialsMatcher(org.apache.shiro.authc.credential.CredentialsMatcher)">setCredentialsMatcher</a>, <a href="AuthenticatingRealm.html#supports(org.apache.shiro.authc.AuthenticationToken)">supports</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.shiro.realm.CachingRealm">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.shiro.realm.<a href="CachingRealm.html" title="class in org.apache.shiro.realm">CachingRealm</a></h3>
<code><a href="CachingRealm.html#clearCache(org.apache.shiro.subject.PrincipalCollection)">clearCache</a>, <a href="CachingRealm.html#getAvailablePrincipal(org.apache.shiro.subject.PrincipalCollection)">getAvailablePrincipal</a>, <a href="CachingRealm.html#getCacheManager()">getCacheManager</a>, <a href="CachingRealm.html#getName()">getName</a>, <a href="CachingRealm.html#isCachingEnabled()">isCachingEnabled</a>, <a href="CachingRealm.html#onLogout(org.apache.shiro.subject.PrincipalCollection)">onLogout</a>, <a href="CachingRealm.html#setCacheManager(org.apache.shiro.cache.CacheManager)">setCacheManager</a>, <a href="CachingRealm.html#setCachingEnabled(boolean)">setCachingEnabled</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.shiro.util.Initializable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.shiro.util.Initializable</h3>
<code>init</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>AuthorizingRealm</h4>
<pre>public&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.91">AuthorizingRealm</a>()</pre>
</li>
</ul>
<a id="&lt;init&gt;(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.95">AuthorizingRealm</a>&#8203;(org.apache.shiro.cache.CacheManager&nbsp;cacheManager)</pre>
</li>
</ul>
<a id="&lt;init&gt;(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.99">AuthorizingRealm</a>&#8203;(<a href="../authc/credential/CredentialsMatcher.html" title="interface in org.apache.shiro.authc.credential">CredentialsMatcher</a>&nbsp;matcher)</pre>
</li>
</ul>
<a id="&lt;init&gt;(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.103">AuthorizingRealm</a>&#8203;(org.apache.shiro.cache.CacheManager&nbsp;cacheManager,
<a href="../authc/credential/CredentialsMatcher.html" title="interface in org.apache.shiro.authc.credential">CredentialsMatcher</a>&nbsp;matcher)</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="setName(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.122">setName</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>setName</code>&nbsp;in interface&nbsp;<code>org.apache.shiro.util.Nameable</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="AuthenticatingRealm.html#setName(java.lang.String)">setName</a></code>&nbsp;in class&nbsp;<code><a href="AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a></code></dd>
</dl>
</li>
</ul>
<a id="setAuthorizationCache(org.apache.shiro.cache.Cache)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAuthorizationCache</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.132">setAuthorizationCache</a>&#8203;(org.apache.shiro.cache.Cache&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>,&#8203;<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&gt;&nbsp;authorizationCache)</pre>
</li>
</ul>
<a id="getAuthorizationCache()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAuthorizationCache</h4>
<pre class="methodSignature">public&nbsp;org.apache.shiro.cache.Cache&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>,&#8203;<a href="../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.136">getAuthorizationCache</a>()</pre>
</li>
</ul>
<a id="getAuthorizationCacheName()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAuthorizationCacheName</h4>
<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.140">getAuthorizationCacheName</a>()</pre>
</li>
</ul>
<a id="setAuthorizationCacheName(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAuthorizationCacheName</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.144">setAuthorizationCacheName</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;authorizationCacheName)</pre>
</li>
</ul>
<a id="isAuthorizationCachingEnabled()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAuthorizationCachingEnabled</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.157">isAuthorizationCachingEnabled</a>()</pre>
<div class="block">Returns <code>true</code> if authorization caching should be utilized if a <code>CacheManager</code> has been
<a href="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 id="setAuthorizationCachingEnabled(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAuthorizationCachingEnabled</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.169">setAuthorizationCachingEnabled</a>&#8203;(boolean&nbsp;authenticationCachingEnabled)</pre>
<div class="block">Sets whether or not authorization caching should be utilized if a <code>CacheManager</code> has been
<a href="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 id="getPermissionResolver()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPermissionResolver</h4>
<pre class="methodSignature">public&nbsp;<a href="../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.177">getPermissionResolver</a>()</pre>
</li>
</ul>
<a id="setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPermissionResolver</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.181">setPermissionResolver</a>&#8203;(<a href="../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="../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="../authz/permission/PermissionResolverAware.html#setPermissionResolver(org.apache.shiro.authz.permission.PermissionResolver)">setPermissionResolver</a></code>&nbsp;in interface&nbsp;<code><a href="../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 id="getRolePermissionResolver()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRolePermissionResolver</h4>
<pre class="methodSignature">public&nbsp;<a href="../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.186">getRolePermissionResolver</a>()</pre>
</li>
</ul>
<a id="setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRolePermissionResolver</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.190">setRolePermissionResolver</a>&#8203;(<a href="../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="../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="../authz/permission/RolePermissionResolverAware.html#setRolePermissionResolver(org.apache.shiro.authz.permission.RolePermissionResolver)">setRolePermissionResolver</a></code>&nbsp;in interface&nbsp;<code><a href="../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 id="onInit()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onInit</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.218">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="#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="#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="#setAuthorizationCache(org.apache.shiro.cache.Cache)"><code>cache</code></a> property has <b>not</b> been set,
the <a href="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="#setAuthorizationCache(org.apache.shiro.cache.Cache)"><code>(org.apache.shiro.cache.Cache) cache</code></a>
or <a href="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="AuthenticatingRealm.html#onInit()">onInit</a></code>&nbsp;in class&nbsp;<code><a href="AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a></code></dd>
</dl>
</li>
</ul>
<a id="afterCacheManagerSet()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterCacheManagerSet</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.224">afterCacheManagerSet</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="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="AuthenticatingRealm.html#afterCacheManagerSet()">afterCacheManagerSet</a></code>&nbsp;in class&nbsp;<code><a href="AuthenticatingRealm.html" title="class in org.apache.shiro.realm">AuthenticatingRealm</a></code></dd>
</dl>
</li>
</ul>
<a id="getAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAuthorizationInfo</h4>
<pre class="methodSignature">protected&nbsp;<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.311">getAuthorizationInfo</a>&#8203;(<a href="../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="#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="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="#setAuthorizationCache(org.apache.shiro.cache.Cache)"><code>authorizationCache</code></a>
instance has been explicitly configured, or if a <a href="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="#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="#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 id="getAuthorizationCacheKey(org.apache.shiro.subject.PrincipalCollection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAuthorizationCacheKey</h4>
<pre class="methodSignature">protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.356">getAuthorizationCacheKey</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals)</pre>
</li>
</ul>
<a id="clearCachedAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearCachedAuthorizationInfo</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.378">clearCachedAuthorizationInfo</a>&#8203;(<a href="../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="#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="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 id="doGetAuthorizationInfo(org.apache.shiro.subject.PrincipalCollection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doGetAuthorizationInfo</h4>
<pre class="methodSignature">protected abstract&nbsp;<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.400">doGetAuthorizationInfo</a>&#8203;(<a href="../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="../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="../authz/SimpleAuthorizationInfo.html" title="class in org.apache.shiro.authz"><code>SimpleAuthorizationInfo</code></a></dd>
</dl>
</li>
</ul>
<a id="getPermissions(org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPermissions</h4>
<pre class="methodSignature">protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../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.403">getPermissions</a>&#8203;(<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.459">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;permission)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../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="../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="../authz/Authorizer.html#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="../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="../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 id="isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.464">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="../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="../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="../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="../authz/Authorizer.html#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="../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 id="isPermitted(org.apache.shiro.authz.Permission,org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.470">isPermitted</a>&#8203;(<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">public&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.482">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../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="../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="../authz/Authorizer.html#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="../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 id="isPermitted(org.apache.shiro.subject.PrincipalCollection,java.util.List)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">public&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.490">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principals,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../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="../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="../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="../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="../authz/Authorizer.html#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.util.List)">isPermitted</a></code>&nbsp;in interface&nbsp;<code><a href="../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 id="isPermitted(java.util.List,org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">protected&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.495">isPermitted</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermittedAll</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.510">isPermittedAll</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../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="../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="../authz/Authorizer.html#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">isPermittedAll</a></code>&nbsp;in interface&nbsp;<code><a href="../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="../authz/Authorizer.html#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)"><code>Authorizer.isPermittedAll(PrincipalCollection,Collection)</code></a></dd>
</dl>
</li>
</ul>
<a id="isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermittedAll</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.521">isPermittedAll</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../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="../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="../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="../authz/Authorizer.html#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">isPermittedAll</a></code>&nbsp;in interface&nbsp;<code><a href="../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 id="isPermittedAll(java.util.Collection,org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermittedAll</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.526">isPermittedAll</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="checkPermission(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermission</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.537">checkPermission</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;permission)
throws <a href="../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="../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="../authz/Permission.html#implies(org.apache.shiro.authz.Permission)"><code>Permission.implies(Permission)</code></a> imply}
the given permission, an <a href="../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="../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="../authz/Authorizer.html#checkPermission(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">checkPermission</a></code>&nbsp;in interface&nbsp;<code><a href="../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="../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 id="checkPermission(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermission</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.542">checkPermission</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)
throws <a href="../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="../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="../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="../authz/Permission.html#implies(org.apache.shiro.authz.Permission)"><code>Permission.implies(Permission)</code></a> imply}
the given permission, an <a href="../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="../authz/Authorizer.html#checkPermission(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)">checkPermission</a></code>&nbsp;in interface&nbsp;<code><a href="../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="../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 id="checkPermission(org.apache.shiro.authz.Permission,org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermission</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.547">checkPermission</a>&#8203;(<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermissions</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.554">checkPermissions</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectIdentifier,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;permissions)
throws <a href="../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="../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="../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="../authz/Permission.html#implies(org.apache.shiro.authz.Permission)"><code>imply</code></a> all of the given permissions,
an <a href="../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="../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="../authz/Authorizer.html#checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">checkPermissions</a></code>&nbsp;in interface&nbsp;<code><a href="../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="../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 id="checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermissions</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.562">checkPermissions</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)
throws <a href="../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="../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="../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="../authz/Permission.html#implies(org.apache.shiro.authz.Permission)"><code>imply</code></a> all of the given permissions,
an <a href="../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="../authz/Authorizer.html#checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">checkPermissions</a></code>&nbsp;in interface&nbsp;<code><a href="../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="../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 id="checkPermissions(java.util.Collection,org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermissions</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.567">checkPermissions</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="../authz/Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRole</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.575">hasRole</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;roleIdentifier)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../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="../authz/Authorizer.html#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">hasRole</a></code>&nbsp;in interface&nbsp;<code><a href="../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 id="hasRole(java.lang.String,org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRole</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.580">hasRole</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;roleIdentifier,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="hasRoles(org.apache.shiro.subject.PrincipalCollection,java.util.List)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRoles</h4>
<pre class="methodSignature">public&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.584">hasRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../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="../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="../authz/Authorizer.html#hasRoles(org.apache.shiro.subject.PrincipalCollection,java.util.List)">hasRoles</a></code>&nbsp;in interface&nbsp;<code><a href="../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 id="hasRoles(java.util.List,org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRoles</h4>
<pre class="methodSignature">protected&nbsp;boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.593">hasRoles</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="hasAllRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasAllRoles</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.608">hasAllRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roleIdentifiers)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../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="../authz/Authorizer.html#hasAllRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">hasAllRoles</a></code>&nbsp;in interface&nbsp;<code><a href="../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 id="checkRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRole</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.624">checkRole</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;role)
throws <a href="../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="../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="../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="../authz/Authorizer.html#checkRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">checkRole</a></code>&nbsp;in interface&nbsp;<code><a href="../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="../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 id="checkRole(java.lang.String,org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRole</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.629">checkRole</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;role,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="checkRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRoles</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.636">checkRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roles)
throws <a href="../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="../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="../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="../authz/Authorizer.html#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">checkRoles</a></code>&nbsp;in interface&nbsp;<code><a href="../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="../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 id="checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRoles</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.641">checkRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;principal,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>...&nbsp;roles)
throws <a href="../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="../authz/Authorizer.html#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">Authorizer</a></code></span></div>
<div class="block">Same as <a href="../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="../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="../authz/Authorizer.html#checkRoles(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">checkRoles</a></code>&nbsp;in interface&nbsp;<code><a href="../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="../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 id="checkRoles(java.util.Collection,org.apache.shiro.authz.AuthorizationInfo)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRoles</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.645">checkRoles</a>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;roles,
<a href="../authz/AuthorizationInfo.html" title="interface in org.apache.shiro.authz">AuthorizationInfo</a>&nbsp;info)</pre>
</li>
</ul>
<a id="doClearCache(org.apache.shiro.subject.PrincipalCollection)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>doClearCache</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/shiro/realm/AuthorizingRealm.html#line.663">doClearCache</a>&#8203;(<a href="../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="#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="AuthenticatingRealm.html#doClearCache(org.apache.shiro.subject.PrincipalCollection)">doClearCache</a></code>&nbsp;in class&nbsp;<code><a href="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>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.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" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</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 id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2004&#x2013;2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>