diff --git a/sentry-core/sentry-core-common/src/main/java/org/apache/sentry/core/common/ActiveRoleSet.java b/sentry-core/sentry-core-common/src/main/java/org/apache/sentry/core/common/ActiveRoleSet.java
index c24a6cd..7a64d83 100644
--- a/sentry-core/sentry-core-common/src/main/java/org/apache/sentry/core/common/ActiveRoleSet.java
+++ b/sentry-core/sentry-core-common/src/main/java/org/apache/sentry/core/common/ActiveRoleSet.java
@@ -20,12 +20,14 @@
 import java.util.Set;
 
 import com.google.common.collect.ImmutableSet;
+import org.apache.hadoop.classification.InterfaceAudience.Public;
 
 /**
  * Some authorization schemes allow users to select a particular
  * set of roles they want active at any give time. For example,
  * SQL systems often all ALL, NONE, or a subset of roles.
  */
+@Public
 public class ActiveRoleSet {
   public static final ActiveRoleSet ALL = new ActiveRoleSet(true);
   private final boolean allRoles;
diff --git a/sentry-core/sentry-core-common/src/main/java/org/apache/sentry/core/common/Subject.java b/sentry-core/sentry-core-common/src/main/java/org/apache/sentry/core/common/Subject.java
index 88457c0..bcd1fa2 100644
--- a/sentry-core/sentry-core-common/src/main/java/org/apache/sentry/core/common/Subject.java
+++ b/sentry-core/sentry-core-common/src/main/java/org/apache/sentry/core/common/Subject.java
@@ -16,6 +16,9 @@
  */
 package org.apache.sentry.core.common;
 
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+
+@Public
 public class Subject {
 
   private final String name;
diff --git a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Column.java b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Column.java
index e36b09a..7bfa8c6 100644
--- a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Column.java
+++ b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Column.java
@@ -15,7 +15,9 @@
  * limitations under the License.
  */
 package org.apache.sentry.core.model.db;
+import org.apache.hadoop.classification.InterfaceAudience.Public;
 
+@Public
 public class Column implements DBModelAuthorizable {
 
   /**
diff --git a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/DBModelAction.java b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/DBModelAction.java
index c5842d9..6f5118b 100644
--- a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/DBModelAction.java
+++ b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/DBModelAction.java
@@ -17,10 +17,12 @@
 package org.apache.sentry.core.model.db;
 
 import org.apache.sentry.core.common.Action;
+import org.apache.hadoop.classification.InterfaceAudience.Public;
 
 /**
  * Represents actions in the DB model.
  */
+@Public
 public enum DBModelAction implements Action {
 
   // SENTRY-1292
diff --git a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/DBModelAuthorizable.java b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/DBModelAuthorizable.java
index 4ce01b2..121dbb2 100644
--- a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/DBModelAuthorizable.java
+++ b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/DBModelAuthorizable.java
@@ -16,8 +16,10 @@
  */
 package org.apache.sentry.core.model.db;
 
+import org.apache.hadoop.classification.InterfaceAudience.Public;
 import org.apache.sentry.core.common.Authorizable;
 
+@Public
 public interface DBModelAuthorizable extends Authorizable {
 
   public enum AuthorizableType {
diff --git a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Database.java b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Database.java
index e8dc140..15e2ffe 100644
--- a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Database.java
+++ b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Database.java
@@ -15,7 +15,9 @@
  * limitations under the License.
  */
 package org.apache.sentry.core.model.db;
+import org.apache.hadoop.classification.InterfaceAudience.Public;
 
+@Public
 public class Database implements DBModelAuthorizable {
 
   /**
diff --git a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Server.java b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Server.java
index 41693c2..b7feb00 100644
--- a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Server.java
+++ b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Server.java
@@ -16,6 +16,9 @@
  */
 package org.apache.sentry.core.model.db;
 
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+
+@Public
 public class Server implements DBModelAuthorizable {
 
   /**
diff --git a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Table.java b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Table.java
index 5a98158..77735ba 100644
--- a/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Table.java
+++ b/sentry-core/sentry-core-model-db/src/main/java/org/apache/sentry/core/model/db/Table.java
@@ -16,6 +16,9 @@
  */
 package org.apache.sentry.core.model.db;
 
+import org.apache.hadoop.classification.InterfaceAudience.Public;
+
+@Public
 public class Table implements TableOrView {
 
   /**
diff --git a/sentry-provider/sentry-provider-common/src/main/java/org/apache/sentry/provider/common/AuthorizationProvider.java b/sentry-provider/sentry-provider-common/src/main/java/org/apache/sentry/provider/common/AuthorizationProvider.java
index aecfe5b..91485f3 100644
--- a/sentry-provider/sentry-provider-common/src/main/java/org/apache/sentry/provider/common/AuthorizationProvider.java
+++ b/sentry-provider/sentry-provider-common/src/main/java/org/apache/sentry/provider/common/AuthorizationProvider.java
@@ -21,6 +21,7 @@
 
 import javax.annotation.concurrent.ThreadSafe;
 
+import org.apache.hadoop.classification.InterfaceAudience.Public;
 import org.apache.sentry.core.common.Action;
 import org.apache.sentry.core.common.ActiveRoleSet;
 import org.apache.sentry.core.common.Authorizable;
@@ -33,6 +34,7 @@
  * Implementations of AuthorizationProvider must be threadsafe.
  */
 @ThreadSafe
+@Public
 public interface AuthorizationProvider {
 
   String SENTRY_PROVIDER = "sentry.provider";
diff --git a/sentry-provider/sentry-provider-common/src/main/java/org/apache/sentry/provider/common/ProviderBackend.java b/sentry-provider/sentry-provider-common/src/main/java/org/apache/sentry/provider/common/ProviderBackend.java
index 761fb52..b244dba 100644
--- a/sentry-provider/sentry-provider-common/src/main/java/org/apache/sentry/provider/common/ProviderBackend.java
+++ b/sentry-provider/sentry-provider-common/src/main/java/org/apache/sentry/provider/common/ProviderBackend.java
@@ -20,6 +20,7 @@
 
 import javax.annotation.concurrent.ThreadSafe;
 
+import org.apache.hadoop.classification.InterfaceAudience.Public;
 import org.apache.sentry.core.common.ActiveRoleSet;
 import org.apache.sentry.core.common.Authorizable;
 import org.apache.sentry.core.common.exception.SentryConfigurationException;
@@ -32,6 +33,7 @@
  * been called.
  */
 @ThreadSafe
+@Public
 public interface ProviderBackend {
 
   /**
