What s New in Xcode App Signing

Similar documents
Using and Extending the Xcode Source Editor

Seamless Linking to Your App

Building Watch Apps #WWDC15. Featured. Session 108. Neil Desai watchos Engineer

Mastering Xcode for iphone OS Development Part 1. Todd Fernandez Sr. Manager, IDEs

What s New in CloudKit

Mastering Xcode for iphone OS Development Part 2. Marc Verstaen Sr. Manager, iphone Tools

Introducing SiriKit. Hey Siri, say hello to apps #WWDC16. App Frameworks. Session 217

Creating Great App Previews

Extending Your Apps with SiriKit

Introducing Password AutoFill for Apps

Data Delivery with Drag and Drop

Cross Platform Nearby Networking

Accessibility on OS X

Building Apps with Dynamic Type

Getting the Most Out of HealthKit

What s New in Testing

Advanced Debugging and the Address Sanitizer

Introduction to Siri Shortcuts

Localizing with Xcode 6

Advances in TVMLKit. App Frameworks #WWDC17. Trevor Cortez, Localization Engineer Parry Panesar, tvos Engineer Jeremy Foo, tvos Engineer

Your Apps and the Future of macos Security

Implementing UI Designs in Interface Builder

Introducing Swift Playgrounds

Building for Voice with Siri Shortcuts

Designing Great Apple Watch Experiences

Core ML in Depth. System Frameworks #WWDC17. Krishna Sridhar, Core ML Zach Nation, Core ML

Building Faster in Xcode

Enabling Your App for CarPlay

Deploying AirPrint in Enterprise

What s New in watchos

Mastering UIKit on tvos

Automatic Strong Passwords and Security Code AutoFill

What s New in ARKit 2

Introducing the Modern WebKit API

Localizing with Xcode 9

Accessibility on ios. Developing for everyone. Frameworks #WWDC14. Session 210 Clare Kasemset ios Accessibility

What s New in tvos #WWDC16. App Frameworks. Session 206. Hans Kim tvos Engineer

Thread Sanitizer and Static Analysis

Using Grouped Notifications

Improving the Accessibility and Usability of Complex Web Applications

Integrating Apps and Content with AR Quick Look

Introducing On Demand Resources

Designing for Apple Watch

Mastering Drag and Drop

iphone Development Setup Instructions Nikhil Yadav Pervasive Health Fall 2011

Media and Gaming Accessibility

What s New in Notifications

ios Accessibility Developing for everyone Session 201 Ian Fisch ios Accessibility

New UIKit Support for International User Interfaces

Quick Interaction Techniques for watchos

Managing Documents In Your ios Apps

WatchKit In-Depth, Part 2

Content Protection for HTTP Live Streaming

Monetize and Promote Your App with iad

Modern User Interaction on ios

Enhancing your apps for the next dimension of touch

Vision Framework. Building on Core ML. Media #WWDC17. Brett Keating, Apple Manager Frank Doepke, He who wires things together

Architect your deployment using Chef

Introducing the Photos Frameworks

Apple Watch Design Tips and Tricks

What's New in UIKit Dynamics and Visual Effects Session 229

Creating Complications with ClockKit Session 209

Working with Metal Overview

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Adapting to the New UI of OS X Yosemite

Understanding Undefined Behavior

Mysteries of Auto Layout, Part 1

Getting to Know Swift Package Manager

Getting Published in Apple News

Introducing MusicKit. Media #WWDC17. Tim Parthemore, MusicKit Services Joel Lopes Da Silva, ios Music

What s New in Device Configuration, Deployment, and Management

Localization Best Practices on tvos

Validating HTTP Live Streams

ArcGIS Enterprise Security: An Introduction. Gregory Ponto & Jeff Smith

Advances in AVFoundation Playback

Getting the Most out of Playgrounds in Xcode

itunes Connect Development to distribution #WWDC15 Distribution Session 304

What s New in Energy Debugging

Touch Bar Fundamentals

Internationalization Best Practices

Simplifying Endpoint Management and Security For an Evolving and Complex Mobile Workforce

Power, Performance, and Diagnostics

