jenkins.security.QueueItemAuthenticatorConfiguration.get()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(7.9k)|赞(0)|评价(0)|浏览(46)

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

QueueItemAuthenticatorConfiguration.get介绍

[英]Provides all user-configured authenticators. Note that if you are looking to determine all effective authenticators, including any potentially supplied by plugins rather than user configuration, you should rather call QueueItemAuthenticatorProvider#authenticators; or if you are looking for the authentication of an actual project, build, etc., use hudson.model.Queue.Item#authenticate or Tasks#getAuthenticationOf.
[中]提供所有用户配置的身份验证程序。请注意,如果您希望确定所有有效的验证器,包括任何可能由插件而不是用户配置提供的验证器,那么您应该调用QueueItemAuthenticatorProvider#验证器;或者,如果您正在寻找实际项目、构建等的身份验证,请使用hudson。模型队列项目#验证或任务#getAuthenticationOf。

代码示例

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

@Nonnull
  @Override
  public List<QueueItemAuthenticator> getAuthenticators() {
    return get().getAuthenticators();
  }
}

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

if (QueueItemAuthenticatorDescriptor.all().isEmpty()) {
  LOGGER.fine("no QueueItemAuthenticator implementations installed");
} else if (QueueItemAuthenticatorConfiguration.get().getAuthenticators().isEmpty()) {
  LOGGER.fine("no QueueItemAuthenticator implementations configured");
} else {

代码示例来源:origin: org.jenkins-ci.main/jenkins-core

@Nonnull
  @Override
  public List<QueueItemAuthenticator> getAuthenticators() {
    return get().getAuthenticators();
  }
}

代码示例来源:origin: jenkinsci/pipeline-maven-plugin

public boolean isUpstreamBuildVisibleByDownstreamBuildAuth(@Nonnull WorkflowJob upstreamPipeline, @Nonnull Queue.Task downstreamPipeline) {
  Authentication auth = Tasks.getAuthenticationOf(downstreamPipeline);
  Authentication downstreamPipelineAuth;
  if (auth.equals(ACL.SYSTEM) && !QueueItemAuthenticatorConfiguration.get().getAuthenticators().isEmpty()) {
    downstreamPipelineAuth = Jenkins.ANONYMOUS; // cf. BuildTrigger
  } else {
    downstreamPipelineAuth = auth;
  }
  try (ACLContext ignored = ACL.as(downstreamPipelineAuth)) {
    WorkflowJob upstreamPipelineObtainedAsImpersonated = getItemByFullName(upstreamPipeline.getFullName(), WorkflowJob.class);
    boolean result = upstreamPipelineObtainedAsImpersonated != null;
    LOGGER.log(Level.FINE, "isUpstreamBuildVisibleByDownstreamBuildAuth({0}, {1}): taskAuth: {2}, downstreamPipelineAuth: {3}, upstreamPipelineObtainedAsImpersonated:{4}, result: {5}",
        new Object[]{upstreamPipeline, downstreamPipeline, auth, downstreamPipelineAuth, upstreamPipelineObtainedAsImpersonated, result});
    return result;
  }
}

代码示例来源:origin: jenkinsci/parameterized-trigger-plugin

if (auth.equals(ACL.SYSTEM) && !QueueItemAuthenticatorConfiguration.get().getAuthenticators().isEmpty()) {
  auth = Jenkins.ANONYMOUS;

代码示例来源:origin: org.jenkins-ci.main/jenkins-core

if (QueueItemAuthenticatorDescriptor.all().isEmpty()) {
  LOGGER.fine("no QueueItemAuthenticator implementations installed");
} else if (QueueItemAuthenticatorConfiguration.get().getAuthenticators().isEmpty()) {
  LOGGER.fine("no QueueItemAuthenticator implementations configured");
} else {

代码示例来源:origin: jenkinsci/workflow-cps-plugin

@Override public void evaluate() throws Throwable {
    jenkins().setSecurityRealm(story.j.createDummySecurityRealm());
    jenkins().save();
    QueueItemAuthenticatorConfiguration.get().getAuthenticators().add(new MockQueueItemAuthenticator(Collections.singletonMap("demo", User.getById("someone", true).impersonate())));
    p = jenkins().createProject(WorkflowJob.class, "demo");
    p.setDefinition(new CpsFlowDefinition("echo \"ran as ${auth()}\"", true));
    b = story.j.assertBuildStatusSuccess(p.scheduleBuild2(0));
    story.j.assertLogContains("ran as someone", b);
  }
});

代码示例来源:origin: jenkinsci/cloudbees-folder-plugin

@Test
public void given_folderCredential_when_builtAsUserWithoutUseItem_then_credentialNotFound() throws Exception {
  Folder f = createFolder();
  CredentialsStore folderStore = getFolderStore(f);
  folderStore.addCredentials(Domain.global(),
      new UsernamePasswordCredentialsImpl(CredentialsScope.GLOBAL, "foo-manchu", "Dr. Fu Manchu", "foo",
          "manchu"));
  FreeStyleProject prj = f.createProject(FreeStyleProject.class, "job");
  prj.getBuildersList().add(new HasCredentialBuilder("foo-manchu"));
  JenkinsRule.DummySecurityRealm realm = r.createDummySecurityRealm();
  r.jenkins.setSecurityRealm(realm);
  MockAuthorizationStrategy strategy = new MockAuthorizationStrategy();
  strategy.grant(Item.BUILD).everywhere().to("bob");
  strategy.grant(Computer.BUILD).everywhere().to("bob");
  r.jenkins.setAuthorizationStrategy(strategy);
  HashMap<String, Authentication> jobsToUsers = new HashMap<String, Authentication>();
  jobsToUsers.put(prj.getFullName(), User.get("bob").impersonate());
  MockQueueItemAuthenticator authenticator = new MockQueueItemAuthenticator(jobsToUsers);
  QueueItemAuthenticatorConfiguration.get().getAuthenticators().clear();
  QueueItemAuthenticatorConfiguration.get().getAuthenticators().add(authenticator);
  r.assertBuildStatus(Result.FAILURE, prj.scheduleBuild2(0).get());
}

代码示例来源:origin: jenkinsci/cloudbees-folder-plugin

@Test
public void given_folderCredential_when_builtAsUserWithUseItem_then_credentialFound() throws Exception {
  Folder f = createFolder();
  CredentialsStore folderStore = getFolderStore(f);
  folderStore.addCredentials(Domain.global(),
      new UsernamePasswordCredentialsImpl(CredentialsScope.GLOBAL, "foo-manchu", "Dr. Fu Manchu", "foo",
          "manchu"));
  FreeStyleProject prj = f.createProject(FreeStyleProject.class, "job");
  prj.getBuildersList().add(new HasCredentialBuilder("foo-manchu"));
  JenkinsRule.DummySecurityRealm realm = r.createDummySecurityRealm();
  r.jenkins.setSecurityRealm(realm);
  MockAuthorizationStrategy strategy = new MockAuthorizationStrategy();
  strategy.grant(CredentialsProvider.USE_ITEM).everywhere().to("bob");
  strategy.grant(Item.BUILD).everywhere().to("bob");
  strategy.grant(Computer.BUILD).everywhere().to("bob");
  r.jenkins.setAuthorizationStrategy(strategy);
  HashMap<String, Authentication> jobsToUsers = new HashMap<String, Authentication>();
  jobsToUsers.put(prj.getFullName(), User.get("bob").impersonate());
  MockQueueItemAuthenticator authenticator = new MockQueueItemAuthenticator(jobsToUsers);
  QueueItemAuthenticatorConfiguration.get().getAuthenticators().clear();
  QueueItemAuthenticatorConfiguration.get().getAuthenticators().add(authenticator);
  r.buildAndAssertSuccess(prj);
}

代码示例来源:origin: jenkinsci/cloudbees-folder-plugin

MockQueueItemAuthenticator authenticator = new MockQueueItemAuthenticator(jobsToUsers);
QueueItemAuthenticatorConfiguration.get().getAuthenticators().clear();
QueueItemAuthenticatorConfiguration.get().getAuthenticators().add(authenticator);
try {
  r.buildAndAssertSuccess(prj);

代码示例来源:origin: jenkinsci/cloudbees-folder-plugin

MockQueueItemAuthenticator authenticator = new MockQueueItemAuthenticator(jobsToUsers);
QueueItemAuthenticatorConfiguration.get().getAuthenticators().clear();
QueueItemAuthenticatorConfiguration.get().getAuthenticators().add(authenticator);
try {
  r.buildAndAssertSuccess(prj);

代码示例来源:origin: jenkinsci/workflow-cps-plugin

@Override public void evaluate() throws Throwable {
    jenkins().setSecurityRealm(story.j.createDummySecurityRealm());
    jenkins().save();
    QueueItemAuthenticatorConfiguration.get().getAuthenticators().add(new MockQueueItemAuthenticator(Collections.singletonMap("demo", User.getById("someone", true).impersonate())));
    p = jenkins().createProject(WorkflowJob.class, "demo");
    p.setDefinition(new CpsFlowDefinition("checkAuth()", false));
    ScriptApproval.get().preapproveAll();
    startBuilding();
    waitForWorkflowToSuspend();
    assertTrue(b.isBuilding());
    story.j.waitForMessage("running as someone", b);
    CheckAuth.finish(false);
    waitForWorkflowToSuspend();
    assertTrue(b.isBuilding());
    story.j.waitForMessage("still running as someone", b);
  }
});

相关文章

微信公众号

最新文章

更多