重置 Edge 密码

Edge for Private Cloud v4.19.01

安装完毕后,您可以重置以下密码:

有关重置上述各个密码的说明,请参阅后续部分。

重置 OpenLDAP 密码

重置 OpenLDAP 密码的方式取决于您的配置。根据您的 Edge 配置,OpenLDAP 可以安装为:

  • 安装在管理服务器节点上的单个 OpenLDAP 实例。例如,在 2 节点、5 节点或 9 节点 Edge 配置中。
  • Management Server 节点上安装了多个 OpenLDAP 实例,并配置了 OpenLDAP 复制功能。例如,在 12 个节点的 Edge 配置中。
  • 在自己的节点上安装了多个 OpenLDAP 实例,并配置了 OpenLDAP 复制功能。例如,在 13 个节点的 Edge 配置中。

对于安装在管理服务器上的单个 OpenLDAP 实例,请执行以下操作:

  1. 在管理服务器节点上,运行以下命令以创建新的 OpenLDAP 密码:
    /opt/apigee/apigee‑service/bin/apigee‑service apigee‑openldap 
      change‑ldap‑password ‑o OLD_PASSWORD ‑n NEW_PASSWORD
  2. 运行以下命令以存储管理服务器访问的新密码:
    /opt/apigee/apigee‑service/bin/apigee‑service edge‑management‑server 
      store_ldap_credentials ‑p NEW_PASSWORD

    此命令会重启管理服务器。

在 Management Server 节点上安装了 OpenLDAP 的 OpenLDAP 复制设置中,在两个 Management Server 节点上按照上述步骤更新密码。

将 OpenLDAP 置于管理服务器以外的节点上的 OpenLDAP 复制设置中,请确保先在两个 OpenLDAP 节点上更改密码,然后再在两个管理服务器节点上更改密码。

重置系统管理员密码

如需重置系统管理员密码,您需要在以下两个位置重置密码:

  • 管理服务器
  • 界面

要重置系统管理员密码,请执行以下操作

  1. 修改用于安装 Edge 界面的静默配置文件,以设置以下属性:
    APIGEE_ADMINPW=NEW_PASSWORD
    SMTPHOST=smtp.gmail.com
    SMTPPORT=465
    SMTPUSER=foo@gmail.com
    SMTPPASSWORD=bar
    SMTPSSL=y
    SMTPMAILFROM="My Company <myco@company.com>"

    请注意,在传递新密码时,您必须添加 SMTP 属性,因为界面上的所有属性都会重置。

  2. 在界面节点上,停止 Edge 界面:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
  3. 使用 apigee-setup 实用程序从配置文件在 Edge 界面上重置密码:
    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
  4. (仅在界面上启用了 TLS 的情况下)按照为管理界面配置 TLS 中的说明,在边缘界面中重新启用 TLS。
  5. 在管理服务器上,创建一个新的 XML 文件。在此文件中,将用户 ID 设置为“admin”,并使用以下格式定义密码、名字、姓氏和电子邮件地址:
    <User id="admin">
      <Password><![CDATA[password]]></Password>
      <FirstName>first_name</FirstName>
      <LastName>last_name</LastName>
      <EmailId>email_address</EmailId>
    </User>
  6. 在管理服务器上执行以下命令:
    curl ‑u "admin_email_address:admin_password" ‑H \ 
      "Content‑Type: application/xml" ‑H "Accept: application/json" ‑X POST \ 
      "http://localhost:8080/v1/users/admin_email_address" ‑d @your_data_file

    其中 your_data_file 是您在上一步中创建的文件。

    边缘会在管理服务器上更新您的管理员密码。

  7. 删除您创建的 XML 文件。绝不应以明文形式永久存储密码。

在具有多个管理服务器的 OpenLDAP 复制环境中,重置一个管理服务器上的密码会自动更新另一个管理服务器。但是,您必须单独更新所有 Edge 界面节点。

重置组织用户密码

如需重置组织用户的密码,请使用 apigee-servce 实用程序调用 apigee-setup,如以下示例所示:

