Skip to content

Commit 0530fa0

Browse files
weltekialexellis
authored andcommitted
Update permissions overview
Signed-off-by: Han Verstraete (OpenFaaS Ltd) <[email protected]>
1 parent d451cae commit 0530fa0

File tree

1 file changed

+38
-26
lines changed

1 file changed

+38
-26
lines changed

docs/openfaas-pro/iam/overview.md

Lines changed: 38 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -65,48 +65,60 @@ There must be at least one registered OIDC provider for human users to authentic
6565

6666
## Permissions
6767

68-
Functions:
68+
**Functions**
6969

70-
* `Function:List` - List functions
71-
* `Function:Get` - Get the status of functions
72-
* `Function:Create` - Create functions
73-
* `Function:Update` - Update functions
74-
* `Function:Delete` - Delete functions
75-
* `Function:Logs` - Get logs for functions
76-
* `Function:Scale` - Set the replica count for functions
70+
| Action | Description | Resource scope | Access level |
71+
| ----------------- | ----------------------------------- | ---------------------------------- | ------------ |
72+
| `Function:Get` | Get the status of functions | `cluster`, `namespace` | Read |
73+
| `Function:Create` | Create functions | `cluster`, `namespace` | Write |
74+
| `Function:Update` | Update functions | `cluster`, `namespace` | Write |
75+
| `Function:Delete` | Delete functions | `cluster`, `namespace` | Write |
76+
| `Function:List` | List functions | `cluster`, `namespace` | List |
77+
| `Function:Logs` | Get logs for functions | `cluster`, `namespace` | Read |
78+
| `Function:Scale` | Set the replica count for functions | `cluster`, `namespace` | Write |
79+
| `Function:Invoke` | Invoke a function | `cluster`, `namespace`, `function` | Write |
7780

78-
Secrets:
81+
!!! note "Invoke permissions"
7982

80-
* `Secret:List` - List secrets
81-
* `Secret:Create` - Create secrets
82-
* `Secret:Update` - Update secrets
83-
* `Secret:Delete` - Delete secrets
83+
All functions can be invoked by default, however if they have [Function Authentication enabled](/openfaas-pro/iam/function-authentication/) the `Function:Invoke` action is required to invoke a function.
8484

85-
> Note: (it's not possible to unable to fetch the contents of a secret via API)
85+
**Secrets**
8686

87-
Namespaces:
87+
| Action | Description | Resource scope | Access level |
88+
| --------------- | -------------- | ---------------------- | ------------ |
89+
| `Secret:List` | List secrets | `cluster`, `namespace` | List |
90+
| `Secret:Create` | Create secrets | `cluster`, `namespace` | Write |
91+
| `Secret:Update` | Update secrets | `cluster`, `namespace` | Write |
92+
| `Secret:Delete` | Delete secrets | `cluster`, `namespace` | Writer |
8893

89-
* `Namespace:List` - List namespaces
90-
* `Namespace:Get` - Get details of namespaces
91-
* `Namespace:Create` - Create namespaces
92-
* `Namespace:Update` - Update namespaces
93-
* `Namespace:Delete` - Delete namespaces
94+
**Namespaces**
9495

95-
System:
96+
| Action | Description | Resource scope | Access level |
97+
| ------------------ | --------------------------------- | ---------------------- | ------------ |
98+
| `Namespace:List` | List function namespaces | `cluster`, `namespace` | List |
99+
| `Namespace:Get` | Get details of function namespace | `cluster`, `namespace` | Read |
100+
| `Namespace:Create` | Create function namespaces | `cluster`, `namespace` | Write |
101+
| `Namespace:Update` | Update function namespaces | `cluster`, `namespace` | Write |
102+
| `Namespace:Delete` | Delete function namespaces | `cluster`, `namespace` | Write |
96103

97-
* `System:Info` - Get system provider information
104+
**System**
105+
106+
| Action | Description | Resource scope | Access level |
107+
| ------------- | ------------------------------- | -------------- | ------------ |
108+
| `System:Info` | Get system provider information | `cluster` | Read |
98109

99110
Wildcards can be used to get multiple actions:
100111

101112
* `Function:*` - gives all function permission
102113
* `*` - gives all permissions for namespaces, functions, secrets etc
103114

104-
Scope of access:
115+
Resource scope:
105116

106-
Permissions can be scoped cluster wide, or to a specific namespace:
117+
Actions can be scoped cluster wide, or to a specific namespace or function. The supported scope depends on the action to which it is applied.
107118

108-
* `*` - cluster-wide access
109-
* `staging:*` - access to the `staging` namespace only
119+
* `*` - apply actions cluster wide
120+
* `staging:*` - apply actions to the `staging` namespace
121+
* `dev:env` - apply actions to the `env` function in the `dev` namespace
110122

111123
## OpenFaaS IAM language
112124

0 commit comments

Comments
 (0)