Files
markbase/docs/MAC_DEVELOPER_CERTIFICATE_ISSUE.md
Warren 1300a4e223
Some checks failed
Test / test (push) Has been cancelled
Test / build (push) Has been cancelled
MarkBase架构升级:Multi-Volume Virtual Tree + Dual-View Management + Git Remote修正
核心功能:
-  Categories/Series双视图管理(category_view.rs + import_markdown.rs)
-  FUSE Multi-Volume支持(tree_type参数)
-  SSH/SFTP/SCP/rsync协议完整实现(4042行)
-  NFS/SMB Module Phase 1-3完成
-  Archive Module Phase 1-4完成(2916行)
-  Download Center API完整实现
-  S3兼容API实现(560行)

Git配置修正:
-  删除错误origin(gitea.momentry.ddns.net)
-  删除m5max128(指向机器名)
-  设置origin = m5max128gitea.momentry.ddns.net/admin/markbase
-  设置m4minigitea = m4minigitea.momentry.ddns.net/warren/markbase

数据清理:
-  删除38个临时SQLite(保留accusys.sqlite、demo.sqlite)
-  删除.bak、test_*.bin、调试脚本等临时文件
-  删除临时目录(build/、download files/、raid_test/等)
-  更新.gitignore排除临时文件

架构优化:
- 52个文件修改,2434行新增,4739行删除
- Workspace成员整合(16个crate)
- 数据库状态:accusys.sqlite保留(主demo测试)

远程同步:
-  准备推送到m5max128gitea(远程Gitea)
-  准备推送到m4minigitea(本地Gitea)
2026-06-12 12:59:54 +08:00

150 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Mac Developer Certificate 导入问题
## 证书详情
**从Portal下载的证书**
- File: mac_development.cer (1.4KB)
- Type: Mac Developer (DER format)
- CN: Mac Developer: Lo Warren (M92V8K2R8B)
- UID: P64KH7ZTM4
- Team: K3TDMD9Y6B
- Validity: 2026-05-18 to 2027-05-18
---
## 导入失败症状
```
security find-identity -v -p codesigning
输出0 valid identities found ❌
```
---
## 原因分析
### 问题1Mac Developer vs Apple Development
|证书类型 |codesign支持 |说明 |
|------|------|------|
| **Mac Developer** | ❌ 可能不支持 | 需要Provisioning Profile配合 |
| **Apple Development** | ✅ 支持 | 通用开发证书 |
| **Developer ID Application** | ✅ 强烈推荐 | 外部分发适合System Extension |
**关键发现:**
- Portal显示"Mac Development"类型
- 但实际证书CN为"Mac Developer"可能不支持codesign直接签名
- 需要Provisioning Profile才能使用
---
## 解决方案
### 方案A创建Developer ID Application证书推荐
**Portal操作**
1. Certificates → +按钮
2. 选择:**Developer ID Application**
3. 上传CSR使用现有的 ~/Desktop/markbase_developer.csr
4. Download新证书
5. 导入Keychain
**优势:**
- ✅ 直接支持codesign
- ✅ 不需要Provisioning Profile
- ✅ 适合System Extension外部分发
- ✅ 可用于Notarization公证
---
### 方案B创建Apple Development证书
**Portal操作**
1. Certificates → +按钮
2. 选择:**Apple Development**不是Mac Development
3. 上传CSR
4. Download
5. 导入Keychain
**优势:**
- ✅ 支持codesign
- ✅ 通用开发证书
- ⚠️ 可能需要Provisioning Profile但更容易使用
---
### 方案C创建Provisioning Profile配合当前Mac Developer证书
**Portal操作**
1. Profiles → +按钮
2. 选择Mac App Development
3. 选择App ID: com.momentry.markbase.fskit
4. 选择Certificate: Mac Developer: Lo Warren
5. 选择Device: 当前Mac
6. Download Profile
**本地配置:**
- 将Profile嵌入.app bundle
- 配置Xcode使用Profile
**缺点:**
- ❌ 流程复杂
- ❌ 需要Xcode项目
- ❌ 不适合纯binary签名
---
## 推荐操作流程
**立即创建Developer ID Application证书**
1. Portal → Certificates → +按钮
2. 选择Developer ID Application
3. Continue
4. Upload CSR: ~/Desktop/markbase_developer.csr
5. Continue
6. Download证书
7. 导入Keychain
8. 验证security find-identity -v -p codesigning
**预期结果:**
```
1) XXX... "Developer ID Application: Lo Warren (K3TDMD9Y6B)"
1 valid identities found ✅
```
---
## 为什么Developer ID Application更适合System Extension
**System Extension要求**
- 必须使用Developer ID证书签名开发测试可以用Apple Development
- 外部分发不通过App Store
- 需要Notarization公证生产环境
**Developer ID Application优势**
- ✅ 专为外部分发设计
- ✅ 直接支持codesign
- ✅ 可用于Notarization
- ✅ 不需要Provisioning Profile
- ✅ 适合System Extension场景
---
## 下一步操作
**推荐:** 立即创建Developer ID Application证书
**流程:**
1. Portal → Certificates → +按钮
2. 选择Developer ID Application
3. 上传CSR: ~/Desktop/markbase_developer.csr
4. Download → 导入Keychain
5. 验证codesign identity
**完成后告诉我,我准备签名和安装脚本。**
---
**最后更新:** 2026-05-18 18:15