সিএফ নেট নেটওয়ার্ক এসএসএল হ্যান্ডশেক ব্যর্থ আইওএস 9


207

আইওএস 9 বিটা 1 সহ কারও কি এই সমস্যাটি আছে?

আমি একটি ওয়েবসার্ভিসে সংযোগ করতে স্ট্যান্ডার্ড এনএসআরএল সংযোগ ব্যবহার করি এবং ওয়েবসার্ভিসে কল করার সাথে সাথে আমি নীচের ত্রুটিটি পেয়ে যাই। এটি বর্তমানে আইওএস 8.3 এ কাজ করছে

সম্ভাব্য বিটা বাগ? কোন ধারণা বা চিন্তা মহান হবে! আমি এটি আইওএস 9 এর বিকাশের খুব প্রথম দিকে জানি

এখানে সম্পূর্ণ ত্রুটি:

সিএফ নেট নেটওয়ার্ক এসএসএল হ্যান্ডশেক ব্যর্থ হয়েছে (-9824) এনএসআরএলসেশন / এনএসআরএল সংযোগ এইচটিটিপি লোড ব্যর্থ হয়েছে (কেসিএফএস স্ট্রিমআরারডোমেনএসএল, -9824)

 NSURLRequest * urlRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:@"https://mywebserviceurl"]];
        NSURLResponse * response = nil;
        NSError * error = nil;
        NSData * data = [NSURLConnection sendSynchronousRequest:urlRequest
                                                  returningResponse:&response
                                                              error:&error];

উত্তর:


310

আইওএস 9 এবং ওএসএক্স 10.11 এর জন্য আপনার সমস্ত অ্যাপ্লিকেশানের তথ্য.পিস্টলিস্ট ফাইলে ব্যতিক্রম ডোমেনগুলি নির্দিষ্ট না করে আপনি যে সমস্ত হোস্ট থেকে ডেটা অনুরোধ করার পরিকল্পনা করছেন তার জন্য TLSv1.2 SSL দরকার require

তথ্য.পল্লিস্ট কনফিগারেশনের সিনট্যাক্সটি দেখতে এরকম দেখাচ্ছে:

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSExceptionDomains</key>
  <dict>
    <key>yourserver.com</key>
    <dict>
      <!--Include to allow subdomains-->
      <key>NSIncludesSubdomains</key>
      <true/>
      <!--Include to allow insecure HTTP requests-->
      <key>NSExceptionAllowsInsecureHTTPLoads</key>
      <true/>
      <!--Include to specify minimum TLS version-->
      <key>NSExceptionMinimumTLSVersion</key>
      <string>TLSv1.1</string>
    </dict>
  </dict>
</dict>

যদি আপনার অ্যাপ্লিকেশন (উদাহরণস্বরূপ একটি তৃতীয় পক্ষের ওয়েব ব্রাউজার) স্বেচ্ছাসেবক হোস্টগুলির সাথে সংযোগ স্থাপনের প্রয়োজন হয়, আপনি এটি এটির মতো কনফিগার করতে পারেন:

<key>NSAppTransportSecurity</key>
<dict>
    <!--Connect to anything (this is probably BAD)-->
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

যদি আপনি এটি করতেই থাকেন তবে আপনার সার্ভারগুলি TLSv1.2 এবং SSL ব্যবহার করার জন্য তারা ইতিমধ্যে এটি না করে থাকলে আপডেট করা ভাল। এটি একটি অস্থায়ী কর্মক্ষেত্র হিসাবে বিবেচনা করা উচিত।

আজকের হিসাবে, পূর্বনির্ধারিত ডকুমেন্টেশনগুলি কোনও নির্দিষ্ট উপায়ে এই কনফিগারেশন বিকল্পগুলির কোনও উল্লেখ করে না। এটি হয়ে গেলে, আমি প্রাসঙ্গিক ডকুমেন্টেশনের লিঙ্কের উত্তর আপডেট করব।


1
অ্যাপ ট্রান্সপোর্ট সিকিউরিটি (এটিএস) কোনও অ্যাপ্লিকেশনকে তার তথ্য.প্লেস্ট ফাইলে একটি ঘোষণা যুক্ত করতে দেয় যা সুরক্ষিত যোগাযোগের প্রয়োজন এমন ডোমেনগুলি নির্দিষ্ট করে। এটিএস দুর্ঘটনাজনিত প্রকাশ প্রতিরোধ করে, সুরক্ষিত ডিফল্ট আচরণ সরবরাহ করে এবং গ্রহণ করা সহজ। আপনি কোনও নতুন অ্যাপ তৈরি করছেন বা বিদ্যমান অ্যাপ্লিকেশনটি আপডেট করছেন তা নির্বিশেষে আপনার যত তাড়াতাড়ি সম্ভব এটিএস গ্রহণ করা উচিত। আপনি যদি একটি নতুন অ্যাপ্লিকেশন বিকাশ করছেন তবে আপনার একচেটিয়াভাবে এইচটিটিপিএস ব্যবহার করা উচিত। আপনার যদি কোনও বিদ্যমান অ্যাপ থাকে তবে আপনার এই মুহুর্তে যতটা সম্ভব এইচটিটিপিএস ব্যবহার করা উচিত এবং যত তাড়াতাড়ি সম্ভব আপনার বাকী অ্যাপ্লিকেশন স্থানান্তর করার জন্য একটি পরিকল্পনা তৈরি করা উচিত।
ব্যবহারকারী 3099837

2
@ স্টিভেন পিটারসন ওহে স্টিভ আমি ব্যতিক্রমী ডোমেনের উদাহরণটি কাজ করতে পারি না বলে মনে হয়, আপনার কি সুযোগ আছে কোনও ধারণা আছে? // ইত্যাদি
ব্যবহারকারী 3099837

27
দীর্ঘ আড্ডার জন্য দুঃখিত তবে আমি এটি বুঝতে পেরেছিলাম <key> NSTemporaryException প্রয়োজনীয়তা ফরোয়ার্ড সেক্রেসিটি </key> <মিথ্যা />
ব্যবহারকারীর 3099837

2
@ রশ্মিরঞ্জনমল্লিক এনএসটিম্পোরারি এক্সসেপশনমিনিমামটিএলএস ভার্সনটি এটিএসকে জানাতে ব্যবহৃত হয় যে আপনি একটি নন 1.2 সার্ভারের সাথে কাজ করছেন। উদাহরণস্বরূপ, আপনি যদি কোনও হোস্টের সাথে সংযোগ দেওয়ার চেষ্টা করছেন যা টিএলএস 1.0 ব্যবহার করে 1.0 উপরে উল্লিখিত ব্যবহারকারীর 3099837 হিসাবে আপনাকেও অবশ্যই এনএসটি সাম্প্রতিক এক্সেকশনেশন প্রয়োজনীয়তা ফরোয়ার্ড সেক্রেসিটিকে মিথ্যা হিসাবে সেট করতে হবে।
ওম্বল

2
ste.vn/2015/06/10/… - এটি সেই ব্লগ যেখানে উত্তরটি উত্স করা হয়েছে।
শন দেব

66

আইওএস 10+ তে, টিএলএস স্ট্রিং "TLSv1.0" ফর্মের হওয়া আবশ্যক। এটি কেবল "1.0" হতে পারে না। (দীর্ঘশ্বাস)


অন্যান্য উত্তরগুলির নীচের সংমিশ্রণটি কাজ করে।

ধরা যাক আপনি কোনও হোস্টের সাথে সংযোগ স্থাপনের চেষ্টা করছেন (YOUR_HOST.COM) যার কেবলমাত্র TLS 1.0 রয়েছে।

এগুলি আপনার অ্যাপ্লিকেশনটির তথ্য.পুলিস্টে যুক্ত করুন

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>YOUR_HOST.COM</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSTemporaryExceptionMinimumTLSVersion</key>
            <string>TLSv1.0</string>
            <key>NSTemporaryExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
    </dict>
</dict>

9
দেখে মনে হচ্ছে যে যুক্তটি NSTemporaryExceptionRequiresForwardSecrecyআমার জন্য কৌশলটি করেছে, ধন্যবাদ!
জোশ ভালদিভিওস

2
এই সংস্করণটি iOS9.1 এ আমার জন্য কাজ করে নি - আমাকে অন্য উত্তরগুলির মধ্যে একটিতে টিএলএস ভার্সন স্ট্রিং ফর্ম্যাটটি ব্যবহার করা দরকার <key> এনএসপি সাম্প্রতিক এক্সপেনশনমিনিমামটিএলএস সংস্করণ </key> <স্ট্রিং>
টিএলএসভি 1.1

এটি কাজ করে তবে আমার প্রশ্ন হ'ল: এই পরামিতিগুলি চালু থাকলে এবং ডেটা এনক্রিপ্ট করা হয় না তখন কি আমার অ্যাপ্লিকেশন এসএসএল ব্যবহার করে না?
ডিডিসি

33

আইওএস 9 এবং ওএসএক্স 10.11 এ অ্যাপ ট্রান্সপোর্ট সুরক্ষা ব্যতিক্রম কনফিগার করা আরও তথ্যের জন্য uring

কৌতূহলজনকভাবে, আপনি লক্ষ্য করবেন যে সংযোগটি আপনার কোডের ভুল থেকে রক্ষা করার জন্য HTTP- র প্রোটোকলটি https তে পরিবর্তন করার চেষ্টা করে যেখানে আপনি ঘটনাক্রমে URL টি ভুল কনফিগার করেছেন f কিছু ক্ষেত্রে, এটি সম্ভবত কার্যকর হতে পারে তবে এটি বিভ্রান্তিকরও।

এই অ্যাপ পরিবহন সুরক্ষা সহ একটি অ্যাপ্লিকেশনটি শিপিংয়ে কিছু ভাল ডিবাগিং পরামর্শ দেয় covers

এটিএস ব্যর্থতা

বেশিরভাগ এটিএস ব্যর্থতা -9800 সিরিজের কোড সহ সিএফআরিয়ার্স হিসাবে উপস্থিত হবে। এগুলি সুরক্ষা / SecureTransport.h শিরোনামে সংজ্ঞায়িত করা হয়

2015-08-23 06:34:42.700 SelfSignedServerATSTest[3792:683731] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)

CFNETWORK_DIAGNOSTICS

ব্যর্থতা সম্পর্কে কনসোলে আরও তথ্য পেতে পরিবেশ পরিবর্তনশীল CFNETWORK_DIAGNOSTICS 1 এ সেট করুন

nscurl

প্রতিটি এটিএস কনফিগারেশনের অধীনে প্রদত্ত হোস্টের সুরক্ষিত সংযোগের চেষ্টা করে ফলাফলটি প্রতিবেদন করার জন্য সরঞ্জামটি এটিএস ব্যতিক্রমের বিভিন্ন সংমিশ্রনের মধ্য দিয়ে চলবে।

nscurl --ats-diagnostics https://example.com

1
কেবলমাত্র ইঙ্গিত করুন যে এনএসকারল কেবল ম্যাক ওএস এক্স "এল ক্যাপিটান" এ উপলব্ধ
webo80

1
আপনার সার্ভার দ্বারা কোন টিএলএস সংযোগ সিফার ব্যবহার হচ্ছে তা যাচাই করার জন্য আরও একটি ডিবাগিং টিপ: কার্ল-
ভি

1
কার্ল পাস যদি সমস্ত পদক্ষেপ ঠিকঠাক করে তবে সমস্যাটির কারণ হতে পারে এমন কোনও ধারণা?
অস্টন

@ onmyway133 আপনি কীভাবে "পরিবেশের পরিবর্তনশীল CFNETWORK_DIAGNOSTICS 1 এ সেট করবেন" এর ব্যাখ্যা ব্যাখ্যা যুক্ত করতে পারেন?
ইয়াকিরনা

1
@ ইয়াকিরনা আপনি কীভাবে এটি করতে পারেন সে সম্পর্কে এখানে পড়তে পারেন nshipster.com/launch-arguments- এবং- পরিবেশ- ভার্ভেবলগুলি এটি বেশ সোজা :) :)
onmyway133

2

যদি আপনার ব্যাকএন্ডে কোনও সুরক্ষিত সংযোগ পিপড়া ব্যবহার করে তবে আপনি এনএসআরএলসেশন ব্যবহার করবেন

CFNetwork SSLHandshake failed (-9801)
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9801)

আপনার এটিএস সংস্করণ এবং এসএসএল শংসাপত্রের তথ্য পেতে বিশেষত আপনার সার্ভার কনফিগারেশনটি পরীক্ষা করতে হবে:

এর পরিবর্তে শুধু নিরাপত্তাহীন সংযোগে অনুমতি সেটিংস এর দ্বারা NSExceptionAllowsInsecureHTTPLoads = YES, পরিবর্তে আপনি প্রয়োজন সিকিউরিটি নামানো মঞ্জুরি দিন ক্ষেত্রে আপনার সার্ভারে এটিএস জন্য সর্বনিম্ন প্রয়োজন (v1.2) পূরণ না (অথবা ফিক্স সার্ভার প্রান্তের ভাল) এ।

একটি একক সার্ভারে সুরক্ষিত হ্রাসের অনুমতি দেওয়া হচ্ছে

<key>NSExceptionDomains</key>
<dict>
    <key>api.yourDomaine.com</key>
    <dict>
        <key>NSExceptionMinimumTLSVersion</key>
        <string>TLSv1.0</string>
        <key>NSExceptionRequiresForwardSecrecy</key>
        <false/>
    </dict>
</dict>

শংসাপত্র তদন্ত করতে ওপেনএসএল ক্লায়েন্ট ব্যবহার করে আপনার সার্ভার কনফিগারেশন পেতে:

openssl s_client  -connect api.yourDomaine.com:port //(you may need to specify port or  to try with https://... or www.)

.. শেষে দেখুন

SSL-Session:
    Protocol  : TLSv1
    Cipher    : AES256-SHA
    Session-ID: //
    Session-ID-ctx: 
    Master-Key: //
    Key-Arg   : None
    Start Time: 1449693038
    Timeout   : 300 (sec)
    Verify return code: 0 (ok)

অ্যাপ ট্রান্সপোর্ট সিকিউরিটি (এটিএস) এর জন্য ট্রান্সপোর্ট লেয়ার সিকিউরিটি (টিএলএস) প্রোটোকল সংস্করণ 1.2 প্রয়োজন require

এটিএস ব্যবহার করে সংযোগের জন্য প্রয়োজনীয়তা:

অ্যাপ ট্রান্সপোর্ট সিকিউরিটি (এটিএস) ব্যবহার করার জন্য ওয়েব পরিষেবা সংযোগের প্রয়োজনীয়তাগুলির সাথে সার্ভার, সংযোগ সাইফার এবং শংসাপত্রগুলি জড়িত:

শংসাপত্রগুলি নিম্নলিখিত ধরণের কীগুলির সাথে স্বাক্ষর করতে হবে:

  • কমপক্ষে 256 (যা, SHA-256 বা তার বেশি) ডাইজেস্ট দৈর্ঘ্যের সহ হ্যাশ অ্যালগরিদম 2 (SHA-2) কীটি সুরক্ষিত করুন

  • অন্তত 256 বিট আকারের এলিপটিক-কার্ভ ক্রিপ্টোগ্রাফি (ইসিসি) কী

  • কমপক্ষে 2048 বিটের দৈর্ঘ্য সহ রিভস্ট-শামির-অ্যাডলম্যান (আরএসএ) কী একটি অকার্যকর শংসাপত্রের ফলে একটি হার্ড ব্যর্থতা এবং কোনও সংযোগ নেই।

নিম্নলিখিত সংযোগ সাইফারগুলি ফরওয়ার্ড সিক্রেসিটি (এফএস) সমর্থন করে এবং এটিএসের সাথে কাজ করে:

TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

আপডেট: দেখা যাচ্ছে যে ওপেনসেল কেবলমাত্র ন্যূনতম প্রোটোকল সংস্করণ প্রোটোকল: টিএলএসভি 1 লিঙ্ক সরবরাহ করে


প্রশ্নটি এখনও রয়ে গেছে যে সার্ভারের প্রয়োজনীয়তা পূরণ হয় কিনা তা খুঁজে বের করার জন্য ওপেনএসএল তথ্যের ব্যাখ্যা করা সম্ভব। এছাড়াও প্রোটোকল: TLSv1 1.x এর পরিবর্তে
ম্যাকর

আমি এটিকে সাধারণ করে
তুলি,

উত্তর উত্তর ছাড়াই আরও প্রশ্ন ছেড়ে দেয়। ওপেনএসএল রিপোর্ট এবং অ্যাপল ডকুমেন্টেশনের মধ্যে ম্যাপিং হতে পারে বলে মনে হচ্ছে issue ওপেনসেল আউটপুট থেকে টিএলএস ১.২ সমর্থিত কিনা তা নির্ধারণ করা সম্ভব নয়। পারফেক্ট ফরওয়ার্ড সিক্রেসিটি সমর্থন করে কিনা তা উত্তরও নির্ধারণ করতে দেয় না।
zaph

2

দু'দিন চেষ্টা ও ব্যর্থতার পরে, আমার পক্ষে যা কাজ করেছে তা হ'ল এই কোল্ড কোড

এক পরিবর্তনের সাথে, এই পোস্ট অনুসারে আমাদের সেই ধরণের কনভেনশনের এনএসইএক্সসেপশনডমাইনস অভিধানের সাথে সম্পর্কিত সাব-কীগুলি ব্যবহার বন্ধ করা উচিত

  NSTemporaryExceptionMinimumTLSVersion

এবং নতুন কনভেনশনে ব্যবহার করুন

  NSExceptionMinimumTLSVersion

পরিবর্তে.

আপেল ডকুমেন্টেশন

আমার কোড

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSExceptionDomains</key>
        <dict>
            <key>YOUR_HOST.COM</key>
            <dict>
                <key>NSExceptionAllowsInsecureHTTPLoads</key>
                <true/>
                <key>NSExceptionMinimumTLSVersion</key>
                <string>TLSv1.0</string>
                <key>NSExceptionRequiresForwardSecrecy</key>
                <false/>
                <key>NSIncludesSubdomains</key>
                <true/>
            </dict>
        </dict>
    </dict>

1

আর একটি দরকারী সরঞ্জাম হ'ল এনএম্যাপ (ব্রিউ ইনস্টল এনএম্যাপ)

nmap --script ssl-enum-ciphers -p 443 google.com

আউটপুট দেয়

