JAAS (Java Authentication and Authorization Service), Java uygulamalarında kimlik doğrulama ve yetkilendirme işlemlerini portatif bir şekilde gerçekleştirmeyi sağlayan bir API'dir. JAAS'ın çalışma şekli şu şekildedir: 1. İstemci, JAAS tarafından sunulan bir sınıf olan yeni bir `LoginContext` nesnesi oluşturur. 2. `LoginContext` nesnesi, kimlik doğrulama işleminin hangi `LoginModule` ile yapılacağını bildiren bir `Configuration` nesnesi alır. 3. `LoginContext`, kimlik doğrulama mekanizmalarının neler olduğunu `Configuration` nesnesine sorar. 4. `Configuration` nesnesi, kimlik doğrulama mekanizmalarından oluşan bir liste döndürür. 5. `LoginContext`, oluşturulan `LoginModule` sınıflarından nesneler oluşturur ve bu nesneleri ilişkilendirir. 6. İstemci kodu, `LoginContext` nesnesi üzerinden `login()` metodunu çağırır. 7. `LoginContext`, kimlik doğrulama işlemlerini `LoginModule` nesnelerine devreder. 8. `LoginModule` nesneleri, kimlik doğrulama işlemini gerçekleştirir. 9. İşlem sonucu oluşturulan bilgiler, güvenli işlemler gerçekleştirmek için kullanılan bir `Subject` sınıfından oluşturulmuş nesnenin içinde saklanır. JAAS, özellikle EJB güvenliğinde sıklıkla kullanılır.