Skip to content

Commit fced411

Browse files
committed
Rename OrgOwner -> OrgID
1 parent 81ca08a commit fced411

File tree

7 files changed

+22
-21
lines changed

7 files changed

+22
-21
lines changed

coderd/authz/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Package `authz` implements AuthoriZation for Coder.
44

55
## Overview
66

7-
Authorization defines what **permission** an **subject** has to perform **actions** to **objects**:
7+
Authorization defines what **permission** a **subject** has to perform **actions** to **objects**:
88
- **Permission** is binary: *yes* (allowed) or *no* (denied).
99
- **Subject** in this case is anything that implements interface `authz.Subject`.
1010
- **Action** here is an enumerated list of actions, but we stick to `Create`, `Read`, `Update`, and `Delete` here.

coderd/authz/authz.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ func Authorize(subj Subject, obj Object, action Action) error {
3333
}
3434

3535
// Grab org roles if the resource is owned by a given organization.
36-
if obj.OrgOwner != "" {
37-
orgID := obj.OrgOwner
36+
if obj.OrgID != "" {
37+
orgID := obj.OrgID
3838
if v, ok := r.Org[orgID]; ok {
3939
merged.Org[orgID] = append(merged.Org[orgID], v...)
4040
}

coderd/authz/authz_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ func TestAuthorizeDomain(t *testing.T) {
1616

1717
user := authz.SubjectTODO{
1818
UserID: "me",
19-
Roles: []authz.Role{authz.RoleSiteMember, authz.RoleOrgMember(defOrg)},
19+
Roles: []authz.Role{authz.RoleMember, authz.RoleOrgMember(defOrg)},
2020
}
2121

2222
testAuthorize(t, "Member", user, []authTestCase{
@@ -117,7 +117,7 @@ func TestAuthorizeDomain(t *testing.T) {
117117
UserID: "me",
118118
Roles: []authz.Role{
119119
authz.RoleOrgAdmin(defOrg),
120-
authz.RoleSiteMember,
120+
authz.RoleMember,
121121
},
122122
}
123123

@@ -163,8 +163,8 @@ func TestAuthorizeDomain(t *testing.T) {
163163
user = authz.SubjectTODO{
164164
UserID: "me",
165165
Roles: []authz.Role{
166-
authz.RoleSiteAdmin,
167-
authz.RoleSiteMember,
166+
authz.RoleAdmin,
167+
authz.RoleMember,
168168
},
169169
}
170170

@@ -378,7 +378,7 @@ func TestAuthorizeLevels(t *testing.T) {
378378
user := authz.SubjectTODO{
379379
UserID: "me",
380380
Roles: []authz.Role{
381-
authz.RoleSiteAdmin,
381+
authz.RoleAdmin,
382382
authz.RoleOrgDenyAll(defOrg),
383383
{
384384
Name: "user-deny-all",

coderd/authz/example_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ func TestExample(t *testing.T) {
1919
UserID: "alice",
2020
Roles: []authz.Role{
2121
authz.RoleOrgAdmin("default"),
22-
authz.RoleSiteMember,
22+
authz.RoleMember,
2323
},
2424
}
2525

coderd/authz/object.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,20 @@ package authz
1616
// that represents the set of workspaces you are trying to get access too.
1717
// Do not export this type, as it can be created from a resource type constant.
1818
type Object struct {
19-
ID string
20-
Owner string
21-
OrgOwner string
19+
ID string `json:"id"`
20+
Owner string `json:"owner"`
21+
// OrgID specifies which org the object is a part of.
22+
OrgID string `json:"org_owner"`
2223

2324
// ObjectType is "workspace", "project", "devurl", etc
24-
ObjectType ResourceType
25+
ObjectType ResourceType `json:"object_type"`
2526
// TODO: SharedUsers?
2627
}
2728

2829
// InOrg adds an org OwnerID to the resource
2930
//nolint:revive
3031
func (z Object) InOrg(orgID string) Object {
31-
z.OrgOwner = orgID
32+
z.OrgID = orgID
3233
return z
3334
}
3435

coderd/authz/resources.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ func (z ResourceType) All() Object {
1919
//nolint:revive
2020
func (r ResourceType) InOrg(orgID string) Object {
2121
return Object{
22-
OrgOwner: orgID,
22+
OrgID: orgID,
2323
ObjectType: r,
2424
}
2525
}

coderd/authz/role.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,24 +31,24 @@ type Role struct {
3131
// Roles are stored as structs, so they can be serialized and stored. Until we store them elsewhere,
3232
// const's will do just fine.
3333
var (
34-
// RoleSiteAdmin is a role that allows everything everywhere.
35-
RoleSiteAdmin = Role{
34+
// RoleAdmin is a role that allows everything everywhere.
35+
RoleAdmin = Role{
3636
Name: "admin",
3737
Site: permissions(map[ResourceType][]Action{
3838
Wildcard: {Wildcard},
3939
}),
4040
}
4141

42-
// RoleSiteMember is a role that allows access to user-level resources.
43-
RoleSiteMember = Role{
42+
// RoleMember is a role that allows access to user-level resources.
43+
RoleMember = Role{
4444
Name: "member",
4545
User: permissions(map[ResourceType][]Action{
4646
Wildcard: {Wildcard},
4747
}),
4848
}
4949

50-
// RoleSiteAuditor is an example on how to give more precise permissions
51-
RoleSiteAuditor = Role{
50+
// RoleAuditor is an example on how to give more precise permissions
51+
RoleAuditor = Role{
5252
Name: "auditor",
5353
Site: permissions(map[ResourceType][]Action{
5454
// TODO: @emyrk when audit logs are added, add back a read perm

0 commit comments

Comments
 (0)