"Fossies" - the Fresh Open Source Software Archive

Member "jenkins-jenkins-2.249.3/war/src/main/webapp/WEB-INF/security/AbstractPasswordBasedSecurityRealm.groovy" (4 Nov 2020, 2082 Bytes) of package /linux/misc/jenkins-jenkins-2.249.3.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Java source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 /*
    2  * The MIT License
    3  *
    4  * Copyright (c) 2004-2009, Sun Microsystems, Inc., Kohsuke Kawaguchi
    5  *
    6  * Permission is hereby granted, free of charge, to any person obtaining a copy
    7  * of this software and associated documentation files (the "Software"), to deal
    8  * in the Software without restriction, including without limitation the rights
    9  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
   10  * copies of the Software, and to permit persons to whom the Software is
   11  * furnished to do so, subject to the following conditions:
   12  *
   13  * The above copyright notice and this permission notice shall be included in
   14  * all copies or substantial portions of the Software.
   15  *
   16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
   17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
   18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
   19  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
   20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
   21  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
   22  * THE SOFTWARE.
   23  */
   24 /*
   25     Configure Hudson's own user database as the authentication realm.
   26 */
   27 import org.acegisecurity.providers.ProviderManager
   28 import org.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider
   29 import org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider
   30 import jenkins.model.Jenkins
   31 
   32 authenticationManager(ProviderManager) {
   33     providers = [
   34         // this does all the hard work.
   35         // injected by the parsing code
   36         authenticator,
   37 
   38         // these providers apply everywhere
   39         bean(RememberMeAuthenticationProvider) {
   40             key = Jenkins.get().getSecretKey()
   41         },
   42         // this doesn't mean we allow anonymous access.
   43         // we just authenticate anonymous users as such,
   44         // so that later authorization can reject them if so configured
   45         bean(AnonymousAuthenticationProvider) {
   46             key = "anonymous"
   47         }
   48     ]
   49 }