fix(macos): Keychain secrets fail without keychain-access-groups; use the login keychain
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
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ả
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
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.
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của QueryaHub/Querya-Desktop
-
enhancement ui
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
QueryaHub/Querya-Desktop#1689 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
ui(dialogs): make destructive query and DML preview dialogs adaptive and prevent table name overflowĐang mởbug frontend
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
QueryaHub/Querya-Desktop#1642 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug error-handling settings
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 78/100
QueryaHub/Querya-Desktop#1637 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
QueryaHub/Querya-Desktop#1636 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement marketplace
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
QueryaHub/Querya-Desktop#1635 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của QueryaHub/Querya-Desktop
Issue tương tự
-
good-first-issue P3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
flutter/dart-intellij-third-party#758 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Bug: Incorrect location coordinates on logged Sound Meter dataCó thể đã có người làm @Jashan32 đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
area/archive bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
DarkFlippers/qUnleashed#374 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
agent:in-progress agent:ready feature P2 · 中 区域: 悬浮窗
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
ASDW51/DanmuFloat#178 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Missing workoutsĐang mởenhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100
InlitX/GymMane#237 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 5 ngày