Starting Nmap 7.12 ( https://nmap.org ) at 2016-08-11 17:25 IDT
Nmap scan report for google.com (172.217.23.46)
Host is up (0.061s latency).
Other addresses for google.com (not scanned): 2a00:1450:4009:80a::200e
PORT    STATE SERVICE
443/tcp open  https
| ssl-enum-ciphers: 
|   TLSv1.0: 
|     ciphers: 
|       TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA (secp256r1) - A
|       TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A
|       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
|       TLS_RSA_WITH_3DES_EDE_CBC_SHA (rsa 2048) - C
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A
|       TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
|     compressors: 
|       NULL
|     cipher preference: server
|   TLSv1.1: 
|     ciphers: 
|       TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA (secp256r1) - A
|       TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A
|       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
|       TLS_RSA_WITH_3DES_EDE_CBC_SHA (rsa 2048) - C
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A
|       TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
|     compressors: 
|       NULL
|     cipher preference: server
|   TLSv1.2: 
|     ciphers: 
|       TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA (secp256r1) - A
|       TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 (secp256r1) - A
|       TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 (secp256r1) - A
|       TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA (secp256r1) - A
|       TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 (secp256r1) - A
|       TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (secp256r1) - A
|       TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (secp256r1) - A
|       TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (secp256r1) - A
|       TLS_RSA_WITH_3DES_EDE_CBC_SHA (rsa 2048) - C
|       TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A
|       TLS_RSA_WITH_AES_128_CBC_SHA256 (rsa 2048) - A
|       TLS_RSA_WITH_AES_128_GCM_SHA256 (rsa 2048) - A
|       TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A
|       TLS_RSA_WITH_AES_256_CBC_SHA256 (rsa 2048) - A
|       TLS_RSA_WITH_AES_256_GCM_SHA384 (rsa 2048) - A
|     compressors: 
|       NULL
|     cipher preference: client
|_  least strength: C

Nmap done: 1 IP address (1 host up) scanned in 5.48 seconds

শংসাপত্রের সমস্যাটি ডিবাগ করতে খুব দরকারী
লোপাখিন

0

এই ত্রুটিটি লগগুলি মাঝে মধ্যে প্রদর্শিত হচ্ছিল যখন আমি কোনও বগি / ক্র্যাশযুক্ত কর্ডোভা আইওএস সংস্করণ ব্যবহার করি। আমি কর্ডোভা আইওএস আপগ্রেড বা ডাউনগ্রেড করলে এটি চলে যায়।

আমি যে সার্ভারের সাথে সংযোগ দিচ্ছিলাম সে টিএলএসভি ১.২ এসএসএল ব্যবহার করছিল তাই আমি জানতাম যে সমস্যাটি নয়।


0

আপনার প্রকল্পের .plistফাইলটিতে এই অনুমতিটি যুক্ত করুন:

<key>NSAppTransportSecurity</key>
<dict>
    <!--Connect to anything (this is probably BAD)-->
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

0

তথ্য.পলিট কনফিগারেশনের সিনট্যাক্স

   <key>NSAppTransportSecurity</key>
   <dict>
   <key>NSExceptionDomains</key>
    <dict>
    <key>yourserver.com</key>
   <dict>
  <!--Include to allow subdomains-->
  <key>NSIncludesSubdomains</key>
  <true/>
  <!--Include to allow insecure HTTP requests-->
  <key>NSExceptionAllowsInsecureHTTPLoads</key>
  <true/>
  <!--Include to specify minimum TLS version-->
  <key>NSExceptionMinimumTLSVersion</key>
  <string>TLSv1.1</string>
   </dict>
 </dict>


0

আপডেট উত্তর (পোস্ট-ডাব্লুডাব্লুডিসি 2016):

আইওএস অ্যাপ্লিকেশনগুলির 2016 এর শেষ নাগাদ সুরক্ষিত এইচটিটিপিএস সংযোগের প্রয়োজন হবে A এটিএস বন্ধ করার চেষ্টা করে ভবিষ্যতে আপনার অ্যাপ্লিকেশনটিকে প্রত্যাখ্যান করতে পারে।

অ্যাপ ট্রান্সপোর্ট সিকিউরিটি বা এটিএস একটি বৈশিষ্ট্য যা অ্যাপল আইওএস ৯-এ প্রবর্তন করেছিল, যখন এটিএস সক্ষম হয়, এটি কোনও অ্যাপ্লিকেশনটিকে কোনও সুরক্ষিত এইচটিটিপি-র পরিবর্তে কোনও এইচটিপিপিএস সংযোগের মাধ্যমে ওয়েব পরিষেবাদির সাথে সংযোগ করতে বাধ্য করে।

তবে, বিকাশকারীরা এখনও এটিএস বন্ধ করতে পারেন এবং উপরের উত্তরে উল্লিখিত হিসাবে তাদের অ্যাপ্লিকেশনগুলিকে এইচটিটিপি সংযোগের মাধ্যমে ডেটা প্রেরণ করতে পারবেন। 2016 এর শেষে, অ্যাপল অ্যাপ্লিকেশন স্টোরটিতে অ্যাপ্লিকেশন জমা দেওয়ার আশা রাখে এমন সমস্ত বিকাশকারীদের জন্য এটিএস বাধ্যতামূলক করে দেবে। লিংক


0

আমি যে ডিভাইসটি পরীক্ষা করেছি তাতে ভুল সময় সেট ছিল। সুতরাং আমি যখন শীঘ্রই চালু হবে এমন একটি শংসাপত্রের সাথে কোনও পৃষ্ঠা অ্যাক্সেস করার চেষ্টা করেছি তখন এটি অ্যাক্সেস অস্বীকার করবে কারণ শংসাপত্রটির মেয়াদ শেষ হলেও। ঠিক করতে, ডিভাইসে সঠিক সময় নির্ধারণ করুন!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.