defineApplicationRole()로 표시된 역할의 권한을 상속받습니다(아래 기본 함수 역할을 참조하세요).
src/roles/restricted-company-role.ts
기본 함수 역할
새 앱을 스캐폴딩하면, CLI가defineApplicationRole()로 선언된 기본 역할 파일을 생성합니다:
src/roles/default-role.ts
defineApplicationRole()는 설치 시 애플리케이션의 기본 역할로 사용할 역할을 표시하는, defineRole()에 대한 간단한 래퍼입니다. 검증 방식은 defineRole과 동일하지만, 빌드 파이프라인이 애플리케이션 매니페스트의 defaultRoleUniversalIdentifier에 해당 역할의 universalIdentifier를 자동으로 연결하므로, defineApplication에서 직접 참조할 필요가 없습니다.
노트:
- 앱당 정확히 하나의
defineApplicationRole(...)만 허용되며, 둘 이상 발견되면 매니페스트 빌드가 실패합니다. - 앱에서 제공하는 추가 역할에는
defineApplicationRole()가 아니라defineRole()을 사용하세요. - 호환성을 위해
defineApplication()에서defaultRoleUniversalIdentifier를 명시적으로 설정하는 방식도 여전히 지원되지만, 이제는defineApplicationRole()방식이 권장되며 이전 방식은 더 이상 권장되지 않습니다.
모범 사례
- 스캐폴딩된 역할에서 시작한 다음 점진적으로 권한을 제한하세요. 기본 설정은 광범위한 읽기 액세스를 부여하는데, 이는 프로덕션 환경에서 원하는 경우가 거의 없습니다.
objectPermissions와fieldPermissions를 함수에 실제로 필요한 정확한 객체와 필드로 교체하세요.permissionFlagUniversalIdentifiers는 플랫폼 수준 기능에 대한 액세스를 제어합니다. 최소한으로 유지하세요.- 동작 예제를 참조하세요:
hello-world/src/roles/function-role.ts.