Skip to content

Function to check permissions for safe_* methods and guide for configuration #15

@villegar

Description

@villegar

Summary

Add a function that verifies whether a given connection object (such as an Opal server) has the necessary permissions to run the generic methods under the 5 safes principles (e.g., safe_data(), safe_people(), safe_project(), etc.).

Requirements

  • Implement a function that checks access rights for the relevant safe_* methods (at minimum: data, people, project, outputs/logs and settings/profiles).
  • If permissions are insufficient, provide clear, actionable feedback to the user.
  • Include in the feedback how to configure their server or user account to obtain the needed permissions (with links to relevant documentation or sections).
  • The function should handle connections to Opal and should be extensible for other connection types in the future.
  • Add examples and documentation for usage.

Rationale

  • Users often encounter failures due to lack of permissions but are not provided with guidance.
  • Helping users properly configure permissions will reduce confusion and improve adoption of the safe_* 5 safes principle methods.

Acceptance Criteria

  • New function exists to check permissions for connection objects before calling safe_* methods.
  • User-friendly messages and actionable guidance are returned on permission errors.
  • Documentation and usage examples provided.

References:

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions