Redirecting...

This page has moved to https://docs.nats.io.

Click here if you are not redirected.

Authenticating with a Token

Tokens are basically random strings, much like a password, and can provide a simple authentication mechanism in some situations. However, tokens are only as safe as they are secret so other authentication schemes can provide more security in large installations.

For this example, start the server using:

> nats-server --auth mytoken

The code uses localhost:4222 so that you can start the server on your machine to try them out.

Connecting with a Token

// Set a token
nc, err := nats.Connect("127.0.0.1", nats.Name("API Token Example"), nats.Token("mytoken"))
if err != nil {
	log.Fatal(err)
}
defer nc.Close()

// Do something with the connection

Options options = new Options.Builder().
                            server("nats://localhost:4222").
                            token("mytoken"). // Set a token
                            build();
Connection nc = Nats.connect(options);

// Do something with the connection

nc.close();
let nc = NATS.connect({url: `nats://127.0.0.1:${port}`, token: "mytoken!"});
nc = NATS()

await nc.connect(servers=["nats://mytoken@demo.nats.io:4222"])

# Do something with the connection.

NATS.start(token: "deadbeef") do |nc|
  puts "Connected using token"
end
let nc = await connect({url: server.nats, token: "mytoken"});

Connecting with a Token in the URL

Some client libraries will allow you to pass the token as part of the server URL using the form:

nats://token@server:port

Again, once you construct this URL you can connect as if this was a normal URL.

// Token in URL
nc, err := nats.Connect("mytoken@localhost")
if err != nil {
	log.Fatal(err)
}
defer nc.Close()

// Do something with the connection

Connection nc = Nats.connect("nats://mytoken@localhost:4222");//Token in URL

// Do something with the connection

nc.close();
let url = `nats://mytoken!@127.0.0.1:${port}`;
let nc = NATS.connect({url: url});
nc = NATS()

await nc.connect(servers=["nats://mytoken@demo.nats.io:4222"])

# Do something with the connection.

NATS.start("deadbeef@127.0.0.1:4222") do |nc|
  puts "Connected using token!"
end
let url = `nats://:mytoken!@127.0.0.1:${port}`;
let nc = await connect({url: url});

results matching ""

    No results matching ""