It should be easier to refer to a particular Credentials from a script.

      Currently you can use GenericSCMStep with a hardcoded ID (or see JENKINS-26085). But this looks ugly in the script. It would be nicer for not just Workflow but other non-UI-driven plugins as well (Templates, Job DSL, YAML Project, &c.) if you could define a meaningful ID when creating a StandardCredentials. Perhaps this could be in an Advanced block when configuring the credentials. Without such a UI, you have to resort to editing $JENKINS_HOME/credentials.xml and reloading configuration from disk.

      Note that the actual lookup of the live StandardCredentials by its ID happens in some context, where the Item and DomainRestrictions are considered. So if the referent is not appropriate in the current context, the plugin code using the ID (for example, git-plugin) is responsible for rejecting the attempt, minimally just by saying that no Credentials with that ID could be found. In other words, security & sanity checks can be done in UI forms but they must be done again at runtime anyway; this is true even for freestyle projects since you can just upload a new config.xml with an arbitrary <credentialsId>...</credentialsId>.

      The Credentials plugin does of course need to take care to ensure that IDs are unique within a given CredentialsProvider when loading definitions from disk or adding definitions.

          [JENKINS-26099] Configurable ID for Credentials

          Jesse Glick created issue -
          Jesse Glick made changes -
          Link New: This issue is related to JENKINS-26085 [ JENKINS-26085 ]
          Jesse Glick made changes -
          Link New: This issue is related to JENKINS-26299 [ JENKINS-26299 ]
          Jesse Glick made changes -
          Link New: This issue is related to JENKINS-26051 [ JENKINS-26051 ]
          Jesse Glick made changes -
          Assignee Original: Stephen Connolly [ stephenconnolly ] New: Jesse Glick [ jglick ]
          Jesse Glick made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]

          Code changed in jenkins
          User: Jesse Glick
          Path:
          src/main/java/com/cloudbees/jenkins/plugins/sshcredentials/impl/BaseSSHUser.java
          src/main/java/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPassword.java
          src/main/java/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey.java
          http://jenkins-ci.org/commit/ssh-credentials-plugin/397bec75840835c953708f006d4ad74a7f9b5926
          Log:
          Making BaseSSHUser extend BaseStandardCredentials simplifies code and may be helpful for JENKINS-26099.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/main/java/com/cloudbees/jenkins/plugins/sshcredentials/impl/BaseSSHUser.java src/main/java/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPassword.java src/main/java/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey.java http://jenkins-ci.org/commit/ssh-credentials-plugin/397bec75840835c953708f006d4ad74a7f9b5926 Log: Making BaseSSHUser extend BaseStandardCredentials simplifies code and may be helpful for JENKINS-26099 .

          Code changed in jenkins
          User: Jesse Glick
          Path:
          src/main/java/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials.java
          src/main/java/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl.java
          src/main/java/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl.java
          src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/help-description.html
          src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/help-description_ja.html
          src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/help-id.html
          src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/id-and-description.jelly
          src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/id-and-description_de.properties
          src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/id-and-description_ja.properties
          src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/credentials.jelly
          src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/credentials_de.properties
          src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/credentials_ja.properties
          src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/help-description.html
          src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/help-description_ja.html
          src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/credentials.jelly
          src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/credentials_de.properties
          src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/credentials_ja.properties
          src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/help-description.html
          src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/help-description_ja.html
          http://jenkins-ci.org/commit/credentials-plugin/d993c3879e07809edb0af847076eedcd984d7d7c
          Log:
          JENKINS-26099 First draft of ability to pick an ID for credentials.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/main/java/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials.java src/main/java/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl.java src/main/java/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl.java src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/help-description.html src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/help-description_ja.html src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/help-id.html src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/id-and-description.jelly src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/id-and-description_de.properties src/main/resources/com/cloudbees/plugins/credentials/impl/BaseStandardCredentials/id-and-description_ja.properties src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/credentials.jelly src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/credentials_de.properties src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/credentials_ja.properties src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/help-description.html src/main/resources/com/cloudbees/plugins/credentials/impl/CertificateCredentialsImpl/help-description_ja.html src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/credentials.jelly src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/credentials_de.properties src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/credentials_ja.properties src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/help-description.html src/main/resources/com/cloudbees/plugins/credentials/impl/UsernamePasswordCredentialsImpl/help-description_ja.html http://jenkins-ci.org/commit/credentials-plugin/d993c3879e07809edb0af847076eedcd984d7d7c Log: JENKINS-26099 First draft of ability to pick an ID for credentials.
          Jesse Glick made changes -
          Remote Link New: This issue links to "PR 21 (Web Link)" [ 12015 ]

          Code changed in jenkins
          User: Jesse Glick
          Path:
          pom.xml
          src/main/java/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey.java
          src/main/resources/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey/credentials.jelly
          src/main/resources/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey/credentials_de.properties
          src/main/resources/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey/credentials_ja.properties
          http://jenkins-ci.org/commit/ssh-credentials-plugin/ab9245809aa854544d144c90a4ca4835cdafb4f9
          Log:
          JENKINS-26099 Permit BasicSSHUserPrivateKey.id to be configured.

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: pom.xml src/main/java/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey.java src/main/resources/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey/credentials.jelly src/main/resources/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey/credentials_de.properties src/main/resources/com/cloudbees/jenkins/plugins/sshcredentials/impl/BasicSSHUserPrivateKey/credentials_ja.properties http://jenkins-ci.org/commit/ssh-credentials-plugin/ab9245809aa854544d144c90a4ca4835cdafb4f9 Log: JENKINS-26099 Permit BasicSSHUserPrivateKey.id to be configured.

            jglick Jesse Glick
            jglick Jesse Glick
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: