Skip to content

Commit a784ebf

Browse files
Update content.md
1 parent 13fe3d1 commit a784ebf

File tree

1 file changed

+115
-1
lines changed

1 file changed

+115
-1
lines changed

docsource/content.md

Lines changed: 115 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,121 @@ TODO Overview is a required section
44

55
## Requirements
66

7-
TODO Requirements is an optional section. If this section doesn't seem necessary on initial glance, please delete it. Refer to the docs on [Confluence](https://keyfactor.atlassian.net/wiki/x/SAAyHg) for more info
7+
### 🔐 Setting Up API User and Access on A10 Thunder
8+
9+
This section explains how to configure an API user and enable API (AXAPI) access on an A10 Thunder device using the CLI.
10+
11+
#### ✅ Prerequisites
12+
13+
- Admin credentials for the A10 Thunder device
14+
- SSH access to the device
15+
- Familiarity with A10 CLI commands
16+
17+
---
18+
19+
#### 🧑‍💻 Step 1: Create an API User
20+
21+
1. SSH into the A10 Thunder device:
22+
23+
```bash
24+
ssh admin@<DEVICE_IP>
25+
```
26+
27+
2. Enter configuration mode:
28+
29+
```bash
30+
configure terminal
31+
```
32+
33+
3. Create a user account for API access:
34+
35+
```bash
36+
username <api_user> password <secure_password>
37+
```
38+
39+
4. Assign admin privileges:
40+
41+
```bash
42+
username <api_user> privilege 15
43+
```
44+
45+
5. (Optional) Assign a role if using Role-Based Access Control (RBAC):
46+
47+
```bash
48+
username <api_user> role <role_name>
49+
```
50+
51+
6. Save the configuration:
52+
53+
```bash
54+
write memory
55+
```
56+
57+
---
58+
59+
#### 🌐 Step 2: Enable and Verify API Access
60+
61+
A10 Thunder supports AXAPI, a REST-based API. Follow these steps to confirm access:
62+
63+
1. Ensure the management interface allows API traffic (if access-lists are used):
64+
65+
```bash
66+
ip access-list standard mgmt
67+
permit <MGMT_SUBNET> <SUBNET_MASK>
68+
exit
69+
70+
interface management
71+
access-list mgmt
72+
```
73+
74+
2. (Optional) Bind SSL cert for secure access:
75+
76+
```bash
77+
slb ssl-cert <CERT_NAME>
78+
key <KEY_FILE>
79+
certificate <CERT_FILE>
80+
```
81+
82+
3. Authenticate using AXAPI v3 (example using `curl`):
83+
84+
```bash
85+
curl -k -X POST https://<DEVICE_IP>/axapi/v3/auth \
86+
-H "Content-Type: application/json" \
87+
-d '{"credentials": {"username": "<api_user>", "password": "<password>"}}'
88+
```
89+
90+
A successful response will include an `authresponse` with an authorization token.
91+
92+
---
93+
94+
#### 🔁 Step 3: Use the API Token
95+
96+
Use the returned token for authorized API calls:
97+
98+
```bash
99+
curl -k -X GET https://<DEVICE_IP>/axapi/v3/system/resource-usage \
100+
-H "Authorization: A10 <AUTH_TOKEN>"
101+
```
102+
103+
---
104+
105+
#### 📌 Notes
106+
107+
- You can also create users via the GUI:
108+
**System → Admin → Users**
109+
110+
- Roles (for RBAC) can be managed under:
111+
**System → Admin → Role**
112+
113+
- Always use HTTPS and avoid hardcoding credentials in scripts
114+
115+
---
116+
117+
#### 📚 Resources
118+
119+
- [AXAPI Documentation](https://support.a10networks.com/)
120+
- [A10 Thunder CLI Reference Guide](https://docs.a10networks.com/)
121+
8122

9123
## Post Installation
10124

0 commit comments

Comments
 (0)