内部テスト中のITSAppUsesNonExemptEncryptionエクスポートのコンプライアンス?


215

内部テスト用のビルドを選択しているときにこのメッセージが表示されました。info.plistでのITSAppUsesNonExemptEncryptionの設定について説明しています。どういう意味ですか?必要ですか?

ここに画像の説明を入力してください


3
文字通り、暗号化を使用しているか、アプリが安全な情報を暗号化して保存するように設計されているかどうかを尋ねています。
Andriko13 2016年

1
2016年9月20日以降、これは不要になりました。ここで私の答えを参照してください:stackoverflow.com/a/40391664/776167-あなたは免除されていると言うことができます。
hisnameisjimmy

回答:


217

基本的に<key>ITSAppUsesNonExemptEncryption</key><false/>は、NOに等しいブール値を表します。

info.plistの値

@JosepHによる更新:この値は、アプリが暗号化を使用しないか、免除暗号化のみを使用することを意味します。アプリが暗号化を使用しており、免除されていない場合は、この値をYES / trueに設定する必要があります。

アプリが暗号化を使用していると考えられる場合は、議論の余地があるようです。


1
ありがとう-これはまさに私が探していたもの(このキーをグラフィカルplistファイルに追加する方法)
Natalia

2
「ITSAppUsesNonExemptEncryption」をfalse / NOに設定しても、アプリの暗号化が変更されていないわけではありません。これは、アプリが暗号化を使用しないか、免除暗号化のみを使用することを意味します。アプリが暗号化を使用しており、免除されていない場合は、この値をYES / trueに設定する必要があります。これをNOに設定できるアプリはほとんどありません。たとえば、アプリのいずれかの部分がhttpsを使用している場合、ほぼ確実にYESと言う必要があります。stackoverflow.com/questions/2135081/…を
JosephH 2016年

1
@JosephH申し分なく、洞察に感謝します。確かにあなたの情報は正しいようです
Elijah Saounkine

23
httpsを使用している場合は、通常、これをYESに設定する必要はありません。カテゴリー5パート2の注4を参照してください。ほとんどの場合、アプリの主な目的が暗号化でない場合は、値をNOに設定できます。「適切な機関」からのリクエストに応じて情報を提供するかどうかなど、いくつかの注意点があります。注意深くお読みください。
ベン・ケイン

1
HTTPS暗号化はOSレベルで実装されています。アプリケーションは、実際にデータを暗号化するという問題には入りません。私の理解では、ベン・ケインの提案は正しいです。
Elijah Saounkine 2017

61

WWDC2015分布に応じていただきました新

ここに画像の説明を入力してください

info.plistで「ITSAppUsesNonExemptEncryption」を「NO」に設定すると正常に機能します。アプリに暗号化コンテンツがない場合。

ここに画像の説明を入力してください

私はこのポップアップを取得しました。内部テスト用のビルドを選択しているときに、info.plistに「ITSAppUsesNonExemptEncryption」キーを含めませんでしたが、それでも機能しました。

新しいアプリケーションのアップロードに成功しても、「ITSEncryptionExportComplianceCode」および「ITSAppUsesNonExemptEncryption」キーが含まれていませんでした。

また、アップルドキュメント。

重要:アプリが暗号化レビューのために追加のドキュメントを提供する必要がある場合、輸出規制当局がドキュメントをレビューして承認するまで、アプリはストアで販売可能ステータスになりません。アプリは、輸出規制当局がレビューして承認するまで、プレリリーステスト用に配布できません。

アプリが暗号化を使用しておらず、送信時にこれらの質問に答える必要がない場合は、ビルドにエクスポートコンプライアンス情報を提供できます。また、iTunes Connectを介して新しいドキュメントまたは更新されたドキュメントを提供して、ビルドに含める適切なキー文字列値を受け取ってから、iTunes Connectにアップロードすることもできます。

iTunes Connectに輸出規制文書を追加するには:

[機能]の[暗号化]セクションに移動します。適切なプラットフォームセクションの横にあるプラス記号をクリックします。質問に適切に答えてください。プロンプトが表示されたらファイルを添付します。保存をクリックします。ドキュメントはすぐにレビューのために送信され、ドキュメントのステータスがコンプライアンスレビューに表示されます。キー値も自動的に生成され、Info.plistファイルに含めることができます。ビルドにキー値を含める方法の詳細については、「リソースとヘルプ」セクションの「貿易コンプライアンス」を参照してください。

エクスポートコンプライアンスキーなしでビルドをアップロードできます。キーを含める場合は、輸出規制文書が不要であることを示している可能性があります。これは承認を必要としません。特定の輸出規制文書を参照するキーを含める場合、その文書は承認される必要があります。審査中または却下することはできません。

ここに画像の説明を入力してください

ドキュメントファイル名をクリックし、[詳細情報]を選択すると、いつでも回答を確認できます。ドキュメントを更新したり、質問に対する回答を変更したりする必要がある場合は、上記の手順を繰り返して、変更に対応する新しいドキュメントを追加する必要があります。



51

このキーをplistファイルに追加します...すべてうまくいきます。

<key>ITSAppUsesNonExemptEncryption</key>  
<false/>

前に貼り付けるだけ </dict></plist>


25

Appleは私たちの構築プロセスを簡略化したので、毎回同じチェックボックスをクリックする必要はありません。このフラグをアプリにコンパイルすることで、iTCフローを合理化できます。

これは2019年現在でも同じです。


17

ドロップダウンから選択するには、次の行を入力してください:

アプリは非免除暗号化を使用


12

基本的に、2つの点に注意してください。あなただけがあればNOに設定することが許可されているいずれかのすべての暗号化を使用していないまたはあなたが免除規則の一部です。これは、次の種類のアプリケーションに適用されます。

出典:商工会議所https : //www.bis.doc.gov/index.php/policy-guidance/encryption/encryption-faqs#15

民生用アプリケーション

  • ソフトウェアまたは音楽の著作権侵害および盗難防止。
  • 音楽、映画、曲/音楽、デジタル写真–プレーヤー、レコーダー、オーガナイザー
  • ゲーム/ゲーム–デバイス、ランタイムソフトウェア、HDMIおよびその他のコンポーネントインターフェイス、開発ツール
  • LCD TV、Blu-ray / DVD、ビデオオンデマンド(VoD)、映画、デジタルビデオレコーダー(DVR)/パーソナルビデオレコーダー(PVR)–デバイス、オンラインメディアガイド、商用コンテンツの整合性と保護、HDMIおよびその他のコンポーネントインターフェース(ビデオ会議ではない);
  • プリンター、コピー機、スキャナー、デジタルカメラ、インターネットカメラ-部品とサブアセンブリを含む
  • 家庭用ユーティリティおよびアプライアンス

ビジネス/システムアプリケーション:システムの運用、統合、制御。いくつかの例

  • ビジネスプロセスの自動化(BPA)–プロセスの計画とスケジューリング、サプライチェーンの管理、在庫および配送

  • 輸送–安全とメンテナンス、システム監視とオンボードコントローラ(航空、鉄道、商用自動車システムを含む)、「スマートハイウェイ」技術、公共交通機関の運用、料金の徴収など。

  • 産業、製造、または機械システム-ロボット工学、プラント安全、ユーティリティ、工場およびその他の重機、火災警報器やHVACなどの設備システムコントローラーを含む

  • 医療/臨床–診断アプリケーション、患者のスケジュール、および医療データレコードの機密性を含む

  • 応用地球科学–採掘/掘削、大気サンプリング/気象監視、マッピング/測量、ダム/水文学

研究/科学/分析。いくつかの例:

  • ビジネスプロセス管理(BPM)–ビジネスプロセスの抽象化とモデリング

  • 科学的可視化/シミュレーション/協調シミュレーション(コンピューティング、ネットワーキング、暗号解読などのツールを除く)

  • 社会科学、経済学、政治学のためのデータ統合ツール(例えば、経済学、人口学、地球規模の気候変動、世論調査などの予測とモデリング)

安全な知的財産の配送と設置。いくつかの例

  • ソフトウェアダウンロードの自動インストーラとアップデータ

  • ライセンスキー製品の保護と同様の購入検証

  • ソフトウェアおよびハードウェア設計のIP保護

  • コンピューター支援設計(CAD)ソフトウェアおよびその他の製図ツール

注:これらの規制は、使用するアプリのテストにも当てはまります TestFlight


4

このように解決された同じエラー

ここに画像の説明を入力してください

    using UnityEngine;
    using System.Collections;
    using UnityEditor.Callbacks;
    using UnityEditor;
    using System;
    using UnityEditor.iOS.Xcode;
    using System.IO;

public class AutoIncrement : MonoBehaviour {

    [PostProcessBuild]
    public static void ChangeXcodePlist(BuildTarget buildTarget, string pathToBuiltProject)
    {

        if (buildTarget == BuildTarget.iOS)
        {

            // Get plist
            string plistPath = pathToBuiltProject + "/Info.plist";
            var plist = new PlistDocument();
            plist.ReadFromString(File.ReadAllText(plistPath));

            // Get root
            var rootDict = plist.root;

            // Change value of NSCameraUsageDescription in Xcode plist
            var buildKey = "NSCameraUsageDescription";
            rootDict.SetString(buildKey, "Taking screenshots");

            var buildKey2 = "ITSAppUsesNonExemptEncryption";
            rootDict.SetString(buildKey2, "false");


            // Write to file
            File.WriteAllText(plistPath, plist.WriteToString());
        }
    }
    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {

    }

    [PostProcessBuild]
    public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject)
    {
        //A new build has happened so lets increase our version number
        BumpBundleVersion();
    }


    // Bump version number in PlayerSettings.bundleVersion
    private static void BumpBundleVersion()
    {
        float versionFloat;

        if (float.TryParse(PlayerSettings.bundleVersion, out versionFloat))
        {
            versionFloat += 0.01f;
            PlayerSettings.bundleVersion = versionFloat.ToString();
        }
    }
    [MenuItem("Leman/Build iOS Development", false, 10)]
    public static void CustomBuild()
    {
        BumpBundleVersion();
        var levels= new String[] { "Assets\\ShootTheBall\\Scenes\\MainScene.unity" };
        BuildPipeline.BuildPlayer(levels, 
            "iOS", BuildTarget.iOS, BuildOptions.Development);
    }

}

DEVは、必要なキーを追加するために使用できるよう、関連するコード行を追加
リファットエルデムSahinで

了解しました。コメントを削除しました。ありがとう
Bhargav Rao

4

Appleはこれに関するルールを変更しました。私はすべてのAppleドキュメントと、米国の輸出規制の多くを見つけました。

これについての私の見解は、最近までほとんどのアプリでHTTPSを使用していたとしても、Appleがエクスポート証明書を要求することを意味していました。バンキングなどの一部のアプリは問題ありませんが、多くのアプリでは、非常に幅広い免除カテゴリに分類されませんでした。

ただし、Appleは現在、httpsだけを使用するアプリの免除カテゴリの下にgetoutを導入しています。彼らがこれをいつ行ったかはわかりませんが、2016年12月か2017年1月のどちらかであったと思います。現在、米国政府からの証明書なしでアプリを提出しています。


1
「出て行く」ドキュメントへのリンク?HTTPSが大丈夫かどうか判断できません。
gbhall 2017

@gbhall HTTPSでは必要ありません。あなたは申請を試すことができ、GOVサイトからの申請フォームを通過することさえもうありません。(名前を覚えていない)

@スニークOK応援マン。うまくいけば、それは将来に向かって真実のままです。
gbhall 2017

@スニークは男を応援します。この最近の例は、年次レポートを提出する必要があることを示しているようです:stackoverflow.com/a/44396900/333733
gbhall

1
@Sneakは間違いなく詳細を調べます。リンクをありがとう。現時点ではHTTPSのみです。
gbhall 2017
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.