Cisco Expressway · Arazzo Workflow

Cisco Expressway Rotate Admin Password

Version 1.0.0

Identify the node, then change an administrator account password.

1 workflow 1 source API 1 provider
View Spec View on GitHub CollaborationFirewall TraversalH.323Session Border ControllerSIPUnified CommunicationsVideo ConferencingArazzoWorkflows

Provider

cisco-expressway

Workflows

rotate-admin-password
Read system info for node identity, then change the admin password.
Reads system information to capture the target node, then changes the administrator account password using the supplied current and new passwords.
2 steps inputs: adminUsername, currentPassword, host, newPassword, password, username outputs: changeStatusCode, serialNumber, systemName
1
readSystemInfo
getSystemInfo
Read basic system information to record which Expressway node the password change will be applied to.
2
changePassword
changeAdminPassword
Change the administrator account password using the supplied current and new passwords.

Source API Descriptions

Arazzo Workflow Specification

cisco-expressway-rotate-admin-password-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Cisco Expressway Rotate Admin Password
  summary: Identify the node, then change an administrator account password.
  description: >-
    Rotates an administrator password by first reading system information to
    record exactly which Expressway node the credential change will land on, then
    changing the administrator password using the current and new passwords. Every
    step spells out its request inline so the flow can be read and executed
    without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: configurationApi
  url: ../openapi/cisco-expressway-configuration-api-openapi.yml
  type: openapi
workflows:
- workflowId: rotate-admin-password
  summary: Read system info for node identity, then change the admin password.
  description: >-
    Reads system information to capture the target node, then changes the
    administrator account password using the supplied current and new passwords.
  inputs:
    type: object
    required:
    - host
    - username
    - password
    - adminUsername
    - currentPassword
    - newPassword
    properties:
      host:
        type: string
        description: FQDN or IP address of the Expressway node (server variable host).
      username:
        type: string
        description: Administrator username for HTTP Basic auth on the API.
      password:
        type: string
        description: Administrator password for HTTP Basic auth on the API.
      adminUsername:
        type: string
        description: Administrator account whose password is being changed.
      currentPassword:
        type: string
        description: Current password for the administrator account.
      newPassword:
        type: string
        description: New password to set for the administrator account.
  steps:
  - stepId: readSystemInfo
    description: >-
      Read basic system information to record which Expressway node the password
      change will be applied to.
    operationId: getSystemInfo
    parameters:
    - name: Authorization
      in: header
      value: Basic $inputs.username:$inputs.password
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      systemName: $response.body#/SystemName
      serialNumber: $response.body#/SerialNumber
  - stepId: changePassword
    description: >-
      Change the administrator account password using the supplied current and
      new passwords.
    operationId: changeAdminPassword
    parameters:
    - name: Authorization
      in: header
      value: Basic $inputs.username:$inputs.password
    requestBody:
      contentType: application/json
      payload:
        Username: $inputs.adminUsername
        CurrentPassword: $inputs.currentPassword
        NewPassword: $inputs.newPassword
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      changeStatusCode: $statusCode
  outputs:
    systemName: $steps.readSystemInfo.outputs.systemName
    serialNumber: $steps.readSystemInfo.outputs.serialNumber
    changeStatusCode: $steps.changePassword.outputs.changeStatusCode