<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.7.0/javadoc/org/apache/ignite/plugin/security/package-frame.html" />
<!-- Generated by javadoc (version 1.7.0_80) on Mon Aug 01 20:32:34 MSK 2016 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>org.apache.ignite.plugin.security (Ignite 1.7.0)</title>
<meta name="date" content="2016-08-01">
<link rel="stylesheet" type="text/css" href="../../../../../javadoc.css" title="Style">

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>
<body>
<h1 class="bar"><a href="../../../../../org/apache/ignite/plugin/security/package-summary.html" target="classFrame">org.apache.ignite.plugin.security</a></h1>
<div class="indexContainer">
<h2 title="Interfaces">Interfaces</h2>
<ul title="Interfaces">
<li><a href="SecurityCredentialsProvider.html" title="interface in org.apache.ignite.plugin.security" target="classFrame"><i>SecurityCredentialsProvider</i></a></li>
<li><a href="SecurityPermissionSet.html" title="interface in org.apache.ignite.plugin.security" target="classFrame"><i>SecurityPermissionSet</i></a></li>
<li><a href="SecuritySubject.html" title="interface in org.apache.ignite.plugin.security" target="classFrame"><i>SecuritySubject</i></a></li>
</ul>
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="AuthenticationContext.html" title="class in org.apache.ignite.plugin.security" target="classFrame">AuthenticationContext</a></li>
<li><a href="SecurityCredentials.html" title="class in org.apache.ignite.plugin.security" target="classFrame">SecurityCredentials</a></li>
<li><a href="SecurityCredentialsBasicProvider.html" title="class in org.apache.ignite.plugin.security" target="classFrame">SecurityCredentialsBasicProvider</a></li>
</ul>
<h2 title="Enums">Enums</h2>
<ul title="Enums">
<li><a href="SecurityPermission.html" title="enum in org.apache.ignite.plugin.security" target="classFrame">SecurityPermission</a></li>
<li><a href="SecuritySubjectType.html" title="enum in org.apache.ignite.plugin.security" target="classFrame">SecuritySubjectType</a></li>
</ul>
<h2 title="Exceptions">Exceptions</h2>
<ul title="Exceptions">
<li><a href="SecurityException.html" title="class in org.apache.ignite.plugin.security" target="classFrame">SecurityException</a></li>
</ul>
</div>
</body>
</html>
