Slide 1

Slide 1 text

App Store Connect API キー対応してみた 2021/2/4 saten

Slide 2

Slide 2 text

⾃⼰紹介 名前: saten 仕事: iOSアプリを Apple神の命令に従わせる仕事 最近の趣味: ⼦供とポケモントレーナーになること

Slide 3

Slide 3 text

⾏っているスマホアプリの⾃動化 CI/CD:Bitrise u iOS/Androidアプリのビルド・配布(fastlane) u Unit test u 静的解析

Slide 4

Slide 4 text

App Store Connectが⼆段階認証必須に なった App Store Connectのヘッダーにお知らせ App Store Connectの今後の認証要件について 2021年2⽉以降、App Store Connectにサインインするすべてのユーザは、追加 の認証が必要となります。デベロッパのアカウントに関連付けられるApple IDに 対し、2ステップ確認または2ファクタ認証を有効にすることができるようになり ました。Apple IDアカウントの「セキュリティ」セクション、またはiPhone、 iPad、iPod touchの「設定」の「Apple ID」セクションをご確認ください。

Slide 5

Slide 5 text

App Store Connectが⼆段階認証必須に なった Apple周りのCI/CDやばい。。 パスワードのみで認証ができない

Slide 6

Slide 6 text

CI/CDのApp Store Connect⼆段階認証対応 急遽CI/CDを App Store Connectの⼆段階認証必須化に対応することに。。 対応策候補 u App Store Connect APIキー App Store ConnectのAPIキーを発⾏・使⽤ u Apple IDのApp⽤パスワード 既存のApple IDにApp⽤パスワードで⼆段階認証突破

Slide 7

Slide 7 text

Apple IDのApp⽤パスワードでイケる︖ APIキーの管理考えなくちゃな。。⼿取り早く Apple IDのApp⽤パスワードで できるかな︖

Slide 8

Slide 8 text

Apple IDのApp⽤パスワードでイケる︖ 突破のためにセッションを作成するが 翌⽇にはセッション切れてエラーになる。。

Slide 9

Slide 9 text

Apple IDのApp⽤パスワードでイケる︖ CI/CDでは 使いものにならない。。

Slide 10

Slide 10 text

Apple IDのApp⽤パスワードでイケる︖ App Store Connect APIキーで いくっきゃない

Slide 11

Slide 11 text

App Store Connect APIキーで いくっきゃない App Store Connect APIキーの管理 uAPIキーなのでCI/CDいじるような⼈だけ共有 u無期限のAPIキーなので共有している⼈が退職・ 異動時にはAPIキー再⽣成・取り消し [補⾜] App Store ConnectのAdminロールはApp Store Connect APIキーを作れるのでそこも基本的には CI/CDいじるような⼈だけにした⽅が良い

Slide 12

Slide 12 text

App Store Connect APIキーで いくっきゃない fastlaneでApp Store Connect APIキー 設定して。。

Slide 13

Slide 13 text

App Store Connect APIキーで いくっきゃない でけたー

Slide 14

Slide 14 text

補⾜ uAPIキーはCI/CDをいじるような⼈だけ共有して、 APIキーの共有を受けていないApp Store ConnectのApp Managerロールのような⼈でも リリースができるように、CI/CDが死んだ時に ローカルでのfastlane実⾏する際はApple IDの App⽤パスワードを使⽤するようにしています

Slide 15

Slide 15 text

まとめ uApple周りのCI/CDやるならApp Store Connect APIキーが良い uAPIキーの管理は慎重に uCI/CDが死んでも重要なフローは⼤替⼿段 を⽤意しておくと良いかも uAppleは強制的に環境変更を求めてくるので 気をつけて(笑)

Slide 16

Slide 16 text

最後に 勤務先であるカカクコムの ⾷べログチームでは採⽤を やっています