5.2. 在 IdM CLI 中转换外部证书,并将其加载到 IdM 用户帐户


IdM CLI 只接受 PEM 证书,第一行和最后一行(-----BEGIN CERTIFICATE----- 和 -----END CERTIFICATE-----)已从中移除。

按照以下流程,将外部证书转换为 PEM 格式,并使用 IdM CLI 将其添加到 IdM 用户帐户。

流程

  1. 将证书转换为 PEM 格式:

    • 如果您的证书为 DER 格式:

      $ openssl x509 -in cert.crt -inform der -outform pem -out cert.pem
      Copy to Clipboard
    • 如果您的文件是 PKCS #12 格式,其通用文件扩展名为 .pfx.p12,并且包含证书、私钥和其他数据,请使用 openssl pkcs12 工具提取证书。提示时,输入保护存储在文件中私钥的密码:

      $ openssl pkcs12 -in cert_and_key.p12 -clcerts -nokeys -out cert.pem
      Enter Import Password:
      Copy to Clipboard
  2. 获得管理员凭证:

    $ kinit admin
    Copy to Clipboard
  3. 根据以下方法之一,使用 IdM CLI 将证书添加到用户帐户:

    • 在将字符串添加到 ipa user-add-cert 命令前,使用 sed 工具删除 PEM 文件的第一行和最后一行(-----BEGIN CERTIFICATE----- 和 -----END CERTIFICATE-----):

      $ ipa user-add-cert some_user --certificate="$(sed -e '/BEGIN CERTIFICATE/d;/END CERTIFICATE/d' cert.pem)"
      Copy to Clipboard
    • 将不包含 第一行和最后一行(-----BEGIN CERTIFICATE----- 和 -----END CERTIFICATE-----)的证书文件的内容复制并粘贴到 ipa user-add-cert 命令中:

      $ ipa user-add-cert some_user --certificate=MIIDlzCCAn+gAwIBAgIBATANBgkqhki...
      Copy to Clipboard
      注意

      您不能直接将包含证书的 PEM 文件作为输入传给 ipa user-add-cert 命令,无需先删除第一行和最后一行(-----BEGIN CERTIFICATE----- 和 -----END CERTIFICATE-----):

      $ ipa user-add-cert some_user --cert=some_user_cert.pem
      Copy to Clipboard

      此命令会导致 "ipa: ERROR: Base64 decoding failed: Incorrect padding"错误消息。

  4. 要检查证书是否被系统接受:

    $ ipa user-show some_user
    Copy to Clipboard
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat