问题标签 [code-signing-entitlements]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
457 浏览

ios - xcode 5.0.2 代码签名权利问题

我正在尝试发布我的应用程序的第二个版本。在发布应用程序的第一个版本后,我升级到 Maverick OS 和 Xcode 5.0.2。归档应用程序的新版本后,我尝试在 Xcode 中对其进行验证。我收到以下错误:

无效的代码签名权利。您的应用程序包签名中的权利与配置文件中包含的权利不匹配。根据配置文件,该包包含一个不允许的键值“[“45GU53BL5Zcom.myCompany.myApp”]' 用于“Payload/myApp.app/myApp”中的键“keychain-access-groups”</ p>

我不知道如何解决这个问题。也许它与 com.myCompany.myApp 上的前缀有关,但我没有更改任何内容(即我在第一个版本中提交了这个没有错误)。我的意思是,这只是苹果分配的应用程序标识符的一部分。此外,我还有另一个使用类似应用程序标识符的应用程序,它使用 Xcode 5.0.2 验证没有错误。

我什至不知道这个应用程序标识符在包中的什么位置。我应该编辑它吗?

有人可以指出我正确的方向来解决这个错误吗?

0 投票
1 回答
501 浏览

ios - 签署 PhoneGap IPA 以进行分发的问题

我在我的 PhoneGap 生成的 IPA 上签署更新以进行分发时遇到了问题。

我一直按照我通常使用的相同步骤清除PhoneGap签名,使用分发配置文件辞职,附加Entitlements.plist,然后使用我的企业证书进行签名,但是当我使用Application Uploader时,我收到以下错误。

现在,Bundle ID 与应用程序的分发配置文件和 iTunes Connect 上的相同。我的 TEAMID 与配置文件中提供的完全匹配。

此应用程序已在商店中,我正在尝试发布更新。

我已将新配置文件安装到 Xcode 4.6.3,并且我的证书也安装在那里。

我在 Mavericks 上使用终端来取消签名->重新签名->压缩 IPA 以进行分发。

我环顾四周,发现了一些其他问题,在遵循他们的解决方案后,我仍然卡在这个错误上,这反过来又会产生一些其他的一般错误。

提前感谢任何指针/参考!

我整天都在为这个问题大惊小怪:(

0 投票
1 回答
612 浏览

macos - 使用自签名证书对 OS X 应用程序进行代码签名有何影响?

Apple 似乎将某些 OS X API(例如沙盒)限制在由受信任证书代码签名的应用程序中,例如向付费 Mac 开发人员计划的成员颁发的应用程序。

OS X 如何处理使用自签名(或开发)证书进行代码签名的应用程序?

  • 这些功能/API 是否可用,唯一的区别是具有默认 Gatekeeper 设置的用户不能(轻松)启动这样的应用程序?
  • 他们是否会在各个方面都像未签名的应用程序一样被对待(禁用权利和沙盒,对 Gatekeeper 用户发出警告)?
  • 或者自签名证书是否会被视为错误,无论用户的 Gatekeeper 设置如何,应用程序都不会启动?
0 投票
1 回答
905 浏览

cocoa - 可可沙箱嵌入式命令行不起作用

我有一个第三方命令行工具,它从一个主要的可可应用程序启动,该应用程序将在 Mac App Store 中分发。

我需要对第三方命令行工具进行沙箱处理,但是当我运行它(使用 NSTask)时,它会因错误而崩溃

“应用程序特定签名:容器对象初始化失败:无法获取应用程序 XXX 的 bundleid”

(在控制台中,我可以看到以下错误消息)。这是我在主可可应用程序中所做的:

每次我运行它时,都会出现一个弹出窗口,其中包含“OS X 需要修复您的库以运行应用程序”的信息。输入您的密码以允许此操作。” 我已经使用以下命令签署了这个命令行工具: 

为了确保,我使用以下命令仔细检查了它:

这是信息:

我还检查了这个命令:

并得到了这个信息:

我也尝试在命令行工具中添加一个 info.plist 文件,按本章步骤在此处输入链接描述但没有任何反应,Info.plist 的结果仍然是“没有绑定”。

如何沙箱第三方命令行工具以及如何将 info.plist 文件添加到命令行工具?我错过了什么?有人可以帮助我吗?任何帮助或指针将不胜感激。

0 投票
0 回答
720 浏览

ios - containerURLForSecurityApplicationGroupIdentifier for iPhone/iPad

As suggested in link : How containerURLForSecurityApplicationGroupIdentifier in NSFileManager works on iOS 7 I was able to get two application access common location /Library/Application%20Support/iPhone%20Simulator/7.0.3/Containers/somegroupIDhere/ on simulator.

However when I try to run the application on device(iPhone/iPad) Im getting following error enter image description here

Following is my entitlement file

0 投票
1 回答
321 浏览

xcode - 从 Xcode 功能中提取权利

在构建项目时,我需要获取 Xcode 自动生成的授权文件。

通常(即使您没有选择任何明确的功能),您可以在 找到一个$DERIVED_FILES_DIR/$PRODUCT_NAME.xcent,它包含有关您的团队和钥匙串访问的一般信息。

有谁知道绕过构建阶段生成它的方法。我想弄清楚一个与是否指定了显式授权文件或何时使用“功能”窗格来指定它们的事实无关的流程。

也许我遗漏了一些明显的东西,任何信息将不胜感激。

0 投票
0 回答
1354 浏览

ios - 向内部应用程序添加自定义权利

我正在尝试将自定义权利 (com.apple.private.bmk.allow) 添加到企业应用程序。

我首先使用 XCode 构建了应用程序,然后提取了现有的权利 plist 文件,并添加了自定义权利条目。接下来,我使用 codesign 为应用程序签名,并在我所做的添加中包含权利 plist。

但是,当我尝试通过企业链接安装应用程序时,应用程序开始安装,然后失败并出现错误:

verify_signer_identity:/var/tmp/install_staging.sveECd/foo_extracted/Payload/test.app/test 的 MISValidateSignatureAndCopyInfo 失败:0xe8008016

installd [45]:0x295000 do_preflight_verification:无法验证 /var/tmp/install_staging.sveECd/foo_extracted/Payload/test.app 的可执行文件

如果我删除了我添加的自定义权利条目,那么应用程序安装得很好。似乎将 ANYTHING 添加到现有权利文件会阻止其安装。有没有办法添加将安装在设备上的自定义权利?

0 投票
0 回答
1016 浏览

ios - 在 XCode 6 中的 Entitlement.plist 中添加标志

是否可以将 beta-reports-active 标志添加到 Entitlement.plist?我需要这个标志进行 beta 测试。我尝试重新生成我的配置文件,但这不起作用,权利中没有这样的标志(尝试了 10 次):

权利

0 投票
2 回答
1179 浏览

ios - Xcode 6 无法构建 iCloud 项目

目前我什至无法构建我的项目,因为权利显然是错误的

“没有一个有效的配置文件允许指定的功能:功能:iCloud。iCloud 容器:”

我已更改 App ID iCloud 功能以使用兼容 Xcode 5,但它会自行恢复为 CloudKit。

有谁碰巧已经经历并解决了这个有趣的小陷阱?

0 投票
1 回答
806 浏览

ios - iOS 越狱控制台应用程序、权利

我在越狱的 iPhone 上运行 iOS 7,我正在尝试创建一个可以录制音频的基于控制台的应用程序。麻烦的是麦克风似乎没有被授权(大概是因为用户不能允许访问)。

根据研究,我可以通过在权利文件中设置以下内容来覆盖它:

有没有人有一个完全填充的权利文件的例子?我一直在尝试这样做,然后使用 ldid 将它们“分配”给控制台应用程序。

目前我很茫然,应用程序只是创建了一个没有内容的音频文件。