標準 Java 2 セキュリティー・アプリケーション・プログラミング・インターフェース (API) は、 コード・ソースのロケーションに基づいた、または JAR ファイルに署名したコードの作成者またはパッケージャーに基づいたアクセス制御を実施します。実行スレッドの現行プリンシパルは、 Java 2 セキュリティー許可では考慮されていません。 コード・ベースではなく、プリンシパルとユーザーに基づいて許可が行われるインスタンスがあります。 Java Authentication and Authorization Service は、Java 2 Security 許可を、 コード・ベースおよびユーザーだけでなく、 プリンシパルに対するコード・ベースまで拡張できるようにサポートする標準 Java API です。
Java Authentication and Authorization Service (JAAS) バージョン 1.0 は、 Java 2 プラットフォームの Java 2 セキュリティー・アーキテクチャーを拡張したもので、 プリンシパルとユーザーによるアクセス制御を認証および実施する追加サポートが備わっています。 JAAS は、プラグ可能認証モジュール (PAM) 標準フレームワークの Java バージョンをインプリメントし、ユーザー・ベースの許可サポートまたはプリンシパル・ベースの許可サポートと互換性のある方法で、 Java 2 プラットフォームのアクセス制御アーキテクチャーを拡張します。 WebSphere Application Server は、JAAS アーキテクチャーを完全にサポートします。 JAAS は、アクセス制御アーキテクチャーを拡張して、サーブレット、 JavaServer Pages (JSP) ファイル、および Enterprise JavaBeans (EJB) コンポーネントを含む Java 2 Platform, Enterprise Edition (J2EE) リソースの役割ベースの許可をサポートします。