vapi metadata privilege: component data

The component_data structure contains the privilege information of the component along with its fingerprint.

Representations:

{
    "fingerprint""string",
    "info"{
        "packages"[
            {
                "key""obj-103",
                "value"{
                    "privileges"[
                        "string",
                        "string"
                    ],
                    "services"[
                        {
                            "key""obj-103",
                            "value"{
                                "operations"[
                                    {
                                        "key""obj-103",
                                        "value"{
                                            "privilege_info"[
                                                {
                                                    "privileges"[
                                                        "string",
                                                        "string"
                                                    ],
                                                    "property_path""string"
                                                },
                                                {
                                                    "privileges"[
                                                        "string",
                                                        "string"
                                                    ],
                                                    "property_path""string"
                                                }
                                            ],
                                            "privileges"[
                                                "string",
                                                "string"
                                            ]
                                        }
                                    }
                                ]
                            }
                        }
                    ]
                }
            }
        ]
    }
}
<?xml version="1.0" ?>
<ns0:ComponentData xmlns:ns0="http://vmware.com/vapi/metadata/privilege" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <fingerprint>string</fingerprint>
  <info>
    <packages-array>
      <array-item>
        <value>
          <services-array>
            <array-item>
              <value>
                <operations-array>
                  <array-item>
                    <value>
                      <privilege_info-array>
                        <array-item>
                          <privileges-array>
                            <array-item>string</array-item>
                            <array-item>string</array-item>
                          </privileges-array>
                          <property_path>string</property_path>
                        </array-item>
                        <array-item>
                          <privileges-array>
                            <array-item>string</array-item>
                            <array-item>string</array-item>
                          </privileges-array>
                          <property_path>string</property_path>
                        </array-item>
                      </privilege_info-array>
                      <privileges-array>
                        <array-item>string</array-item>
                        <array-item>string</array-item>
                      </privileges-array>
                    </value>
                    <key>obj-103</key>
                  </array-item>
                </operations-array>
              </value>
              <key>obj-103</key>
            </array-item>
          </services-array>
          <privileges-array>
            <array-item>string</array-item>
            <array-item>string</array-item>
          </privileges-array>
        </value>
        <key>obj-103</key>
      </array-item>
    </packages-array>
  </info>
</ns0:ComponentData>

Attributes:

Name Type Description
Required
info component_info Privilege information of the component. This includes information about all the API in the component.

fingerprint string Fingerprint of the metadata of the component.

Privilege information could change when there is an infrastructure update. Since the data present in vapi.metadata.privilege.component_data.info could be quite large, fingerprint provides a convenient way to check if the data for a particular component is updated.

You should store the fingerprint associated with a component. After an update, by invoking the fingerprint operation, you can retrieve the new fingerprint for the component. If the new fingerprint and the previously stored fingerprint do not match, clients can then use the get to retrieve the new privilege information for the component.