blob: 26b6f4a1d15f7b0f0a50a3f3c3e67382e9ea260a [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="fr">
<head>
<!-- Generated by javadoc (11.0.8) on Wed Oct 28 15:59:12 CET 2020 -->
<title>Authorizer (Apache Shiro :: Core 1.7.0 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2020-10-28">
<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="Authorizer (Apache Shiro :: Core 1.7.0 API)";
}
}
catch(err) {
}
//-->
var data = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 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/Authorizer.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>Constr&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>Constr&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.authz</a></div>
<h2 title="Interface Authorizer" class="title">Interface Authorizer</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Subinterfaces:</dt>
<dd><code><a href="../mgt/SecurityManager.html" title="interface in org.apache.shiro.mgt">SecurityManager</a></code></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="../realm/ldap/AbstractLdapRealm.html" title="class in org.apache.shiro.realm.ldap">AbstractLdapRealm</a></code>, <code><a href="../realm/activedirectory/ActiveDirectoryRealm.html" title="class in org.apache.shiro.realm.activedirectory">ActiveDirectoryRealm</a></code>, <code><a href="../mgt/AuthenticatingSecurityManager.html" title="class in org.apache.shiro.mgt">AuthenticatingSecurityManager</a></code>, <code><a href="../realm/AuthorizingRealm.html" title="class in org.apache.shiro.realm">AuthorizingRealm</a></code>, <code><a href="../mgt/AuthorizingSecurityManager.html" title="class in org.apache.shiro.mgt">AuthorizingSecurityManager</a></code>, <code><a href="../mgt/CachingSecurityManager.html" title="class in org.apache.shiro.mgt">CachingSecurityManager</a></code>, <code><a href="../realm/ldap/DefaultLdapRealm.html" title="class in org.apache.shiro.realm.ldap">DefaultLdapRealm</a></code>, <code><a href="../mgt/DefaultSecurityManager.html" title="class in org.apache.shiro.mgt">DefaultSecurityManager</a></code>, <code><a href="../realm/text/IniRealm.html" title="class in org.apache.shiro.realm.text">IniRealm</a></code>, <code><a href="../realm/jdbc/JdbcRealm.html" title="class in org.apache.shiro.realm.jdbc">JdbcRealm</a></code>, <code><a href="../realm/ldap/JndiLdapRealm.html" title="class in org.apache.shiro.realm.ldap">JndiLdapRealm</a></code>, <code><a href="ModularRealmAuthorizer.html" title="class in org.apache.shiro.authz">ModularRealmAuthorizer</a></code>, <code><a href="../realm/text/PropertiesRealm.html" title="class in org.apache.shiro.realm.text">PropertiesRealm</a></code>, <code><a href="../mgt/RealmSecurityManager.html" title="class in org.apache.shiro.mgt">RealmSecurityManager</a></code>, <code><a href="../mgt/SessionsSecurityManager.html" title="class in org.apache.shiro.mgt">SessionsSecurityManager</a></code>, <code><a href="../realm/SimpleAccountRealm.html" title="class in org.apache.shiro.realm">SimpleAccountRealm</a></code>, <code><a href="../realm/text/TextConfigurationRealm.html" title="class in org.apache.shiro.realm.text">TextConfigurationRealm</a></code></dd>
</dl>
<hr>
<pre>public interface <a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.48">Authorizer</a></pre>
<div class="block">An <tt>Authorizer</tt> performs authorization (access control) operations for any given Subject
(aka 'application user').
<p>Each method requires a subject principal to perform the action for the corresponding Subject/user.
<p>This principal argument is usually an object representing a user database primary key or a String username or
something similar that uniquely identifies an application user. The runtime value of the this principal
is application-specific and provided by the application's configured Realms.
<p>Note that there are many *Permission methods in this interface overloaded to accept String arguments instead of
<a href="Permission.html" title="interface in org.apache.shiro.authz"><code>Permission</code></a> instances. They are a convenience allowing the caller to use a String representation of
a <a href="Permission.html" title="interface in org.apache.shiro.authz"><code>Permission</code></a> if desired. Most implementations of this interface will simply convert these
String values to <a href="Permission.html" title="interface in org.apache.shiro.authz"><code>Permission</code></a> instances and then just call the corresponding type-safe method.
(Shiro's default implementations do String-to-Permission conversion for these methods using
<a href="permission/PermissionResolver.html" title="interface in org.apache.shiro.authz.permission"><code>PermissionResolver</code></a>s.)
<p>These overloaded *Permission methods <em>do</em> forego type-safety for the benefit of convenience and simplicity,
so you should choose which ones to use based on your preferences and needs.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.1</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== 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></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>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;subjectPrincipal,
<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="i1" 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;subjectPrincipal,
<a href="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="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="i2" 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.lang.String...)">checkPermissions</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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="Permission.html#implies(org.apache.shiro.authz.Permission)"><code>implies</code></a> all of the
specified permission strings.</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="#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;subjectPrincipal,
<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="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="Permission.html#implies(org.apache.shiro.authz.Permission)"><code>implies</code></a> all of the
specified permission strings.</div>
</td>
</tr>
<tr id="i4" 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;subjectPrincipal,
<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">Asserts the corresponding Subject/user has the specified role by returning quietly if they do or throwing an
<a href="AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
</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="#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;subjectPrincipal,
<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;roleIdentifiers)</code></th>
<td class="colLast">
<div class="block">Same as <a href="#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="i6" 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.util.Collection)">checkRoles</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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">Asserts the corresponding Subject/user has all of the specified roles by returning quietly if they do or
throwing an <a href="AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<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;subjectPrincipal,
<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="i8" 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;subjectPrincipal,
<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="i9" class="rowColor">
<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;subjectPrincipal,
<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="i10" 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="i11" 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;subjectPrincipal,
<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="i12" 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;subjectPrincipal,
<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="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="i13" 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;subjectPrincipal,
<a href="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="i14" 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.lang.String...)">isPermittedAll</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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="i15" 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.util.Collection)">isPermittedAll</a></span>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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="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>
</table>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.63">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">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="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="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="simpleTagLabel">Since:</span></dt>
<dd>0.9</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#isPermitted(org.apache.shiro.subject.PrincipalCollection,org.apache.shiro.authz.Permission)"><code>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">boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.76">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)</pre>
<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="Permission.html#implies(org.apache.shiro.authz.Permission)"><code>imply</code></a> the specified permission.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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.subject.PrincipalCollection,java.lang.String...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermitted</h4>
<pre class="methodSignature">boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.93">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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">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="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="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.9</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">boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.113">isPermitted</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</pre>
<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="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="#isPermitted(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>isPermitted(org.apache.shiro.subject.PrincipalCollection, java.lang.String)</code></a> invocations over the wire in client/server systems.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPermittedAll</h4>
<pre class="methodSignature">boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.128">isPermittedAll</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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">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="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="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="simpleTagLabel">Since:</span></dt>
<dd>0.9</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="#isPermittedAll(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)"><code>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">boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.141">isPermittedAll</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)</pre>
<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="Permission.html#implies(org.apache.shiro.authz.Permission)"><code>implied by</code></a> permissions already associated with the subject.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="checkPermission(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermission</h4>
<pre class="methodSignature">void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.158">checkPermission</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<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="Permission.html#implies(org.apache.shiro.authz.Permission)"><code>Permission.implies(Permission)</code></a> imply}
the given permission, an <a href="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="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="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have the permission.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.9</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">void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.170">checkPermission</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<a href="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&nbsp;permission)
throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">Ensures a subject/user <a href="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="Permission.html#implies(org.apache.shiro.authz.Permission)"><code>Permission.implies(Permission)</code></a> imply}
the given permission, an <a href="AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> will be thrown.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="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="checkPermissions(org.apache.shiro.subject.PrincipalCollection,java.lang.String...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkPermissions</h4>
<pre class="methodSignature">void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.189">checkPermissions</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">Ensures the corresponding Subject/user
<a href="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="Permission.html#implies(org.apache.shiro.authz.Permission)"><code>imply</code></a> all of the given permissions,
an <a href="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="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="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the given permissions.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>0.9</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">void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.204">checkPermissions</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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="Permission.html" title="interface in org.apache.shiro.authz">Permission</a>&gt;&nbsp;permissions)
throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">Ensures the corresponding Subject/user
<a href="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="Permission.html#implies(org.apache.shiro.authz.Permission)"><code>imply</code></a> all of the given permissions,
an <a href="AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> will be thrown.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="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="hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRole</h4>
<pre class="methodSignature">boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.213">hasRole</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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">Returns <tt>true</tt> if the corresponding Subject/user has the specified role, <tt>false</tt> otherwise.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="hasRoles(org.apache.shiro.subject.PrincipalCollection,java.util.List)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRoles</h4>
<pre class="methodSignature">boolean[]&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.228">hasRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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">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="#hasRole(org.apache.shiro.subject.PrincipalCollection,java.lang.String)"><code>hasRole(org.apache.shiro.subject.PrincipalCollection, java.lang.String)</code></a> invocations over the wire in client/server systems.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="hasAllRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasAllRoles</h4>
<pre class="methodSignature">boolean&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.237">hasAllRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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">Returns <tt>true</tt> if the corresponding Subject/user has all of the specified roles, <tt>false</tt> otherwise.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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">void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.248">checkRole</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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)
throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">Asserts the corresponding Subject/user has the specified role by returning quietly if they do or throwing an
<a href="AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="throwsLabel">Throws:</span></dt>
<dd><code><a href="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="checkRoles(org.apache.shiro.subject.PrincipalCollection,java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>checkRoles</h4>
<pre class="methodSignature">void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.259">checkRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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)
throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<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="AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="throwsLabel">Throws:</span></dt>
<dd><code><a href="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="blockListLast">
<li class="blockList">
<h4>checkRoles</h4>
<pre class="methodSignature">void&nbsp;<a href="../../../../src-html/org/apache/shiro/authz/Authorizer.html#line.275">checkRoles</a>&#8203;(<a href="../subject/PrincipalCollection.html" title="interface in org.apache.shiro.subject">PrincipalCollection</a>&nbsp;subjectPrincipal,
<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;roleIdentifiers)
throws <a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></pre>
<div class="block">Same as <a href="#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="AuthorizationException.html" title="class in org.apache.shiro.authz"><code>AuthorizationException</code></a> if they do not.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subjectPrincipal</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="throwsLabel">Throws:</span></dt>
<dd><code><a href="AuthorizationException.html" title="class in org.apache.shiro.authz">AuthorizationException</a></code> - if the user does not have all of the specified roles.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.1.0</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/Authorizer.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>Constr&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>Constr&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>