/opt/apigee/apigee-service/bin/apigee-service apigee-setup reset_user_password
  [-h]
  [-u USER_EMAIL]
  [-p USER_PWD]
  [-a ADMIN_EMAIL]
  [-P APIGEE_ADMINPW]
  [-f configFile]

例如:

/opt/apigee/apigee‑service/bin/apigee‑service apigee‑setup reset_user_password 
  ‑u user@myCo.com ‑p Foo12345 ‑a admin@myCo.com ‑P adminPword
cp ~/Documents/tmp/hybrid_root/apigeectl_beta2_a00ae58_linux_64/README.md 
  ~/Documents/utilities/README.md

您可以与“-f”选项搭配使用的配置文件示例如下所示:

USER_NAME=user@myCo.com
USER_PWD="Foo12345"
APIGEE_ADMINPW=ADMIN_PASSWORD

您还可以使用 Update user API 更改用户密码。

系统管理员和组织用户密码规则

使用此部分为您的 API 管理用户强制设置所需密码长度和强度。这些设置使用一系列预配置(且编号唯一)的正则表达式来检查密码内容(例如大写、小写、数字和特殊字符)。将这些设置写入 /opt/apigee/customer/application/management-server.properties 文件。如果该文件不存在,请创建一个。

修改 management-server.properties 后,重启管理服务器:

/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

然后,您可以通过对不同的正则表达式组合进行分组来设置密码强度评分。例如,您可以确定至少包含一个大写字母和一个小写字母的密码强度评分为“3”,但至少包含一个小写字母和一个数字的密码强度评分为“4”。

媒体资源 说明
conf_security_password.validation.minimum.password.length=8
conf_security_password.validation.default.rating=2
conf_security_password.validation.minimum.rating.required=3

使用这些值可以确定有效密码的整体特征。默认密码强度的最低评分(如下文表格所示)为 3。

请注意,password.validation.default.rating=2 低于所需的最低评分,这意味着如果输入的密码不符合您配置的规则,则该密码的评级为 2,因此无效(低于最低评分 3)。

以下是用于标识密码特征的正则表达式。请注意,每个参数都有编号。例如,password.validation.regex.5=... 是表达式编号 5。您将在该文件的后面部分中使用这些数字来设置确定总体密码强度的不同组合。

conf_security_password.validation.regex.1=^(.)\\1+$

1:所有字符都会重复

conf_security_password.validation.regex.2=^.*[a-z]+.*$

2:至少包含一个小写字母

conf_security_password.validation.regex.3=^.*[A-Z]+.*$

3:至少包含一个大写字母

conf_security_password.validation.regex.4=^.*[0-9]+.*$

4:至少包含一位数字

conf_security_password.validation.regex.5=^.*[^a-zA-z0-9]+.*$

5:至少一个特殊字符(不包括下划线 _)

conf_security_password.validation.regex.6=^.*[_]+.*$

6:至少包含一个下划线

conf_security_password.validation.regex.7=^.*[a-z]{2,}.*$

7:多个小写字母

conf_security_password.validation.regex.8=^.*[A-Z]{2,}.*$

8:多个大写字母

conf_security_password.validation.regex.9=^.*[0-9]{2,}.*$

9:超过一位数字

conf_security_password.validation.regex.10=^.*[^a-zA-z0-9]{2,}.*$

10:多个特殊字符(不包括下划线)

conf_security_password.validation.regex.11=^.*[_]{2,}.*$

11:多个下划线

以下规则根据密码内容确定密码强度。每条规则都包括上一部分中的一个或多个正则表达式,并为其分配数值强度。系统会将密码的数字强度与此文件顶部的 conf_security_password.validation.minimum.rating.required 数字进行比较,以确定密码是否有效。

conf_security_password.validation.rule.1=1,AND,0
conf_security_password.validation.rule.2=2,3,4,AND,4
conf_security_password.validation.rule.3=2,9,AND,4
conf_security_password.validation.rule.4=3,9,AND,4
conf_security_password.validation.rule.5=5,6,OR,4
conf_security_password.validation.rule.6=3,2,AND,3
conf_security_password.validation.rule.7=2,9,AND,3
conf_security_password.validation.rule.8=3,9,AND,3

每条规则都有编号。例如,password.validation.rule.3=... 是规则编号 3。

每条规则均使用以下格式(等号右侧):

regex-index-list,[AND|OR],rating

regex-index-list 是正则表达式列表(按上一部分中的数字)以及 AND|OR 运算符(即考虑列出的所有表达式或任何表达式)。

rating 是为每条规则提供的强度评分数字。

例如,规则 5 表示任何密码至少包含一个特殊字符或一个下划线,其强度评分均为 4。如果文件顶部有 password.validation.minimum.rating.required=3,则表示评分为 4 的密码有效。

conf_security_rbac.password.validation.enabled=true

启用单点登录 (SSO) 时,将基于角色的访问控制密码验证设置为 false。默认值为 True。

重置 Cassandra 密码

默认情况下,Cassandra 会停用身份验证。如果您启用了身份验证,它会使用名为“cassandra”且密码为“cassandra”的预定义用户。您可以使用此账号,为此账号设置其他密码,或创建一个新的 Cassandra 用户。使用 Cassandra CREATE/ALTER/DROP USER 语句来添加、移除和修改用户。

如需了解如何启用 Cassandra 身份验证,请参阅启用 Cassandra 身份验证

如需重置 Cassandra 密码,您必须执行以下操作:

  • 在任何一个 Cassandra 节点上设置密码,该密码会广播到环中的所有 Cassandra 节点
  • 使用新密码更新每个节点上的管理服务器、消息处理器、路由器、Qpid 服务器和 Postgres 服务器

如需了解详情,请参阅 http://www.datastax.com/documentation/cql/3.0/cql/cql_reference/cqlCommandsTOC.html

如需重置 Cassandra 密码,请执行以下操作:

  1. 使用 cqlsh 工具和默认凭据登录任何一个 Cassandra 节点。您只需在一个 Cassandra 节点上更改密码,它将会广播到环中的所有 Cassandra 节点:
    /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    其中:

    • cassIP 是 Cassandra 节点的 IP 地址。
    • 9042 是 Cassandra 端口。
    • 默认用户为 cassandra
    • 默认密码为 cassandra。如果您之前更改了密码,请使用当前密码。
  2. cqlsh> 提示符处运行以下命令,以更新密码:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';

    如果新密码包含一个单引号字符,请在该密码前面添加一个单引号字符来对其进行转义。

  3. 退出 cqlsh 工具:
    exit
  4. 在 Management Server 节点上,运行以下命令:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u CASS_USERNAME -p CASS_PASSWORD

    (可选)您可以将包含新用户名和密码的文件传递给命令:

    apigee-service edge-management-server store_cassandra_credentials -f configFile

    其中,configFile 包含以下内容:

    CASS_USERNAME=CASS_USERNAME
    CASS_PASSWORD=CASS_PASSWROD

    此命令会自动重启管理服务器。

  5. 对以下项目重复第 4 步:
    • 所有消息处理器
    • 所有路由器
    • 所有 Qpid 服务器 (edge-qpid-server)
    • Postgres 服务器 (edge-postgres-server)

Cassandra 密码现已更改。

重置 PostgreSQL 密码

默认情况下,PostgreSQL 数据库定义了两个用户:“postgres”和“apigee”。两位用户的默认密码均为“postgres”。请按照以下步骤更改默认密码。

