IBM i Global

IBM i 

A space for professionals working with IBM’s integrated OS for Power systems to exchange ideas, ask questions, and share expertise on topics like RPG and COBOL development, application modernization, open source integration, system administration, and business continuity.


#Power


#IBMi
#Power
 View Only
  • 1.  Populate with CAs

    Posted 28 days ago


    ------------------------------
    Robert Berendt IBMChampion
    Business Systems Analyst, Lead
    Dekko
    Fort Wayne
    ------------------------------


  • 2.  RE: Populate with CAs

    Posted 26 days ago

    By itself it is not a big deal to accept the official CA's (the Windows keystore is also updated automatically) but on the other hand, the more you trust the bigger the attack surface gets.

    It all depends a bit to who you're connecting... if this is a random list or well defined one, and whether you validate the trust on your connections or not.



    ------------------------------
    Paul Nicolay
    ------------------------------



  • 3.  RE: Populate with CAs

    Posted 18 days ago

    Is there a command line or other batch way of performing "Populate with CAs"?

    I apply PTFs quarterly.
    I would like to automate the function of Digital Certificate Manager https://myibmi.MyCo.com:2007/dcm/mainframe
    Especially the function "Populate with CAs". I want to execute this from a command line automatically after an IPL. I have multiple LPARs and do not want to manually perform this on each.
    I'm under the assumption that applying PTFs updates a file on the system which the "Populate with CAs" pulls in. Perhaps /QIBM/UserData/ICSS/Cert/Server/DEFAULT.KDB
    Is there some command, or does someone have a sample of using some API to do this?
    See also: https://www.ibm.com/docs/en/i/7.6.0?topic=ssw_ibm_i_76/apis/qykmimpk.html

    See also: https://github.com/ThePrez/DCM-tools?tab=readme-ov-file#readme

    "ThePrez" is IBM employee Jesse Gorzinski



    ------------------------------
    Robert Berendt IBMChampion
    Business Systems Analyst, Lead
    Dekko
    Fort Wayne
    ------------------------------



  • 4.  RE: Populate with CAs

    Posted 17 days ago

    There are different Certificate Authority certificate management policies and processes.  However, IBM i Security would suggest the "as-required" principal would apply here.  The intent of the "Populate with CAs" function in DCM was to make it easier for the client to self-populate the well-known public CAs they require as well make it easier for IBM i development to update the "Populate with CAs" list of CAs via IBM i PTFs and not touch your certificate store.  So as IBM i DCM PTFs are applied to your IBM i server, they may include new well-known public CAs under the Populate with CAs list in DCM.  As a result, subsequent "Populate with CAs" executions may result in additional CAs (if selected) being added to your *SYSTEM certificate store.  Do you NEED to re-run the Populate with CAs function after an IBM i PTF apply?  The answer depends.  Yes, if you require the newly PTF-provided CAs to be populated in your *SYSTEM certificate store to resolve a TLS connectivity issue or prepare to be used on a TLS connection.  No, if you don't have a current or an anticipated need to actually use these CAs with a TLS connection and your company implements the "as-needed or as-required" security policy.

    In addition, there are also performance considerations directly related to the number of certificates, including Certificate Authorities, that exist in your DCM *SYSTEM certificate store.  The more certificates that exist in the certificate store, the longer it will take to search for and identify the correct certificates for each TLS certificate operation and connection.  In addition, certificate stores with a large amount of certificates need to be considered with scalability and very, very high TLS transactional environments.  As a result, IBM recommends keeping the number of certificates in your certificate stores to a minimum for these security, performance, and scalability reasons.

    There is no CL command or external API that can be called to execute the "Populate with CAs" operation outside of the DCM GUI.  However, there are fairly new IBM i DCM REST APIs you can use to manage digital certificates and create your own "Populate with CAs" utility across multiple IBM i endpoints. Alternatively, you could execute your "Populate with CAs" utility to multiple IBM i systems using the ibm.power_ibmi Ansible for i collection.

    To obtain the CA certificates in "Populate with CAs", you will need to create a new certificate store in DCM using the "Other" type, populate it yourself with the entire list of CAs (via the DCM GUI) and then use the DCM REST API to export all of the CAs from the new certificate store to populate your CA repository that you can use with your client program that will import the CAs across your IBM i servers.



    ------------------------------
    Jared Pehrson
    IBM
    ------------------------------



  • 5.  RE: Populate with CAs

    Posted 17 days ago

    I appreciate all these concerns.  However I would still have to log on to DCM, execute Populate with CAs.  I am not going to take the time to individually review each CA.  And how am I supposed to know which CA is needed by some new IBM SQL Service which retrieves info from the internet?

    https://ibm-power-systems.ideas.ibm.com/ideas/IBMI-I-4736



    ------------------------------
    Robert Berendt IBMChampion
    Business Systems Analyst, Lead
    Dekko
    Fort Wayne
    ------------------------------



  • 6.  RE: Populate with CAs

    Posted 16 days ago

    I agree with Robert. If there is a mechanism to install trusted CA's from whatever list IBM deems ok, there is no good reason why it should be available via a GUI but not an API. I voted for the idea on the Ideas Portal now.



    ------------------------------
    Kurt Thomas
    Senior System Engineere
    Fortra
    ------------------------------



  • 7.  RE: Populate with CAs

    Posted 16 days ago

    An IBM SQL Service won't need a specific CA by itself... that is determined by the URL you connect to and I don't consider it IBM's responsible for providing you the CA for it (if you connect to an internal server that is using a local CA you'll need to import it yourself anyway).

    Official lists can be found at ccadb.my.salesforce-sites.com/microsoft/IncludedCACertificateReportForMSFT or CA/Included Certificates - MozillaWiki or Available root certificates for Apple operating systems - Apple Support  Which list IBM is using when using the GUI is something I don't know.



    ------------------------------
    Paul Nicolay
    ------------------------------



  • 8.  RE: Populate with CAs

    Posted 16 days ago

    Paul,

    You're right. An SQL service won't need a particular cert by itself.  It is the endpoint URL.  However I HAVE seen IBM issue services which went to endpoint URLs, which failed until you went into "Populate with CAs".

    So what you are saying is that developers who try these new services and end up getting some weird SQL.... message need to open a case with IBM to find out that they need to add the new cert?



    ------------------------------
    Robert Berendt IBMChampion
    Business Systems Analyst, Lead
    Dekko
    Fort Wayne
    ------------------------------



  • 9.  RE: Populate with CAs

    Posted 16 days ago

    It's unclear for me if you've a problem with the cryptic message (is that so ?) or with the fact that you need to download the CA's... which are two distinct issues.

    I agree that IBM should make the message clear (but I think it mentions a trust issue, but feel free to correct me on that)... but if it is clear a good developer should be able to find out what the certificate chain is and install the required intermediate and root CA's based on that.  I do agree that this is easier by just clicking on a button then getting and uploading them yourself (however this isn't rocket science neither).



    ------------------------------
    Paul Nicolay
    ------------------------------



  • 10.  RE: Populate with CAs

    Posted 14 days ago

    Maybe the issue would be "solved" if IBM just discloses where the eventual PTF put the certs, or an address with their mandated list. Thus one can automate the cert import if so one whishes via calls.

    Also some form of cert roots can be found also in the java dir "cacerts" file, in case one need to get them to have a coherent system regarding trust, considering PASE and JVM in the equation if used...



    ------------------------------
    --ft
    ------------------------------