jenkins.model.Jenkins.getSecurityRealm()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(10.3k)|赞(0)|评价(0)|浏览(194)

本文整理了Java中jenkins.model.Jenkins.getSecurityRealm()方法的一些代码示例,展示了Jenkins.getSecurityRealm()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Jenkins.getSecurityRealm()方法的具体详情如下:
包路径:jenkins.model.Jenkins
类名称:Jenkins
方法名:getSecurityRealm

Jenkins.getSecurityRealm介绍

暂无

代码示例

代码示例来源:origin: jenkinsci/jenkins

  1. @Override
  2. public boolean isEnabled() {
  3. // this feature is only when HudsonPrivateSecurityRealm is enabled
  4. return Jenkins.getInstance().getSecurityRealm() instanceof HudsonPrivateSecurityRealm;
  5. }

代码示例来源:origin: jenkinsci/jenkins

  1. public String getIconFileName() {
  2. if(Jenkins.getInstance().getSecurityRealm() instanceof HudsonPrivateSecurityRealm)
  3. return "user.png";
  4. else
  5. return null; // not applicable now
  6. }

代码示例来源:origin: jenkinsci/jenkins

  1. private boolean needsToCreateFirstUser() {
  2. return !hasSomeUser()
  3. && Jenkins.getInstance().getSecurityRealm() instanceof HudsonPrivateSecurityRealm;
  4. }

代码示例来源:origin: jenkinsci/jenkins

  1. /**
  2. * Sign up for the user account.
  3. */
  4. public void doSignup( StaplerRequest req, StaplerResponse rsp ) throws IOException, ServletException {
  5. if (getSecurityRealm().allowsSignup()) {
  6. req.getView(getSecurityRealm(), "signup.jelly").forward(req, rsp);
  7. return;
  8. }
  9. req.getView(SecurityRealm.class, "signup.jelly").forward(req, rsp);
  10. }

代码示例来源:origin: jenkinsci/jenkins

  1. @Override
  2. public UserDetails call() throws Exception {
  3. try {
  4. Jenkins jenkins = Jenkins.getInstance();
  5. UserDetails userDetails = jenkins.getSecurityRealm().loadUserByUsername(idOrFullName);
  6. if (userDetails == null) {
  7. existenceCache.put(this.idOrFullName, Boolean.FALSE);
  8. throw new NullPointerException("hudson.security.SecurityRealm should never return null. "
  9. + jenkins.getSecurityRealm() + " returned null for idOrFullName='" + idOrFullName + "'");
  10. }
  11. existenceCache.put(this.idOrFullName, Boolean.TRUE);
  12. return userDetails;
  13. } catch (UsernameNotFoundException e) {
  14. existenceCache.put(this.idOrFullName, Boolean.FALSE);
  15. throw e;
  16. } catch (DataAccessException e) {
  17. existenceCache.invalidate(this.idOrFullName);
  18. throw e;
  19. }
  20. }
  21. }

代码示例来源:origin: jenkinsci/jenkins

  1. public void init(FilterConfig filterConfig) throws ServletException {
  2. this.filterConfig = filterConfig;
  3. // this is how we make us available to the rest of Hudson.
  4. filterConfig.getServletContext().setAttribute(HudsonFilter.class.getName(),this);
  5. try {
  6. Jenkins hudson = Jenkins.getInstanceOrNull();
  7. if (hudson != null) {
  8. // looks like we are initialized after Hudson came into being. initialize it now. See #3069
  9. LOGGER.fine("Security wasn't initialized; Initializing it...");
  10. SecurityRealm securityRealm = hudson.getSecurityRealm();
  11. reset(securityRealm);
  12. LOGGER.fine("securityRealm is " + securityRealm);
  13. LOGGER.fine("Security initialized");
  14. }
  15. } catch (ExceptionInInitializerError e) {
  16. // see HUDSON-4592. In some containers this happens before
  17. // WebAppMain.contextInitialized kicks in, which makes
  18. // the whole thing fail hard before a nicer error check
  19. // in WebAppMain.contextInitialized. So for now,
  20. // just report it here, and let the WebAppMain handle the failure gracefully.
  21. LOGGER.log(SEVERE, "Failed to initialize Jenkins",e);
  22. }
  23. }

代码示例来源:origin: jenkinsci/jenkins

  1. /**
  2. * Returns the {@link jenkins.model.IdStrategy} for use with {@link User} instances. See
  3. * {@link hudson.security.SecurityRealm#getUserIdStrategy()}
  4. *
  5. * @return the {@link jenkins.model.IdStrategy} for use with {@link User} instances.
  6. * @since 1.566
  7. */
  8. @Nonnull
  9. public static IdStrategy idStrategy() {
  10. Jenkins j = Jenkins.get();
  11. SecurityRealm realm = j.getSecurityRealm();
  12. if (realm == null) {
  13. return IdStrategy.CASE_INSENSITIVE;
  14. }
  15. return realm.getUserIdStrategy();
  16. }

