UI はローカライズ済みです。スキルの紹介と説明文書は選択した言語へ AI が自動翻訳し、コード・コマンド・パス・専門用語は原文のままです。原作者の文書が優先されます。
スキルを探す
生産性・共同作業 · SKILL.md

shopify-enterprise-rbac

shopify-enterprise-rbac

Implement Shopify Plus access control patterns with staff permissions, multi-location management, and Shopify Organization features. Use when building apps for Shopify Plus merchants, implementing per-staff permissions, or managing multi-store organizations. Trigger with phrases like "shopify permissions", "shopify staff", "shopify Plus organization", "shop…

Independent GitHub snapshot · Automated classification · Original documentation governs

スキルの説明

GitHub

name: shopify-enterprise-rbac description: 'Implement Shopify Plus access control patterns with staff permissions,

multi-location management, and Shopify Organization features.

Use when building apps for Shopify Plus merchants, implementing per-staff permissions, or managing multi-store organizations.

Trigger with phrases like "shopify permissions", "shopify staff",

"shopify Plus organization", "shopify roles", "shopify multi-location".

' allowed-tools: Read, Write, Edit version: 2.7.0 license: MIT author: Jeremy Longshore jeremy@intentsolutions.io tags:

  • saas
  • ecommerce
  • shopify compatibility: Designed for Claude Code

Shopify Enterprise RBAC

Overview

Implement role-based access control for Shopify Plus apps using Shopify's staff member permissions, multi-location features, and Organization-level access.

Prerequisites

  • Shopify Plus store (for Organization features)
  • Understanding of Shopify's staff permission model
  • read_users scope for querying staff permissions

Instructions

Step 1: Query Staff Permissions and Map to App Roles

Query staff members via GraphQL to get their access scopes, then map those scopes to app-level roles (admin, manager, fulfillment, viewer). Staff permissions mirror app scopes like read_products, write_orders, etc.

See Staff Query and Role Mapping for the complete GraphQL query, role definitions, and matching logic.

Step 2: Permission Middleware and Multi-Location Access

In embedded apps, use online access tokens to get per-staff permissions from session.onlineAccessInfo. For Shopify Plus stores with multiple locations, restrict fulfillment and inventory operations to authorized locations per user.

See Permission Middleware and Location Access for Remix loader examples and location access control.

Step 3: Organization API and Audit Trail

Shopify Plus Organization API enables multi-store management with organization-level, store-level admin, and store-level staff roles. Log all access decisions (allowed and denied) for compliance auditing.

See Organization API and Audit Trail for the Organization query and audit implementation.

Output

  • Staff permissions queried and mapped to app roles
  • Permission middleware protecting embedded app routes
  • Multi-location access control for Shopify Plus
  • Audit trail for all access decisions

Error Handling

IssueCauseSolution
No onlineAccessInfoUsing offline tokenUse online access tokens for per-user permissions
Staff can't access featureMerchant restricted their permissionsStaff must request access from store owner
Organization API 403Not on Shopify PlusOrganization features require Plus plan
Location not foundLocation deactivatedQuery active locations before operations

Examples

Quick Permission Check in Remix

// Remix action with permission guard
export async function action({ request }: ActionFunctionArgs) {
  const { admin, session } = await authenticate.admin(request);

  const role = determineRole(
    session.onlineAccessInfo?.associated_user_scope?.split(",") || []
  );

  if (!canPerformAction(role, "manage_products")) {
    return json({ error: "Insufficient permissions" }, { status: 403 });
  }

  // ... perform the action
}

Resources

保存したスキル