http://git-wip-us.apache.org/repos/asf/hbase-site/blob/68eae623/devapidocs/org/apache/hadoop/hbase/security/access/AuthManager.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/AuthManager.html b/devapidocs/org/apache/hadoop/hbase/security/access/AuthManager.html new file mode 100644 index 0000000..12f8242 --- /dev/null +++ b/devapidocs/org/apache/hadoop/hbase/security/access/AuthManager.html @@ -0,0 +1,1134 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<!-- Generated by javadoc --> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<title>AuthManager (Apache HBase 3.0.0-SNAPSHOT API)</title> +<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> +<script type="text/javascript" src="../../../../../../script.js"></script> +</head> +<body> +<script type="text/javascript"><!-- + try { + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="AuthManager (Apache HBase 3.0.0-SNAPSHOT API)"; + } + } + catch(err) { + } +//--> +var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":9,"i16":9,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":9,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10}; +var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; +var altColor = "altColor"; +var rowColor = "rowColor"; +var tableTab = "tableTab"; +var activeTableTab = "activeTableTab"; +</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="topNav"><a name="navbar.top"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.top.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="class-use/AuthManager.html">Use</a></li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../../../index-all.html">Index</a></li> +<li><a href="../../../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessControlUtil.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/security/access/AuthManager.html" target="_top">Frames</a></li> +<li><a href="AuthManager.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_top"> +<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_top"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li><a href="#nested.class.summary">Nested</a> | </li> +<li><a href="#field.summary">Field</a> | </li> +<li><a href="#constructor.summary">Constr</a> | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li><a href="#field.detail">Field</a> | </li> +<li><a href="#constructor.detail">Constr</a> | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.top"> +<!-- --> +</a></div> +<!-- ========= END OF TOP NAVBAR ========= --> +<!-- ======== START OF CLASS DATA ======== --> +<div class="header"> +<div class="subTitle">org.apache.hadoop.hbase.security.access</div> +<h2 title="Class AuthManager" class="title">Class AuthManager</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">java.lang.Object</a></li> +<li> +<ul class="inheritance"> +<li>org.apache.hadoop.hbase.security.access.AuthManager</li> +</ul> +</li> +</ul> +<div class="description"> +<ul class="blockList"> +<li class="blockList"> +<dl> +<dt>All Implemented Interfaces:</dt> +<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></dd> +</dl> +<hr> +<br> +<pre>@InterfaceAudience.Private +public final class <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.68">AuthManager</a> +extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> +implements <a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a></pre> +<div class="block">Performs authorization checks for a given user's assigned permissions. + <p> + There're following scopes: <b>Global</b>, <b>Namespace</b>, <b>Table</b>, <b>Family</b>, + <b>Qualifier</b>, <b>Cell</b>. + Generally speaking, higher scopes can overrides lower scopes, + except for Cell permission can be granted even a user has not permission on specified table, + which means the user can get/scan only those granted cells parts. + </p> + e.g, if user A has global permission R(ead), he can + read table T without checking table scope permission, so authorization checks alway starts from + Global scope. + <p> + For each scope, not only user but also groups he belongs to will be checked. + </p></div> +</li> +</ul> +</div> +<div class="summary"> +<ul class="blockList"> +<li class="blockList"> +<!-- ======== NESTED CLASS SUMMARY ======== --> +<ul class="blockList"> +<li class="blockList"><a name="nested.class.summary"> +<!-- --> +</a> +<h3>Nested Class Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation"> +<caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Class and Description</th> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private static class </code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="type parameter in AuthManager.PermissionCache">T</a> extends <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>></span></code> +<div class="block">Cache of permissions, it is thread safe.</div> +</td> +</tr> +</table> +</li> +</ul> +<!-- =========== FIELD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="field.summary"> +<!-- --> +</a> +<h3>Field Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation"> +<caption><span>Fields</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Field and Description</th> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private org.apache.hadoop.conf.Configuration</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#conf">conf</a></span></code> </td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/GlobalPermission.html" title="class in org.apache.hadoop.hbase.security.access">GlobalPermission</a>></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#globalCache">globalCache</a></span></code> +<div class="block">Cache for global permission.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private static org.slf4j.Logger</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#LOG">LOG</a></span></code> </td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a>></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#managerMap">managerMap</a></span></code> </td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#mtime">mtime</a></span></code> </td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentHashMap.html?is-external=true" title="class or interface in java.util.concurrent">ConcurrentHashMap</a><<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/NamespacePermission.html" title="class in org.apache.hadoop.hbase.security.access">NamespacePermission</a>>></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#namespaceCache">namespaceCache</a></span></code> +<div class="block">Cache for namespace permission.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/NamespacePermission.html" title="class in org.apache.hadoop.hbase.security.access">NamespacePermission</a>></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#NS_NO_PERMISSION">NS_NO_PERMISSION</a></span></code> </td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#refCount">refCount</a></span></code> </td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentHashMap.html?is-external=true" title="class or interface in java.util.concurrent">ConcurrentHashMap</a><<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>>></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#tableCache">tableCache</a></span></code> +<div class="block">Cache for table permission.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#TBL_NO_PERMISSION">TBL_NO_PERMISSION</a></span></code> </td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html" title="class in org.apache.hadoop.hbase.security.access">ZKPermissionWatcher</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#zkperms">zkperms</a></span></code> </td> +</tr> +</table> +</li> +</ul> +<!-- ======== CONSTRUCTOR SUMMARY ======== --> +<ul class="blockList"> +<li class="blockList"><a name="constructor.summary"> +<!-- --> +</a> +<h3>Constructor Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> +<caption><span>Constructors</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colFirst" scope="col">Modifier</th> +<th class="colLast" scope="col">Constructor and Description</th> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>private </code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#AuthManager-org.apache.hadoop.hbase.zookeeper.ZKWatcher-org.apache.hadoop.conf.Configuration-">AuthManager</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a> watcher, + org.apache.hadoop.conf.Configuration conf)</code> </td> +</tr> +</table> +</li> +</ul> +<!-- ========== METHOD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.summary"> +<!-- --> +</a> +<h3>Method Summary</h3> +<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Method and Description</th> +</tr> +<tr id="i0" class="altColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#accessUserTable-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.security.access.Permission.Action-">accessUserTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> +<div class="block">Checks if the user has access to the full table or at least a family/qualifier + for the specified action.</div> +</td> +</tr> +<tr id="i1" class="rowColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeCell-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeCell</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a> cell, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> +<div class="block">Check if user has given action privilige in cell scope.</div> +</td> +</tr> +<tr id="i2" class="altColor"> +<td class="colFirst"><code>private boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeFamily-java.util.Set-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeFamily</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>> permissions, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> </td> +</tr> +<tr id="i3" class="rowColor"> +<td class="colFirst"><code>private boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeGlobal-org.apache.hadoop.hbase.security.access.GlobalPermission-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeGlobal</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/GlobalPermission.html" title="class in org.apache.hadoop.hbase.security.access">GlobalPermission</a> permissions, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> </td> +</tr> +<tr id="i4" class="altColor"> +<td class="colFirst"><code>private boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeNamespace-java.util.Set-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeNamespace</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/NamespacePermission.html" title="class in org.apache.hadoop.hbase.security.access">NamespacePermission</a>> permissions, + <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> namespace, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> </td> +</tr> +<tr id="i5" class="rowColor"> +<td class="colFirst"><code>private boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeTable-java.util.Set-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeTable</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>> permissions, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + byte[] qualifier, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> </td> +</tr> +<tr id="i6" class="altColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeUserFamily-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeUserFamily</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> +<div class="block">Check if user has given action privilige in table:family scope.</div> +</td> +</tr> +<tr id="i7" class="rowColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeUserGlobal-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeUserGlobal</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> +<div class="block">Check if user has given action privilige in global scope.</div> +</td> +</tr> +<tr id="i8" class="altColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeUserNamespace-org.apache.hadoop.hbase.security.User-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeUserNamespace</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> namespace, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> +<div class="block">Check if user has given action privilige in namespace scope.</div> +</td> +</tr> +<tr id="i9" class="rowColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeUserTable-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeUserTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + byte[] qualifier, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> +<div class="block">Check if user has given action privilige in table:family:qualifier scope.</div> +</td> +</tr> +<tr id="i10" class="altColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeUserTable-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeUserTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> +<div class="block">Check if user has given action privilige in table:family scope.</div> +</td> +</tr> +<tr id="i11" class="rowColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#authorizeUserTable-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.security.access.Permission.Action-">authorizeUserTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> +<div class="block">Check if user has given action privilige in table scope.</div> +</td> +</tr> +<tr id="i12" class="altColor"> +<td class="colFirst"><code>private void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#clearCache-org.apache.hadoop.hbase.security.access.AuthManager.PermissionCache-">clearCache</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a> cacheToUpdate)</code> </td> +</tr> +<tr id="i13" class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#close--">close</a></span>()</code> </td> +</tr> +<tr id="i14" class="altColor"> +<td class="colFirst"><code>long</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#getMTime--">getMTime</a></span>()</code> +<div class="block">Last modification logical time</div> +</td> +</tr> +<tr id="i15" class="rowColor"> +<td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#getOrCreate-org.apache.hadoop.hbase.zookeeper.ZKWatcher-org.apache.hadoop.conf.Configuration-">getOrCreate</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a> watcher, + org.apache.hadoop.conf.Configuration conf)</code> +<div class="block">Returns a AuthManager from the cache.</div> +</td> +</tr> +<tr id="i16" class="altColor"> +<td class="colFirst"><code>static int</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#getTotalRefCount--">getTotalRefCount</a></span>()</code> </td> +</tr> +<tr id="i17" class="rowColor"> +<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html" title="class in org.apache.hadoop.hbase.security.access">ZKPermissionWatcher</a></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#getZKPermissionWatcher--">getZKPermissionWatcher</a></span>()</code> </td> +</tr> +<tr id="i18" class="altColor"> +<td class="colFirst"><code>private boolean</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#hasAccessTable-java.util.Set-org.apache.hadoop.hbase.security.access.Permission.Action-">hasAccessTable</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>> permissions, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</code> </td> +</tr> +<tr id="i19" class="rowColor"> +<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/GlobalPermission.html" title="class in org.apache.hadoop.hbase.security.access">GlobalPermission</a>></code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#initGlobal-org.apache.hadoop.conf.Configuration-">initGlobal</a></span>(org.apache.hadoop.conf.Configuration conf)</code> +<div class="block">Initialize with global permission assignments + from the <code>hbase.superuser</code> configuration key.</div> +</td> +</tr> +<tr id="i20" class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#refreshNamespaceCacheFromWritable-java.lang.String-byte:A-">refreshNamespaceCacheFromWritable</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> namespace, + byte[] data)</code> +<div class="block">Update acl info for namespace.</div> +</td> +</tr> +<tr id="i21" class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#refreshTableCacheFromWritable-org.apache.hadoop.hbase.TableName-byte:A-">refreshTableCacheFromWritable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] data)</code> +<div class="block">Update acl info for table.</div> +</td> +</tr> +<tr id="i22" class="altColor"> +<td class="colFirst"><code>static void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#release-org.apache.hadoop.hbase.security.access.AuthManager-">release</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a> instance)</code> +<div class="block">Releases the resources for the given AuthManager if the reference count is down to 0.</div> +</td> +</tr> +<tr id="i23" class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#removeNamespace-byte:A-">removeNamespace</a></span>(byte[] ns)</code> +<div class="block">Remove given namespace from AuthManager's namespace cache.</div> +</td> +</tr> +<tr id="i24" class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#removeTable-org.apache.hadoop.hbase.TableName-">removeTable</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table)</code> +<div class="block">Remove given table from AuthManager's table cache.</div> +</td> +</tr> +<tr id="i25" class="rowColor"> +<td class="colFirst"><code>private void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#updateCache-org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap-org.apache.hadoop.hbase.security.access.AuthManager.PermissionCache-">updateCache</a></span>(org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap<<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,? extends <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>> newPermissions, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a> cacheToUpdate)</code> </td> +</tr> +<tr id="i26" class="altColor"> +<td class="colFirst"><code>private void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#updateGlobalCache-org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap-">updateGlobalCache</a></span>(org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap<<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>> globalPerms)</code> +<div class="block">Updates the internal global permissions cache.</div> +</td> +</tr> +<tr id="i27" class="rowColor"> +<td class="colFirst"><code>private void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#updateNamespaceCache-java.lang.String-org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap-">updateNamespaceCache</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> namespace, + org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap<<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>> nsPerms)</code> +<div class="block">Updates the internal namespace permissions cache for specified namespace.</div> +</td> +</tr> +<tr id="i28" class="altColor"> +<td class="colFirst"><code>private void</code></td> +<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#updateTableCache-org.apache.hadoop.hbase.TableName-org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap-">updateTableCache</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap<<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>> tablePerms)</code> +<div class="block">Updates the internal table permissions cache for specified table.</div> +</td> +</tr> +</table> +<ul class="blockList"> +<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> +<!-- --> +</a> +<h3>Methods inherited from class 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">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">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">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">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">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">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">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/ja va/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">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">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">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">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">wait</a></code></li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +<div class="details"> +<ul class="blockList"> +<li class="blockList"> +<!-- ============ FIELD DETAIL =========== --> +<ul class="blockList"> +<li class="blockList"><a name="field.detail"> +<!-- --> +</a> +<h3>Field Detail</h3> +<a name="NS_NO_PERMISSION"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>NS_NO_PERMISSION</h4> +<pre><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/NamespacePermission.html" title="class in org.apache.hadoop.hbase.security.access">NamespacePermission</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.101">NS_NO_PERMISSION</a></pre> +</li> +</ul> +<a name="TBL_NO_PERMISSION"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>TBL_NO_PERMISSION</h4> +<pre><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.102">TBL_NO_PERMISSION</a></pre> +</li> +</ul> +<a name="globalCache"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>globalCache</h4> +<pre>private volatile <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/GlobalPermission.html" title="class in org.apache.hadoop.hbase.security.access">GlobalPermission</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.108">globalCache</a></pre> +<div class="block">Cache for global permission. + Since every user/group can only have one global permission, no need to user PermissionCache.</div> +</li> +</ul> +<a name="namespaceCache"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>namespaceCache</h4> +<pre>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentHashMap.html?is-external=true" title="class or interface in java.util.concurrent">ConcurrentHashMap</a><<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/NamespacePermission.html" title="class in org.apache.hadoop.hbase.security.access">NamespacePermission</a>>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.110">namespaceCache</a></pre> +<div class="block">Cache for namespace permission.</div> +</li> +</ul> +<a name="tableCache"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>tableCache</h4> +<pre>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ConcurrentHashMap.html?is-external=true" title="class or interface in java.util.concurrent">ConcurrentHashMap</a><<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.113">tableCache</a></pre> +<div class="block">Cache for table permission.</div> +</li> +</ul> +<a name="LOG"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>LOG</h4> +<pre>private static final org.slf4j.Logger <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.116">LOG</a></pre> +</li> +</ul> +<a name="conf"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>conf</h4> +<pre>private org.apache.hadoop.conf.Configuration <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.118">conf</a></pre> +</li> +</ul> +<a name="zkperms"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>zkperms</h4> +<pre>private <a href="../../../../../../org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html" title="class in org.apache.hadoop.hbase.security.access">ZKPermissionWatcher</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.119">zkperms</a></pre> +</li> +</ul> +<a name="mtime"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>mtime</h4> +<pre>private final <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.120">mtime</a></pre> +</li> +</ul> +<a name="managerMap"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>managerMap</h4> +<pre>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.552">managerMap</a></pre> +</li> +</ul> +<a name="refCount"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>refCount</h4> +<pre>private static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.554">refCount</a></pre> +</li> +</ul> +</li> +</ul> +<!-- ========= CONSTRUCTOR DETAIL ======== --> +<ul class="blockList"> +<li class="blockList"><a name="constructor.detail"> +<!-- --> +</a> +<h3>Constructor Detail</h3> +<a name="AuthManager-org.apache.hadoop.hbase.zookeeper.ZKWatcher-org.apache.hadoop.conf.Configuration-"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>AuthManager</h4> +<pre>private <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.122">AuthManager</a>(<a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a> watcher, + org.apache.hadoop.conf.Configuration conf) + throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> +<dl> +<dt><span class="throwsLabel">Throws:</span></dt> +<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> +</dl> +</li> +</ul> +</li> +</ul> +<!-- ============ METHOD DETAIL ========== --> +<ul class="blockList"> +<li class="blockList"><a name="method.detail"> +<!-- --> +</a> +<h3>Method Detail</h3> +<a name="close--"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>close</h4> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.137">close</a>()</pre> +<dl> +<dt><span class="overrideSpecifyLabel">Specified by:</span></dt> +<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true#close--" title="class or interface in java.io">close</a></code> in interface <code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a></code></dd> +<dt><span class="overrideSpecifyLabel">Specified by:</span></dt> +<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code> in interface <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd> +</dl> +</li> +</ul> +<a name="initGlobal-org.apache.hadoop.conf.Configuration-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>initGlobal</h4> +<pre>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/GlobalPermission.html" title="class in org.apache.hadoop.hbase.security.access">GlobalPermission</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.145">initGlobal</a>(org.apache.hadoop.conf.Configuration conf) + throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> +<div class="block">Initialize with global permission assignments + from the <code>hbase.superuser</code> configuration key.</div> +<dl> +<dt><span class="throwsLabel">Throws:</span></dt> +<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> +</dl> +</li> +</ul> +<a name="getZKPermissionWatcher--"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getZKPermissionWatcher</h4> +<pre>public <a href="../../../../../../org/apache/hadoop/hbase/security/access/ZKPermissionWatcher.html" title="class in org.apache.hadoop.hbase.security.access">ZKPermissionWatcher</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.165">getZKPermissionWatcher</a>()</pre> +</li> +</ul> +<a name="refreshTableCacheFromWritable-org.apache.hadoop.hbase.TableName-byte:A-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>refreshTableCacheFromWritable</h4> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.175">refreshTableCacheFromWritable</a>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] data) + throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> +<div class="block">Update acl info for table.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>table</code> - name of table</dd> +<dd><code>data</code> - updated acl data</dd> +<dt><span class="throwsLabel">Throws:</span></dt> +<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - exception when deserialize data</dd> +</dl> +</li> +</ul> +<a name="refreshNamespaceCacheFromWritable-java.lang.String-byte:A-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>refreshNamespaceCacheFromWritable</h4> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.201">refreshNamespaceCacheFromWritable</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> namespace, + byte[] data) + throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> +<div class="block">Update acl info for namespace.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>namespace</code> - namespace</dd> +<dd><code>data</code> - updated acl data</dd> +<dt><span class="throwsLabel">Throws:</span></dt> +<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - exception when deserialize data</dd> +</dl> +</li> +</ul> +<a name="updateGlobalCache-org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>updateGlobalCache</h4> +<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.221">updateGlobalCache</a>(org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap<<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>> globalPerms)</pre> +<div class="block">Updates the internal global permissions cache.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>globalPerms</code> - new global permissions</dd> +</dl> +</li> +</ul> +<a name="updateTableCache-org.apache.hadoop.hbase.TableName-org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>updateTableCache</h4> +<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.242">updateTableCache</a>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap<<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>> tablePerms)</pre> +<div class="block">Updates the internal table permissions cache for specified table.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>table</code> - updated table name</dd> +<dd><code>tablePerms</code> - new table permissions</dd> +</dl> +</li> +</ul> +<a name="updateNamespaceCache-java.lang.String-org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>updateNamespaceCache</h4> +<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.256">updateNamespaceCache</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> namespace, + org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap<<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>> nsPerms)</pre> +<div class="block">Updates the internal namespace permissions cache for specified namespace.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>namespace</code> - updated namespace</dd> +<dd><code>nsPerms</code> - new namespace permissions</dd> +</dl> +</li> +</ul> +<a name="clearCache-org.apache.hadoop.hbase.security.access.AuthManager.PermissionCache-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>clearCache</h4> +<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.266">clearCache</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a> cacheToUpdate)</pre> +</li> +</ul> +<a name="updateCache-org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap-org.apache.hadoop.hbase.security.access.AuthManager.PermissionCache-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>updateCache</h4> +<pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.271">updateCache</a>(org.apache.hbase.thirdparty.com.google.common.collect.ListMultimap<<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,? extends <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.html" title="class in org.apache.hadoop.hbase.security.access">Permission</a>> newPermissions, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager.PermissionCache</a> cacheToUpdate)</pre> +</li> +</ul> +<a name="authorizeUserGlobal-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeUserGlobal</h4> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.286">authorizeUserGlobal</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +<div class="block">Check if user has given action privilige in global scope.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>user</code> - user name</dd> +<dd><code>action</code> - one of action in [Read, Write, Create, Exec, Admin]</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>true if user has, false otherwise</dd> +</dl> +</li> +</ul> +<a name="authorizeGlobal-org.apache.hadoop.hbase.security.access.GlobalPermission-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeGlobal</h4> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.301">authorizeGlobal</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/GlobalPermission.html" title="class in org.apache.hadoop.hbase.security.access">GlobalPermission</a> permissions, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +</li> +</ul> +<a name="authorizeUserNamespace-org.apache.hadoop.hbase.security.User-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeUserNamespace</h4> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.312">authorizeUserNamespace</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> namespace, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +<div class="block">Check if user has given action privilige in namespace scope.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>user</code> - user name</dd> +<dd><code>namespace</code> - namespace</dd> +<dd><code>action</code> - one of action in [Read, Write, Create, Exec, Admin]</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>true if user has, false otherwise</dd> +</dl> +</li> +</ul> +<a name="authorizeNamespace-java.util.Set-java.lang.String-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeNamespace</h4> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.332">authorizeNamespace</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/NamespacePermission.html" title="class in org.apache.hadoop.hbase.security.access">NamespacePermission</a>> permissions, + <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> namespace, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +</li> +</ul> +<a name="accessUserTable-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>accessUserTable</h4> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.353">accessUserTable</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +<div class="block">Checks if the user has access to the full table or at least a family/qualifier + for the specified action.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>user</code> - user name</dd> +<dd><code>table</code> - table name</dd> +<dd><code>action</code> - action in one of [Read, Write, Create, Exec, Admin]</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>true if the user has access to the table, false otherwise</dd> +</dl> +</li> +</ul> +<a name="hasAccessTable-java.util.Set-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>hasAccessTable</h4> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.376">hasAccessTable</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>> permissions, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +</li> +</ul> +<a name="authorizeUserTable-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeUserTable</h4> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.395">authorizeUserTable</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +<div class="block">Check if user has given action privilige in table scope.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>user</code> - user name</dd> +<dd><code>table</code> - table name</dd> +<dd><code>action</code> - one of action in [Read, Write, Create, Exec, Admin]</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>true if user has, false otherwise</dd> +</dl> +</li> +</ul> +<a name="authorizeUserTable-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeUserTable</h4> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.407">authorizeUserTable</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +<div class="block">Check if user has given action privilige in table:family scope.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>user</code> - user name</dd> +<dd><code>table</code> - table name</dd> +<dd><code>family</code> - family name</dd> +<dd><code>action</code> - one of action in [Read, Write, Create, Exec, Admin]</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>true if user has, false otherwise</dd> +</dl> +</li> +</ul> +<a name="authorizeUserTable-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeUserTable</h4> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.421">authorizeUserTable</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + byte[] qualifier, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +<div class="block">Check if user has given action privilige in table:family:qualifier scope.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>user</code> - user name</dd> +<dd><code>table</code> - table name</dd> +<dd><code>family</code> - family name</dd> +<dd><code>qualifier</code> - qualifier name</dd> +<dd><code>action</code> - one of action in [Read, Write, Create, Exec, Admin]</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>true if user has, false otherwise</dd> +</dl> +</li> +</ul> +<a name="authorizeTable-java.util.Set-org.apache.hadoop.hbase.TableName-byte:A-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeTable</h4> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.446">authorizeTable</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>> permissions, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + byte[] qualifier, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +</li> +</ul> +<a name="authorizeUserFamily-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeUserFamily</h4> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.468">authorizeUserFamily</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +<div class="block">Check if user has given action privilige in table:family scope. + This method is for backward compatibility.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>user</code> - user name</dd> +<dd><code>table</code> - table name</dd> +<dd><code>family</code> - family names</dd> +<dd><code>action</code> - one of action in [Read, Write, Create, Exec, Admin]</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>true if user has, false otherwise</dd> +</dl> +</li> +</ul> +<a name="authorizeFamily-java.util.Set-org.apache.hadoop.hbase.TableName-byte:A-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeFamily</h4> +<pre>private boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.484">authorizeFamily</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><<a href="../../../../../../org/apache/hadoop/hbase/security/access/TablePermission.html" title="class in org.apache.hadoop.hbase.security.access">TablePermission</a>> permissions, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + byte[] family, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +</li> +</ul> +<a name="authorizeCell-org.apache.hadoop.hbase.security.User-org.apache.hadoop.hbase.TableName-org.apache.hadoop.hbase.Cell-org.apache.hadoop.hbase.security.access.Permission.Action-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>authorizeCell</h4> +<pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.505">authorizeCell</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/User.html" title="class in org.apache.hadoop.hbase.security">User</a> user, + <a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table, + <a href="../../../../../../org/apache/hadoop/hbase/Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a> cell, + <a href="../../../../../../org/apache/hadoop/hbase/security/access/Permission.Action.html" title="enum in org.apache.hadoop.hbase.security.access">Permission.Action</a> action)</pre> +<div class="block">Check if user has given action privilige in cell scope.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>user</code> - user name</dd> +<dd><code>table</code> - table name</dd> +<dd><code>cell</code> - cell to be checked</dd> +<dd><code>action</code> - one of action in [Read, Write, Create, Exec, Admin]</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>true if user has, false otherwise</dd> +</dl> +</li> +</ul> +<a name="removeNamespace-byte:A-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>removeNamespace</h4> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.532">removeNamespace</a>(byte[] ns)</pre> +<div class="block">Remove given namespace from AuthManager's namespace cache.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>ns</code> - namespace</dd> +</dl> +</li> +</ul> +<a name="removeTable-org.apache.hadoop.hbase.TableName-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>removeTable</h4> +<pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.540">removeTable</a>(<a href="../../../../../../org/apache/hadoop/hbase/TableName.html" title="class in org.apache.hadoop.hbase">TableName</a> table)</pre> +<div class="block">Remove given table from AuthManager's table cache.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>table</code> - table name</dd> +</dl> +</li> +</ul> +<a name="getMTime--"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getMTime</h4> +<pre>public long <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.548">getMTime</a>()</pre> +<div class="block">Last modification logical time</div> +<dl> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>time</dd> +</dl> +</li> +</ul> +<a name="getOrCreate-org.apache.hadoop.hbase.zookeeper.ZKWatcher-org.apache.hadoop.conf.Configuration-"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getOrCreate</h4> +<pre>public static <a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.564">getOrCreate</a>(<a href="../../../../../../org/apache/hadoop/hbase/zookeeper/ZKWatcher.html" title="class in org.apache.hadoop.hbase.zookeeper">ZKWatcher</a> watcher, + org.apache.hadoop.conf.Configuration conf) + throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> +<div class="block">Returns a AuthManager from the cache. If not cached, constructs a new one. + Returned instance should be released back by calling <a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html#release-org.apache.hadoop.hbase.security.access.AuthManager-"><code>release(AuthManager)</code></a>.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>watcher</code> - zk watcher</dd> +<dd><code>conf</code> - configuration</dd> +<dt><span class="returnLabel">Returns:</span></dt> +<dd>an AuthManager</dd> +<dt><span class="throwsLabel">Throws:</span></dt> +<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - zookeeper initialization failed</dd> +</dl> +</li> +</ul> +<a name="getTotalRefCount--"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getTotalRefCount</h4> +<pre>public static int <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.577">getTotalRefCount</a>()</pre> +</li> +</ul> +<a name="release-org.apache.hadoop.hbase.security.access.AuthManager-"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>release</h4> +<pre>public static void <a href="../../../../../../src-html/org/apache/hadoop/hbase/security/access/AuthManager.html#line.589">release</a>(<a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.html" title="class in org.apache.hadoop.hbase.security.access">AuthManager</a> instance)</pre> +<div class="block">Releases the resources for the given AuthManager if the reference count is down to 0.</div> +<dl> +<dt><span class="paramLabel">Parameters:</span></dt> +<dd><code>instance</code> - AuthManager to be released</dd> +</dl> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +</div> +<!-- ========= END OF CLASS DATA ========= --> +<!-- ======= START OF BOTTOM NAVBAR ====== --> +<div class="bottomNav"><a name="navbar.bottom"> +<!-- --> +</a> +<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> +<a name="navbar.bottom.firstrow"> +<!-- --> +</a> +<ul class="navList" title="Navigation"> +<li><a href="../../../../../../overview-summary.html">Overview</a></li> +<li><a href="package-summary.html">Package</a></li> +<li class="navBarCell1Rev">Class</li> +<li><a href="class-use/AuthManager.html">Use</a></li> +<li><a href="package-tree.html">Tree</a></li> +<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> +<li><a href="../../../../../../index-all.html">Index</a></li> +<li><a href="../../../../../../help-doc.html">Help</a></li> +</ul> +</div> +<div class="subNav"> +<ul class="navList"> +<li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessControlUtil.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/security/access/AuthManager.html" target="_top">Frames</a></li> +<li><a href="AuthManager.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_bottom"> +<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> +</ul> +<div> +<script type="text/javascript"><!-- + allClassesLink = document.getElementById("allclasses_navbar_bottom"); + if(window==top) { + allClassesLink.style.display = "block"; + } + else { + allClassesLink.style.display = "none"; + } + //--> +</script> +</div> +<div> +<ul class="subNavList"> +<li>Summary: </li> +<li><a href="#nested.class.summary">Nested</a> | </li> +<li><a href="#field.summary">Field</a> | </li> +<li><a href="#constructor.summary">Constr</a> | </li> +<li><a href="#method.summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li><a href="#field.detail">Field</a> | </li> +<li><a href="#constructor.detail">Constr</a> | </li> +<li><a href="#method.detail">Method</a></li> +</ul> +</div> +<a name="skip.navbar.bottom"> +<!-- --> +</a></div> +<!-- ======== END OF BOTTOM NAVBAR ======= --> +<p class="legalCopy"><small>Copyright © 2007–2018 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> +</body> +</html>
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/68eae623/devapidocs/org/apache/hadoop/hbase/security/access/AuthResult.html ---------------------------------------------------------------------- diff --git a/devapidocs/org/apache/hadoop/hbase/security/access/AuthResult.html b/devapidocs/org/apache/hadoop/hbase/security/access/AuthResult.html index 0115e57..85187ef 100644 --- a/devapidocs/org/apache/hadoop/hbase/security/access/AuthResult.html +++ b/devapidocs/org/apache/hadoop/hbase/security/access/AuthResult.html @@ -49,7 +49,7 @@ var activeTableTab = "activeTableTab"; </div> <div class="subNav"> <ul class="navList"> -<li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessControlUtil.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Prev Class</span></a></li> <li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthResult.Params.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList"> @@ -802,7 +802,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html </div> <div class="subNav"> <ul class="navList"> -<li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AccessControlUtil.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Prev Class</span></a></li> +<li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthManager.PermissionCache.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Prev Class</span></a></li> <li><a href="../../../../../../org/apache/hadoop/hbase/security/access/AuthResult.Params.html" title="class in org.apache.hadoop.hbase.security.access"><span class="typeNameLink">Next Class</span></a></li> </ul> <ul class="navList">