代码示例来源:origin: jenkinsci/jenkins

  1. private Authentication getUserAuthIfValidMac(String username, String mac, String fullValueStored) {
  2. if (!MAC.checkMac(username, mac)) {
  3. LOGGER.log(Level.FINE, "Ignoring stored CLI authentication due to MAC mismatch: {0}", fullValueStored);
  4. return Jenkins.ANONYMOUS;
  5. }
  6. try {
  7. UserDetails u = Jenkins.get().getSecurityRealm().loadUserByUsername(username);
  8. LOGGER.log(Level.FINER, "Loaded stored CLI authentication for {0}", username);
  9. return new UsernamePasswordAuthenticationToken(u.getUsername(), "", u.getAuthorities());
  10. } catch (AuthenticationException | DataAccessException e) {
  11. //TODO there is no check to be consistent with User.ALLOW_NON_EXISTENT_USER_TO_LOGIN
  12. LOGGER.log(Level.FINE, "Stored CLI authentication did not correspond to a valid user: " + username, e);
  13. return Jenkins.ANONYMOUS;
  14. }
  15. }

代码示例来源:origin: jenkinsci/jenkins

  1. UserDetails getUserDetailsForImpersonation() throws UsernameNotFoundException {
  2. ImpersonatingUserDetailsService userDetailsService = new ImpersonatingUserDetailsService(
  3. Jenkins.get().getSecurityRealm().getSecurityComponents().userDetails
  4. );

代码示例来源:origin: jenkinsci/jenkins

  1. /**
  2. * Determines if the security settings seem to match the defaults. Here, we only
  3. * really care about and test for HudsonPrivateSecurityRealm and the user setup.
  4. * Other settings are irrelevant.
  5. */
  6. /*package*/ boolean isUsingSecurityDefaults() {
  7. Jenkins j = Jenkins.get();
  8. if (j.getSecurityRealm() instanceof HudsonPrivateSecurityRealm) {
  9. HudsonPrivateSecurityRealm securityRealm = (HudsonPrivateSecurityRealm)j.getSecurityRealm();
  10. try {
  11. if(securityRealm.getAllUsers().size() == 1) {
  12. HudsonPrivateSecurityRealm.Details details = securityRealm.loadUserByUsername(SetupWizard.initialSetupAdminUserName);
  13. FilePath iapf = getInitialAdminPasswordFile();
  14. if (iapf.exists()) {
  15. if (details.isPasswordCorrect(iapf.readToString().trim())) {
  16. return true;
  17. }
  18. }
  19. }
  20. } catch(UsernameNotFoundException | IOException | InterruptedException e) {
  21. return false; // Not initial security setup if no transitional admin user / password found
  22. }
  23. }
  24. return false;
  25. }

代码示例来源:origin: jenkinsci/jenkins

  1. public void generateResponse(StaplerRequest req, StaplerResponse rsp, Object node) throws IOException, ServletException {
  2. SecurityRealm sr = Jenkins.getInstance().getSecurityRealm();
  3. if (sr.allowsSignup()) {
  4. try {
  5. sr.commenceSignup(identity).generateResponse(req,rsp,node);
  6. return;
  7. } catch (UnsupportedOperationException e) {
  8. // fall through
  9. }
  10. }
  11. // this security realm doesn't support user registration.
  12. // just report an error
  13. req.getView(this,"error").forward(req,rsp);
  14. }
  15. }

代码示例来源:origin: jenkinsci/jenkins

  1. @Override
  2. public Authentication authenticate(HttpServletRequest req, HttpServletResponse rsp, String username, String password) throws IOException, ServletException {
  3. if (DISABLE)
  4. return null;
  5. UsernamePasswordAuthenticationToken authRequest =
  6. new UsernamePasswordAuthenticationToken(username, password);
  7. authRequest.setDetails(authenticationDetailsSource.buildDetails(req));
  8. try {
  9. Authentication a = Jenkins.getInstance().getSecurityRealm().getSecurityComponents().manager.authenticate(authRequest);
  10. // Authentication success
  11. LOGGER.log(FINER, "Authentication success: {0}", a);
  12. return a;
  13. } catch (AuthenticationException failed) {
  14. // Authentication failed
  15. LOGGER.log(FINER, "Authentication request for user: {0} failed: {1}", new Object[]{username,failed});
  16. return null;
  17. }
  18. }

代码示例来源:origin: jenkinsci/jenkins

  1. try {
  2. CliAuthenticator authenticator = Jenkins.get().getSecurityRealm().createCliAuthenticator(this);
  3. new ClassParser().parse(authenticator, parser);

代码示例来源:origin: jenkinsci/jenkins

  1. old = sc.getAuthentication();
  2. CliAuthenticator authenticator = Jenkins.getActiveInstance().getSecurityRealm().createCliAuthenticator(this);
  3. sc.setAuthentication(getTransportAuthentication());
  4. new ClassParser().parse(authenticator,p);

代码示例来源:origin: jenkinsci/jenkins

  1. if(jenkins.getSecurityRealm() == null || jenkins.getSecurityRealm() == SecurityRealm.NO_AUTHENTICATION) { // this seems very fragile
  2. try (BulkChange bc = new BulkChange(jenkins)) {
  3. HudsonPrivateSecurityRealm securityRealm = new HudsonPrivateSecurityRealm(false, false, null);

代码示例来源:origin: jenkinsci/jenkins

  1. UserDetails u = h.getSecurityRealm().loadUserByUsername(a.getName());
  2. String username = u.getUsername();

代码示例来源:origin: jenkinsci/jenkins

  1. /**
  2. * Call this method to authenticate the user when you confirmed (via your protocol specific work) that
  3. * the current HTTP request indeed owns this identifier.
  4. *
  5. * <p>
  6. * This method will locate the user who owns this identifier, associate the credential with
  7. * the current session. IOW, it signs in the user.
  8. *
  9. * @throws UnclaimedIdentityException
  10. * If this identifier is not claimed by anyone. If you just let this exception propagate
  11. * to the caller of your "doXyz" method, it will either render an error page or initiate
  12. * a user registration session (provided that {@link SecurityRealm} supports that.)
  13. */
  14. @SuppressWarnings("ACL.impersonate")
  15. @Nonnull
  16. public User signin() throws UnclaimedIdentityException {
  17. User u = locateUser();
  18. if (u!=null) {
  19. // login as this user
  20. UserDetails d = Jenkins.getInstance().getSecurityRealm().loadUserByUsername(u.getId());
  21. UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(d,"",d.getAuthorities());
  22. token.setDetails(d);
  23. SecurityContextHolder.getContext().setAuthentication(token);
  24. return u;
  25. } else {
  26. // Unassociated identity.
  27. throw new UnclaimedIdentityException(this);
  28. }
  29. }

代码示例来源:origin: jenkinsci/jenkins

  1. HudsonPrivateSecurityRealm securityRealm = (HudsonPrivateSecurityRealm) j.getSecurityRealm();

代码示例来源:origin: jenkinsci/configuration-as-code-plugin

  1. @Test
  2. @ConfiguredWithCode("HeteroDescribable.yml")
  3. public void jenkins_abstract_describable_attributes() throws Exception {
  4. final Jenkins jenkins = Jenkins.getInstance();
  5. assertTrue(jenkins.getSecurityRealm() instanceof HudsonPrivateSecurityRealm);
  6. assertTrue(jenkins.getAuthorizationStrategy() instanceof FullControlOnceLoggedInAuthorizationStrategy);
  7. assertFalse(((FullControlOnceLoggedInAuthorizationStrategy) jenkins.getAuthorizationStrategy()).isAllowAnonymousRead());
  8. }

代码示例来源:origin: jenkinsci/configuration-as-code-plugin

  1. @Test
  2. @ConfiguredWithCode("HudsonPrivateSecurityRealmConfiguratorTest.yml")
  3. public void configure_local_security_and_admin_user() throws Exception {
  4. final Jenkins jenkins = Jenkins.getInstance();
  5. final HudsonPrivateSecurityRealm securityRealm = (HudsonPrivateSecurityRealm) jenkins.getSecurityRealm();
  6. assertFalse(securityRealm.allowsSignup());
  7. final User admin = User.getById("admin", false);
  8. assertNotNull(admin);
  9. final HudsonPrivateSecurityRealm.Details details = admin.getProperty(HudsonPrivateSecurityRealm.Details.class);
  10. assertTrue(details.isPasswordCorrect("1234"));
  11. final FullControlOnceLoggedInAuthorizationStrategy authorizationStrategy = (FullControlOnceLoggedInAuthorizationStrategy) jenkins.getAuthorizationStrategy();
  12. assertTrue(authorizationStrategy.isAllowAnonymousRead());
  13. ConfiguratorRegistry registry = ConfiguratorRegistry.get();
  14. ConfigurationContext context = new ConfigurationContext(registry);
  15. final Configurator c = context.lookupOrFail(HudsonPrivateSecurityRealm.class);
  16. final CNode node = c.describe(securityRealm, context);
  17. final Mapping user = node.asMapping().get("users").asSequence().get(0).asMapping();
  18. assertEquals("admin", user.getScalarValue("id"));
  19. }
  20. }

相关文章

Jenkins类方法