Skip to content

Commit e2c7c78

Browse files
committed
README: document permission model and grants
Updates #18 Updates #22 Updates #86 Updates #120 Signed-off-by: Will Norris <[email protected]>
1 parent c66cbb8 commit e2c7c78

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed

README.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,50 @@ destination="/home/nonroot"
121121

122122
</details>
123123

124+
## Permissions
125+
126+
By default, users own the links they create and only they can update or delete those links.
127+
Ownership can be transferred to another user from the link edit page.
128+
Links whose owner is no longer part of the tailnet can be edited by any user,
129+
at which point that user will become the new owner.
130+
131+
Users can be granted admin access to edit all links using [ACL grants] in your tailnet policy file.
132+
For example, if you have your golink instance tagged with `tag:golink` and a user group named `group:golink-admins`,
133+
you can grant them admin access using:
134+
135+
```json
136+
{
137+
"grants": [{
138+
"src": ["group:golink-admins"],
139+
"dst": ["tag:golink"],
140+
"app": {
141+
"tailscale.com/cap/golink": [{
142+
"admin": true
143+
}]
144+
}
145+
}]
146+
}
147+
```
148+
149+
Or if you want to effectively disable the ownership model and allow everyone in your tailnet to edit all links,
150+
you could assign the grant to `autogroup:member`:
151+
152+
```json
153+
{
154+
"grants": [{
155+
"src": ["autogroup:member"],
156+
"dst": ["tag:golink"],
157+
"app": {
158+
"tailscale.com/cap/golink": [{
159+
"admin": true
160+
}]
161+
}
162+
}]
163+
}
164+
```
165+
166+
[ACL grants]: https://tailscale.com/kb/1324/acl-grants
167+
124168
## Backups
125169

126170
Once you have golink running, you can backup all of your links in [JSON lines] format from <http://go/.export>.

0 commit comments

Comments
 (0)