Storyboards and Controllers on OS X

Writing Great Alerts. Design #WWDC17. Natalie Calvert, Designer

Building Visually Rich User Experiences

What's New in Core Spotlight

New Ways to Work with Workouts

Accessing vlabs using VMware Horizon View Client for ios

What s New in SpriteKit

CICS Explorer. Matthew Webster IBM Thursday, February 7, IBM Corporation

Advanced Notifications

What s New in tvos 12

ios App Resigning and VoIP Certificate Guide

January 2018 Exam Timetable

Creating Custom Instruments

imessage Apps and Stickers, Part 2

What s New in Core Data?

What s New in MapKit. App Frameworks #WWDC17. Fredrik Olsson

This guide illustrates how to set up an Apple device for deployment, and deploy an application. It covers how to:

CONFIGURING BASIC MACOS MANAGEMENT: VMWARE WORKSPACE ONE OPERATIONAL TUTORIAL VMware Workspace ONE

Transcription:

Developer Tools #WWDC16 What s New in Xcode App Signing Developing and distributing Session 401 Joshua Pennington Tools Engineering Manager Itai Rom Tools Engineer 2016 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission from Apple.

What s New in Xcode Signing What is signing?

What s New in Xcode Signing What is signing? Identifies you to users

What s New in Xcode Signing What is signing? Identifies you to users Prevents spoofing

What s New in Xcode Signing What is signing? Identifies you to users Prevents spoofing Allows access to system services

What s New in Xcode Signing Overview Fundamentals Signing Certificate per Mac Signing in Xcode Best Practices

What s New in Xcode Signing Overview Fundamentals Signing Certificate per Mac Signing in Xcode Best Practices

What s New in Xcode Signing Overview Fundamentals Signing Certificate per Mac Signing in Xcode Best Practices

What s New in Xcode Signing Overview Fundamentals Signing Certificate per Mac Signing in Xcode Best Practices

What s New in Xcode Signing Overview Fundamentals Signing Certificate per Mac Signing in Xcode Best Practices

Fundamentals

codesign

Fundamentals Overview

Fundamentals Overview

Fundamentals Overview

Fundamentals Overview

Fundamentals

Fundamentals Signing certificates Issued by Apple

Fundamentals Signing certificates Issued by Apple Development and Distribution

Fundamentals Signing certificates Issued by Apple Development and Distribution Must have a private key

Fundamentals Signing certificates Issued by Apple Development and Distribution Must have a private key Apple never has the private key

Fundamentals Provisioning profiles

Fundamentals Provisioning profiles Issued by Apple

Fundamentals Provisioning profiles Issued by Apple App-specific

Fundamentals Provisioning profiles Issued by Apple App-specific Allows running on devices

Fundamentals Provisioning profiles Issued by Apple App-specific Allows running on devices Allows entitlements

Fundamentals Entitlements

Fundamentals Entitlements Declares support for capabilities

Fundamentals Entitlements Declares support for capabilities Defined per-target

Fundamentals Entitlements Declares support for capabilities Defined per-target Use the Capabilities tab

Fundamentals Entitlements

Fundamentals Signing in Xcode

Fundamentals Signing in Xcode

Fundamentals Signing in Xcode

Fundamentals Signing in Xcode

Fundamentals Signing in Xcode

Fundamentals Signing in Xcode

Fundamentals Signing in Xcode

Signing Certificate per Mac

Multiple Development Certificates

Signing Certificate per Mac Overview

Signing Certificate per Mac Overview Development only

Signing Certificate per Mac Overview Development only Xcode and developer website

Signing Certificate per Mac Overview Development only Xcode and developer website Created by Xcode 8 and later

Signing Certificate per Mac Overview Development only Xcode and developer website Created by Xcode 8 and later Usable with all versions

Signing in Xcode

Signing in Xcode Signing can be complicated

Signing in Xcode Signing can be complicated

Signing in Xcode 7 Fix Issue

Signing in Xcode 7 Fix Issue What was the issue? What did Fix Issue do? Why did Fix Issue do that? Why do I even have to click a button?

