プログラミング

Xcodeの「キーチェーンログインのパスワードを入力してください」でパスワードが通らない

f:id:photoblg:20171202163046j:plain

PC関係でトラブったときは、ほとんどが検索をして情報収集、解決といったフローなんですが、macのことはまだまだわからないことが多いです。

今回「codesignは、キーチェーンに含まれるキー”XXXXX”へアクセスしようとしています。許可するにはキーチェーン”ログイン”のパスワードを入力してください。」と表示されたのですがパスワードが通らなくて困ったことについてです。

そもそも発生した原因

もう終わってしまいましたがUdemyでセールをしていたので、「iOS 11 Swift 4アプリ開発入門」というコースを購入しました。

Xcode7以降は、Apple Developer Program(有料) に登録しなくても実機でデバッグできるので、早速やろうと試みたときです。

f:id:photoblg:20171202163046j:plain

iCloudのキーチェーンの設定をした覚えはありましたが、何のことだかさっぱりわかりません。iCloudのキーチェーンパスワードを入力しても通りません。。

証明書を再要求

調べてみたところ、キーチェーンの証明書を再要求(リセット?)で解決したという記事を見かけたので試してみます。

アプリケーション>ユーティリティ>キーチェーンアクセスの証明書アシスタント>認証局に証明書を要求とすると・・・

まずおかしいのが「ユーザーのメールアドレス」がかなり昔のアドレスになっている。。最近その辺に放置していた4sをリセット〜再インストールしたのですが、それが関係あるのかどうか・・・。

既存のAppleIDのメールアドレスを入れると「エラーがおきました。入力したユーザー名またはパスフレーズが正しくありません」となります。

ユーザー名も入れてないしパスフレーズも入れてないんですがどういうことなんでしょう。。

f:id:photoblg:20171130001546j:plainf:id:photoblg:20171130001549j:plain
証明書アシスタント

サポートに連絡したが解決せず・・・

f:id:photoblg:20171202173453p:plain

不具合かもしれないのと、調べても糸口が見つからないのでAppleのサポートに聞いてみることにしました。

サポートは電話しかないのですが、日中は仕事をしているため聞くことができません。しかしサポートの電話予約が時間指定できるためしてみました。

予約時間になり電話で内容を伝えるものの・・・技術的な内容のためわからず。Xcode専用のサポート担当がいるそうなんですが、こちらは平日の9時〜18時のみ。(公務員かよ!)

原因はキーチェーンのバグか?

いろいろ調べている中で以下の記事の内容がほとんど同じ症状でした。

Xcode(Mac)でアプリのビルド時にエラーが発生: ほぼ現役世代かな

同じようにまずXcodeのApple IDを削除([Xcode]-[Preference]-[Accounts]でApple IDを選択してマイナスボタン)してXcodeを一度終了。

f:id:photoblg:20171203214732j:plain:w400

Launchpadから[その他]-[キーチェーンアクセス]の[ログイン]-[鍵]でApple IDの公開鍵、秘密鍵を削除。[証明書]のiOS Developerを開いて「アクセス制御」にある「この項目の使用をすべてのアプリケーションに許可」にしてキーチェーンを一度終了。

f:id:photoblg:20171203225212j:plainf:id:photoblg:20171203225214j:plain
Apple IDのキー削除

再度キーチェーンアクセスを開き、[証明書アシスタンス]-[認証局に証明書を要求]

以下の内容で作成。

  • ユーザーのメールアドレス:Apple ID
  • 通称:○○_key(任意の文字列)
  • CAのメールアドレス:Apple ID
  • 要求の処理:ディスクに保存

f:id:photoblg:20171203230002j:plain:w400

数日前まで何故か作成もできなかったのですが、今回は正常に終了したので次に進む。

再びXcodeを起動Apple IDを再設定。([Xcode]-[Preference]-[Accounts]でApple IDを選択してContinue、Apple IDとパスワードを入力してSign In)

f:id:photoblg:20171203230717j:plainf:id:photoblg:20171204001752j:plain
Apple IDの設定

該当のプロジェクトを開いてみると、Signingのところでエラーが。一度Apple IDを削除したためサインアウトしている状態のようです。「Sign In…」から再度ログイン。

f:id:photoblg:20171203233447j:plain:w400

Signingのところではエラーが消えました。この状態でiPhoneを接続して再ビルドしてみると・・・

再び「codesignは、キーチェーンに含まれるキー”XXXXX”へアクセスしようとしています。」というダイアログが出ます。macのパスワードを入力するも同じ状態。。もはや迷宮入りか?と思ったところで再度入力して「常に許可」をクリックすると無事通りました。

ドーンと実機でアプリが動いているところです。初歩の初歩なのでただ地図を表示しているだけですが、ちゃんと動作しました。

f:id:photoblg:20171204002050j:plain

※具体的に言うとiPhone側のプロファイルとデバイス管理からデベロッパAPPの許可も行いました。

最後に

なんだかよくわからないのですが、無事パスワードを通すことが出来ました。特定の条件でのみ発生する再現性の低いバグのようで調べても情報が出てこなく数日悩みました。。

この記事に書いていること以外にも何度も遠回りをしましたし、この手順が正しいかどうかはわかりませんが、同じ症状で困っている方は参考にしてみてください。

POSTED COMMENT

  1. 通りすがりの人 より:

    もう解決されたということで不要だとは思いますが・・!
    自分も同じエラーが出て悩みましたが、
    Macにログインするときのパスワードを入れて、「常に許可」を押すと処理が進みましたm( _ _)m

  2. photoblg より:

    通りすがりの人さま
    コメントありがとうございます。わたしの時はMacのパスワードで通らなかったのですよね・・・。
    Macのパスワードが通る場合もあるのですね!

  3. mitchy より:

    まるっきり同じ状況でしたので、すごく参考になりました。おかげで実機テストができるようになりました。情報ありがとうございます!

  4. photoblg より:

    mitchyさま
    コメントありがとうございます。稀におきる現象のようですね。解決されたようで良かったです!

  5. marimoko3 より:

    ありがとうございました!この記事を参考にあれこれやってたら直りました!!

  6. photoblg より:

    id:marimoko3さま
    コメントありがとうございます。わたしも結構ハマってたので・・・・解決されたようで良かったです!

  7. yuga より:

    こんにちは。全く同じ状況で悩んでいる者なのですが、上記の通りにやってみたところ、今度は実機でビルドするところまではできたのですが、今度は
    Warning: unable to build chain to self-signed root for signer “iPhone Developer: メールアドレス()”
    というエラーコードが出てしまい、アプリが開けなくなってしまいました。試しに違うAppleIDを作ってやってみても、以上のエラーしか出ません。一体どうしたらいいのでしょうか。何か解決策等ご存知でしたら教えていただきたいです。よろしくお願いします。

  8. photoblg より:

    yugaさま
    コメントありがとうございます。
    同一の症状になったことがないのですが、同じ症状で解決したというのは見かけました。
    >- Removing all account information from Xcode and quitting Xcode.
    >(Xcodeのアカウント情報を削除、終了)
    >
    >- Open Keychain Access and delete all my certificates, as well as all Apple root and intermediate certificates.
    >(キーチェーンアクセスとすべての自己証明書、Appleのルート証明書などを削除)
    >
    >- Manually resintall all Apple root and intermediate certificates.
    >(Appleのルート証明書、ほか再インストール)
    – Relaunch Xcode and open Preferences > Accounts. Sign in to dev account, and select Download Manual Profiles.
    (Xcodeを起動、Preferences > Accountで開発アカウントにログイン、プロファイルを選択)
    参照:https://forums.developer.apple.com/thread/86161
    こちらの対応で直るかどうかは保証できませんが自己責任でお願いします。

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA