123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 |
- #import <Foundation/Foundation.h>
- #import <Security/Security.h>
- typedef NS_ENUM(NSUInteger, AFSSLPinningMode) {
- AFSSLPinningModeNone,
- AFSSLPinningModePublicKey,
- AFSSLPinningModeCertificate,
- };
- NS_ASSUME_NONNULL_BEGIN
- @interface AFSecurityPolicy : NSObject <NSSecureCoding, NSCopying>
- @property (readonly, nonatomic, assign) AFSSLPinningMode SSLPinningMode;
- @property (nonatomic, strong, nullable) NSSet <NSData *> *pinnedCertificates;
- @property (nonatomic, assign) BOOL allowInvalidCertificates;
- @property (nonatomic, assign) BOOL validatesDomainName;
- + (NSSet <NSData *> *)certificatesInBundle:(NSBundle *)bundle;
- + (instancetype)defaultPolicy;
- + (instancetype)policyWithPinningMode:(AFSSLPinningMode)pinningMode;
- + (instancetype)policyWithPinningMode:(AFSSLPinningMode)pinningMode withPinnedCertificates:(NSSet <NSData *> *)pinnedCertificates;
- - (BOOL)evaluateServerTrust:(SecTrustRef)serverTrust
- forDomain:(nullable NSString *)domain;
- @end
- NS_ASSUME_NONNULL_END
|