defineApplicationRole() markiert ist (siehe Die Standardfunktionsrolle unten).
src/roles/restricted-company-role.ts
Die Standard-Funktionsrolle
Wenn Sie eine neue App erzeugen, erstellt die CLI eine Datei für die Standardrolle, die mitdefineApplicationRole() deklariert ist:
src/roles/default-role.ts
defineApplicationRole() ist ein dünner Wrapper um defineRole(), der die Rolle kennzeichnet, die zum Installationszeitpunkt als Standardrolle Ihrer Anwendung verwendet wird. Die Validierung ist identisch zu defineRole, aber die Build-Pipeline verdrahtet deren universalIdentifier automatisch in das defaultRoleUniversalIdentifier des Anwendungsmanifests – sodass Sie es nicht selbst aus defineApplication referenzieren müssen.
Notizen:
- Genau eine
defineApplicationRole(...)ist pro App zulässig – der Manifest-Build schlägt fehl, wenn mehr als eine gefunden wird. - Verwenden Sie
defineRole()(nichtdefineApplicationRole()) für alle zusätzlichen Rollen, die Ihre App mitliefert. - Das explizite Setzen von
defaultRoleUniversalIdentifierindefineApplication()wird für die Abwärtskompatibilität weiterhin unterstützt, ist aber zugunsten vondefineApplicationRole()veraltet.
Beste Praktiken
- Beginnen Sie mit der vorgegebenen Rolle und schränken Sie sie dann schrittweise ein – standardmäßig wird umfangreicher Lesezugriff gewährt, was selten das ist, was Sie in Produktionsumgebungen möchten.
- Ersetzen Sie
objectPermissionsundfieldPermissionsdurch die genauen Objekte und Felder, die Ihre Funktionen tatsächlich benötigen. permissionFlagUniversalIdentifierssteuern den Zugriff auf Funktionen auf Plattformebene. Halten Sie sie minimal.- Ein funktionierendes Beispiel finden Sie unter:
hello-world/src/roles/function-role.ts.