@microsoft/rayfin-guide 1.34.0-alpha.1225 → 1.34.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -197,24 +197,13 @@ The regeneration step updates tables, relationships, and permissions so subseque
|
|
|
197
197
|
Rayfin uses class-level role decorators to generate Data API Builder (DAB) permissions.
|
|
198
198
|
Use `@role()` directly, or the `@anonymous()` and `@authenticated()` shorthands.
|
|
199
199
|
|
|
200
|
-
> **Anonymous data access is not currently supported on Fabric.**
|
|
201
|
-
> Both `@anonymous(...)` and `@role('anonymous', …)` are accepted at compile time, but `rayfin dev` and `rayfin up`, along with any sub-command that involves creating, updating, or applying data schema, reject any DAB configuration that grants the `anonymous` role. Remove the `@anonymous(...)` decorator (or `@role('anonymous', …)`) from your entities; all access then goes through the `authenticated` role.
|
|
202
|
-
>
|
|
203
|
-
> The `@anonymous()` shorthand is published from the experimental subpath as a preview of the future supported syntax:
|
|
204
|
-
>
|
|
205
|
-
> ```typescript
|
|
206
|
-
> import { anonymous } from '@microsoft/rayfin-core/experimental';
|
|
207
|
-
> ```
|
|
208
|
-
>
|
|
209
|
-
> The `@role('anonymous', …)` form is also importable from `@microsoft/rayfin-core/experimental` and behaves identically.
|
|
210
|
-
|
|
211
200
|
### Public read, authenticated write
|
|
212
201
|
|
|
213
|
-
|
|
202
|
+
Grant unauthenticated callers read access with `@anonymous('read')` while
|
|
203
|
+
keeping writes restricted to the owning authenticated user.
|
|
214
204
|
|
|
215
205
|
```typescript
|
|
216
|
-
import { entity, authenticated, uuid, text } from '@microsoft/rayfin-core';
|
|
217
|
-
import { anonymous } from '@microsoft/rayfin-core/experimental';
|
|
206
|
+
import { entity, anonymous, authenticated, uuid, text } from '@microsoft/rayfin-core';
|
|
218
207
|
|
|
219
208
|
@entity()
|
|
220
209
|
@anonymous('read')
|
|
@@ -253,6 +242,7 @@ export class Document {
|
|
|
253
242
|
- `@role()` applies to classes.
|
|
254
243
|
Field visibility is configured through role options.
|
|
255
244
|
- Only the built-in roles are supported today: `anonymous` and `authenticated`.
|
|
245
|
+
- To use anonymous data with Microsoft Fabric, please reach out to your tenant admin to enable the tenant admin switch "Enable anonymous data access for Fabric Apps"
|
|
256
246
|
|
|
257
247
|
## Best practices
|
|
258
248
|
|
|
@@ -27,10 +27,10 @@ Visit and ensure you can view the Timestamp Tracker.
|
|
|
27
27
|
Add a `message` field to the **Timestamp** entity in `rayfin/data/Timestamp.ts`.
|
|
28
28
|
|
|
29
29
|
```typescript
|
|
30
|
-
import { entity,
|
|
30
|
+
import { entity, anonymous, uuid, text, date } from '@microsoft/rayfin-core';
|
|
31
31
|
|
|
32
32
|
@entity()
|
|
33
|
-
@
|
|
33
|
+
@anonymous()
|
|
34
34
|
export class Timestamp {
|
|
35
35
|
@uuid() id!: string;
|
|
36
36
|
@date() timestamp!: Date;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/rayfin-guide",
|
|
3
|
-
"version": "1.34.0-
|
|
3
|
+
"version": "1.34.0-beta.1",
|
|
4
4
|
"description": "Cross-cutting Builder guides for the Rayfin platform — discovered by `@microsoft/rayfin-docs` via the `rayfinDocs` package.json field convention.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|