在所有 Postgres 主节点上更改密码。如果您在主/备用模式下配置了两台 Postgres 服务器,则只需在主节点上更改密码。如需了解详情,请参阅为 Postgres 设置主备用复制

  1. 在 Master Postgres 节点上,将目录更改为 /opt/apigee/apigee-postgresql/pgsql/bin
  2. 设置 PostgreSQL“postgres”用户密码:
    1. 使用以下命令登录 PostgreSQL 数据库:
      psql -h localhost -d apigee -U postgres
    2. 出现提示时,输入现有的“postgres”用户密码作为“postgres”。
    3. 在 PostgreSQL 命令提示符处,输入以下命令以更改默认密码:
      ALTER USER postgres WITH PASSWORD 'new_password';

      成功后,PostgreSQL 会返回以下内容:

      ALTER ROLE
    4. 使用以下命令退出 PostgreSQL 数据库:
      \q
  3. 设置 PostgreSQL“apigee”用户密码:
    1. 使用以下命令登录 PostgreSQL 数据库:
      psql -h localhost -d apigee -U apigee
    2. 出现提示时,输入“apigee”用户密码作为“postgres”。
    3. 在 PostgreSQL 命令提示符处,输入以下命令以更改默认密码:
      ALTER USER apigee WITH PASSWORD 'new_password';
    4. 使用以下命令退出 PostgreSQL 数据库:
      \q

    您可以将“postgres”和“apigee”用户的密码设置为相同的值或不同的值。

  4. 设置 APIGEE_HOME
    export APIGEE_HOME=/opt/apigee/edge-postgres-server
  5. 加密新密码:
    sh /opt/apigee/edge-postgres-server/utils/scripts/utilities/passwordgen.sh new_password

    此命令会返回加密密码。加密密码在“:”字符后面开始,并且不包含“:”;例如,“apigee1234”的加密密码为:

    Encrypted string:WheaR8U4OeMEM11erxA3Cw==
  6. 使用针对“postgres”和“apigee”用户的新加密密码更新管理服务器节点。
    1. 在管理服务器上,将目录更改为 /opt/apigee/customer/application
    2. 修改 management-server.properties 文件以设置以下属性。 如果此文件不存在,请创建一个。
    3. 确保文件归“apigee”用户所有:
      chown apigee:apigee management-server.properties
  7. 使用新的加密密码更新所有 Postgres Server 和 Qpid Server 节点。
    1. 在 Postgres Server 或 Qpid Server 节点上,切换到以下目录:
      /opt/apigee/customer/application
    2. 打开以下文件进行修改:
      • postgres-server.properties
      • qpid-server.properties

      如果这些文件不存在,请创建它们。

    3. 在文件中添加以下属性:
      • conf_pg-agent_password=newEncryptedPasswordForPostgresUser
      • conf_pg-ingest_password=newEncryptedPasswordForPostgresUser
      • conf_query-service_pgDefaultPwd=newEncryptedPasswordForPostgresUser
      • conf_query-service_dwDefaultPwd=newEncryptedPasswordForPostgresUser
      • conf_analytics_aries.pg.password=newEncryptedPasswordForPostgresUser
    4. 确保文件归“apigee”用户所有:
      chown apigee:apigee postgres-server.properties
      chown apigee:apigee qpid-server.properties
  8. 更新 SSO 组件(如果已启用 SSO):
    1. 连接到或登录运行 apigee-sso 组件的节点。这也称为 SSO 服务器

      在 AIO 或 3 节点安装中,此节点与管理服务器相同。

      如果您有多个运行 apigee-sso 组件的节点,则必须在每个节点上执行这些步骤。

    2. 打开以下文件进行修改:
      /opt/apigee/customer/application/sso.properties 

      如果该文件不存在,请创建一个。

    3. 将以下代码行添加到文件中:
      conf_uaa_database_password=new_password_in_plain_text

      例如:

      conf_uaa_database_password=apigee1234
    4. 执行以下命令,将配置更改应用于 apigee-sso 组件:
      /opt/apigee/apigee-service/bin/apigee-service apigee-sso configure
    5. 针对每台 SSO 服务器重复上述步骤。
  9. 按以下顺序重启以下组件:
    1. PostgreSQL 数据库:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
    2. Qpid 服务器:
      /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    3. Postgres 服务器:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
    4. 管理服务器:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
    5. SSO 服务器:
      /opt/apigee/apigee-service/bin/apigee-service apigee-sso restart