Get Secret YAML Using Service Account Configured in AppViewX
This API is used to generate a Kubernetes Secret YAML file using the service account configured in AppViewX.
Request Structure
| Endpoint: | /kube-service-auth-secret |
| Type: | POST |
| Sample URL: | https://<IP/HostName/TenantName>:<GWPORT>/avxapi/kube-service-auth-secret?gwsource=externalTo understand the elements of the sample URL, click here. |
| Headers: | |
| Content-Type: | application/json |
| Name | Description |
|---|---|
| sessionId
|
(Mandatory) A unique identifier assigned to a
user's session upon successful authentication. The session ID
remains valid until it expires, and it can contain alphanumeric
characters. Type: String Constraints: The session ID is used when username and password are not provided. Example:
|
| gwsource
|
(Mandatory) Source from which the request is
triggered. Type: String Example:
|
| payload
|
(Mandatory) Input data for request body in application/json format. For payload details, see Payload section. |
Payload
| Name | Description |
|---|---|
| authenticationURL
|
(Mandatory) This URL is referenced in the secret YAML content, and the orchestrator uses this URL to communicate with AppViewX. |
| serviceAccountName
|
(Mandatory) Name of the service account. |
Response Structure
- Status Code: 200 OK
- Message: Successful
- Headers:
- Content-Type: application/json
| Name | Description |
|---|---|
| response
|
Generate Secret YAML. |
| message
|
Success message or failure description in case of error. |
| appStatusCode
|
Application specific status code for the response. Will be non-null for failure response. |
| tags | More info in case of failure response. |
Sample Request/Response
https://<IP/HostName/TenantName>:<GWPORT>/avxapi/kube-service-auth-secret?gwsource=external
POST Content type: application/json Username: <> Password: <>
{
"payload": {
"authenticationURL": "https://pe-kube-apvx-n2.lab.appviewx.net:31443/",
"serviceAccountName": "test"
}
}---
apiVersion: "v1"
kind: "Secret"
metadata:
name: "appviewx-auth"
namespace: "crypto-mesh"
type: "Opaque"
data:
CLIENT_ID: "NGVjOWI4MjgtYWM4YS00OGE3LWJkNjgtMjViYTM0ZGQwOGJh"
CLIENT_SECRET: "ZXNNUDJTIUdvZm4yd2czazM5ekBKT1B0NlJOaWpmMEQ="
APPVIEWX_ENV_URL: "aHR0cHM6Ly9wZS1rdWJlLWFwdngtbjIubGFiLmFwcHZpZXd4Lm5ldDozMTQ0My8="Reference
- IP/HostName/TenantName: Replace with the actual IP address, hostname,
or tenant name based on the specific configuration in AppViewX.
- IP: A unique identifier assigned to each device connected to
a computer network that uses the Internet Protocol for communication
The IP address will be included in the endpoint URL for an on-prem deployment.
- HostName: A human-readable label assigned to a device (host)
on a network
The hostname will be included in the endpoint URL for an on-prem deployment.
- TenantName: An identifier label for a tenant given to
indicate which tenant's data the API request will
access/modify
The tenant name will be included in the endpoint URL for a SaaS deployment.
- IP: A unique identifier assigned to each device connected to
a computer network that uses the Internet Protocol for communication
- GWPORT: AppViewX gateway port
A gateway port refers to a network port through which data is sent and received to communicate with a gateway in an on-prem deployment.
Example: 31443
- avxapi: Path parameter value (static) that is part of the endpoint's URL
- Endpoint: Endpoint of the API, for example: execute-hook
- gwsource: Source or origin of a gateway, for example: external.