The Non-Human IAM to replace manual and insecure access to service accounts, API keys, tokens and other NHIs across Cloud, On-Prem and SaaS environments.
Non-Human Identities Challenge
With the adoption of AI, automation, and interconnected integration, the growing presence of non-human identities brings more security risks. The engineering teams' burden of adopting and managing these operations is also increasing.
Over the past 20 years, people have transformed their identity and access control into modern approaches based on policies, MFA, SSO, and Zero Trust. It's time to do the same for your non-human.
xID is committed to building a first-class security ecosystem, compatible with a range of heterogeneous environments, and seamlessly integrated with major IaaS, PaaS and SaaS, Trust and Credential Provider, IdP, EDR, SIEM, etc. We will continuously expand according to your use case needs.
AxisNow Edge can be deployed flexibly in single cloud, multi-cloud, on-premises DC, or IaC environments. It runs in a variety of heterogeneous environments, providing you with complete control over your data, gateway visibility, and on-demand network coverage.
AgentSDK and AgentClient support a range of operating systems and runtime environments, deploying alongside your apps(workloads). They enforce device restrictions and posture checks through integration with EDR.
xID allows you to configure fully customized HTTP and TCP applications.
Continuously integrate with modern APIs and services such as third-party SaaS APIs, API gateways, databases, and data warehouses, making it easy for you to connect.
Based on plugin-based allows you to control all access traffic on a single platform.
Flexible combinations easily handle various use cases.
Based on the DSL rules engine. Like Lego, flexible custom matching conditions and actions. Agility supports your business foreseeable or unforeseeable needs in development.
Routing
SSL & TLS
AuthN/Z
AI / LLMs
Logs
More...
Trust Providers allow xID to verify identities without the need for provisioning credentials or secrets.
Application (workload) identity verification is a core function. Only your own workloads — running in safe environments and communicating over secured connections — can use your APIs and backend resources.
xID integrate with AWS metadata, GCP Workload Identity Federation, iOS App Attest / DeviceCheck and Google Play Integrity etc to provide the most comprehensive attestation
Credential providers (CPs) are systems that provide various types of access credentials, like OAuth tokens, API keys, or username and password pairs.
The credential providers delivers secrets “just-in-time” to the app only at the moment they are required to make an API call, and only when the app and its runtime environment has passed attestation. This ensures that sensitive secrets cannot be extracted from the app package or via MitM attacks. Developers also do not need to hardcode secrets. They can never be leaked.
xID's API-first design easily integrates with your stack, no changes to infrastructure needed. Just choose your IaC, choose your VPC, and deploy.
1provider "http" {}
2resource "http_request" "post_request" {
3 url = "https://api.xid.dev/client/v1/edges/deployment_configurations"
4 request {
5 method = "POST"
6 headers = {
7 "Content-Type" = "application/json"
8 "Accept" = "application/json"
9 "Authorization" = "Bearer 123"
10 }
11 body = jsonencode({
12 uuid = "d7b0d7a9-0e91-428f-a33d-1cf74218b341"
13 mode = "single"
14 type = "shell"
15 })
16 }
17 response {
18 body = true
19 }
20}
21output "response_status" {
22 value = http_request.post_request.response_status
23}
24output "response_body" {
25 value = http_request.post_request.response_body
26}
1package main
2import (
3 "fmt"
4 "strings"
5 "net/http"
6 "io"
7)
8func main() {
9 url := "https://api.xid.dev/client/v1/edges/deployment_configurations"
10 payload := strings.NewReader("{\n \"uuid\": \"d7b0d7a9-0e91-428f-a33d-1cf74218b341\",\n \"mode\": \"single\",\n \"type\": \"shell\"\n}")
11 req, _ := http.NewRequest("POST", url, payload)
12 req.Header.Add("Content-Type", "application/json")
13 req.Header.Add("Accept", "application/json")
14 req.Header.Add("Authorization", "Bearer 123")
15 res, _ := http.DefaultClient.Do(req)
16 defer res.Body.Close()
17 body, _ := io.ReadAll(res.Body)
18 fmt.Println(res)
19 fmt.Println(string(body))
20}