Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

fix(macos): Keychain secrets fail without keychain-access-groups; use the login keychain

Đang mở
#1,586 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
43/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
dart, flutter
Lĩnh vực
databases, desktop, security

Hướng nghiên cứu

Start with lib/core/storage/connection_secrets_store.dart and the flutter_secure_storage_darwin default at FlutterSecureStorageDarwinPlugin.swift:180; reproduce the reported read and write failure on macOS. Check the entitlements files named in the issue and test debug, unsigned release, signed and notarized, and ad-hoc builds. Done means credentials can be read and written using the login keychain, with existing data protection keychain items still readable or migrated.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

bug connections P1 stability

Problem

flutter_secure_storage_darwin defaults to usesDataProtectionKeychain: true (FlutterSecureStorageDarwinPlugin.swift:180), which needs the keychain-access-groups entitlement. None of DebugProfile.entitlements, Release.entitlements, ReleaseSigned.entitlements declare it, and lib/core/storage/connection_secrets_store.dart uses const FlutterSecureStorage() with no macOS options.

Expected on macOS: errSecMissingEntitlement (-34018) on write/read, surfaced as SecretsStoreUnavailableException ("Could not read the saved credentials from the system keyring").

Fix

Do not add keychain-access-groups to ReleaseSigned.entitlements: it is a restricted entitlement that needs a provisioning profile for Developer ID, and the app would fail to launch. Instead pass MacOsOptions(usesDataProtectionKeychain: false) (mOptions) so the file-based login keychain is used.

Tasks

  • Reproduce on a real Mac (debug, unsigned release, signed release).
  • Set mOptions: MacOsOptions(usesDataProtectionKeychain: false).
  • Check existing installs: items written with the data protection keychain (if any) must still be readable, or migrated.
  • Test on signed + notarized and on ad-hoc builds.

Found in the macOS review; confirm on device first.

Ngôn ngữ chính
Dart
Star
23
Fork
1
Merge trung bình
31 phút
Pull request đã merge (30 ngày)
570

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của QueryaHub/Querya-Desktop

Tất cả issue của QueryaHub/Querya-Desktop

Issue tương tự

Thêm issue về Dart

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.