Signing in Xcode 8 NEW Fully redesigned

Signing in Xcode 8 NEW Fully redesigned Brand new infrastructure

Signing in Xcode 8 NEW Fully redesigned Brand new infrastructure New workflows and UI

Signing in Xcode 8 NEW Fully redesigned Brand new infrastructure New workflows and UI Actionable messaging

Signing in Xcode 8 NEW Fully redesigned Brand new infrastructure New workflows and UI Actionable messaging Status reporting

Automatic Signing

Automatic Signing

Customized Signing

Signing in Xcode Automatic signing

Signing in Xcode Automatic signing

Signing in Xcode Automatic signing

Signing in Xcode Automatic signing

Signing in Xcode Automatic signing

Signing in Xcode Automatic signing Creates signing certificates

Signing in Xcode Automatic signing Creates signing certificates Creates and updates App IDs

Signing in Xcode Automatic signing Creates signing certificates Creates and updates App IDs Creates and updates provisioning profiles

Signing in Xcode Automatic signing

Signing in Xcode Automatic signing Prompts you only when necessary

Signing in Xcode Automatic signing Prompts you only when necessary Signing report shows what Xcode did and why

Demo Automatic Signing

Signing in Xcode Automatic signing

Signing in Xcode Automatic signing Development signing

Signing in Xcode Automatic signing Development signing Limited to Xcode-created provisioning profiles

Signing in Xcode Automatic signing Development signing Limited to Xcode-created provisioning profiles Distribution signing assets aren t touched

Signing in Xcode Automatic signing

Signing in Xcode Automatic signing Completely redesigned in Xcode 8

Signing in Xcode Automatic signing Completely redesigned in Xcode 8 Stays out of your way

Signing in Xcode Automatic signing Completely redesigned in Xcode 8 Stays out of your way Manages signing so you can focus on development

Automatic Signing

Automatic Signing

Customized Signing

Signing in Xcode Customized signing

Signing in Xcode Customized signing

Signing in Xcode Customized signing

Signing in Xcode Customized signing

Signing in Xcode Customized signing

Signing in Xcode Customized signing

Signing in Xcode Customized signing

Signing in Xcode Customized signing

Signing in Xcode Customized signing

Signing in Xcode Customized signing Manually created profiles only

Signing in Xcode Customized signing Manually created profiles only Any type of profile

Signing in Xcode Customized signing

Signing in Xcode Customized signing New build setting, PROVISIONING_PROFILE_SPECIFIER

Signing in Xcode Customized signing New build setting, PROVISIONING_PROFILE_SPECIFIER References profiles by name

Signing in Xcode Customized signing New build setting, PROVISIONING_PROFILE_SPECIFIER References profiles by name Update profiles without making project changes

Demo Customized Signing

Customized Signing

Customized Signing

Automatic Signing

Best Practices

Best Practices Development

Best Practices Development Use automatic

Best Practices Development Use automatic Add all developers to team

Best Practices Development Use automatic Add all developers to team Use the capabilities tab

Best Practices Manual

Best Practices Manual Don t set CODE_SIGN_IDENTITY

Best Practices Manual Don t set CODE_SIGN_IDENTITY Use the new general tab UI

Best Practices Manual Don t set CODE_SIGN_IDENTITY Use the new general tab UI Use the capabilities tab

Best Practices Manual Don t set CODE_SIGN_IDENTITY Use the new general tab UI Use the capabilities tab Migrate to automatic

Best Practices Distribution

Best Practices Distribution Development

Best Practices Distribution Organizer Development Distribution

Summary Multiple development certificates Xcode 8 automatically manages signing Dedicated customized signing mode

More Information https://developer.apple.com/wwdc16/401

Related Sessions How ios Security Really Works Nob Hill Tuesday 4:00PM What s New in Security Nob Hill Tuesday 5:00PM Introduction to Xcode Pacific Heights Thursday 1:40PM

Labs Signing and Distributing Your App with Xcode Signing and Distributing Your App with Xcode Developer Tools Lab C Developer Tools Lab C Tuesday 12:00PM Wednesday 3:00PM