web-dev-qa-db-ja.com

macOS Mojave、Automator「Appleイベントをシステムイベントに送信する権限がありません。」

Mojaveに更新した後、以下のアラートで以前使用していたオートマトンサービスを使用できなくなりました。 enter image description here

  • [セキュリティとプライバシー]で、AppleScript Editorを既にチェックしました。

私のコードに何か問題がありますか、これは最新のmacOSの問題ですか?

スクリプト

on run {input, parameters}
set pathList to {}
repeat with itemNum from 1 to count of input
    tell application "System Events"
        copy POSIX path of (container of (item itemNum of input)) to end of pathList
    end tell
end repeat
return pathList
end run

enter image description here

enter image description here

31
Travelholics

これは間違いなくMojaveの新しいセキュリティフレームワークの一部です。 terminalで試す

osascript -e 'tell application "Finder"' -e 'set _b to bounds of window of desktop' -e 'end tell'

そして、あなたはmayを受け取ります:

36:42: execution error: Not authorized to send Apple events to Finder. (-1743)

最初の実行で起こることは、FinderがterminalがFinderにイベントを送信する許可を要求していることを通知するダイアログボックスを開くことです。許可すると、terminalSystem Preferences > Security & Privacy > Automationのオートメーションページに追加されます。

enter image description here

現時点で2つの問題があります。

  • スクリプティングアクションの許可をリクエストする実装はバグがあるようです。 Safariにイベントを送信する許可を要求する他のスクリプトを実行しましたが、Finderは許可を要求せず、単にエラーを返します。
  • 合理化された自動化では、何らかのタイプのメカニズムに権限を付与する必要がありますa Priori;例としては、AnsibleでAppleScriptを使用し、許可を事前にロードできない場合があります。

他の人は、これに関するより広範な情報を書いています:

これは、macOSの自動化機能に深刻な影響を与えるため、Mojaveが出荷される前に解決されることを願っています。

27
Joe

gitkを開くときに同じエラーが発生しました。

起動スクリプトのエラー:実行エラー:Appleイベントをシステムイベントに送信する権限がありません。 (-1743)


解決

Settings -> Security & Privacy -> Privacy -> Automation -> Privacy tabに移動し、System Eventsチェックボックスをオンにします。

enter image description here

16
Abdullah

AppleScript .appアプリケーションの実行中に同様のエラーが発生しました。次のエラーが表示されました。

Not authorized to send Apple events to Finder. (-1743)

回避策は、.scptまたは.applescriptソースコードからアプリケーションを再エクスポートすることです。これにより、新しい.appアプリケーションが生成され、私の場合は正常に実行されました。最初の起動には承認(およびその後のいくつかの起動)が必要であり、アプリケーションはSettings -> Security & Privacy -> Privacy -> Automationの下にエントリとして追加されました。

10
Daniel S.

これは私が問題を解決するためにしたことです。 [システム環境設定]> [セキュリティとプライバシー]> [アクセシビリティ(左側のオプション)]>(システムパスワードを入力)> [Automator](または有効にするアプリ)をクリックすると、TADAが機能します。

8
lrosal

以下の手順を使用して同じ問題を解決しました。 Plistを開き、以下のキーを追加します

<key>NSAppleEventsUsageDescription</key>
<string>Please give access to Export details to Outlook</string>

アプリケーションがスクリプトを初めて実行するときに許可または拒否する確認ポップアップが表示されます。 [許可]をクリックすると、スクリプトが実行されます。

7
Roshil K

UPDATE:最新のパブリックベータ版(2018年8月4日)に更新すると、問題が修正されました。これ以前は、Mojaveのすべてのパブリックベータ版で問題が続いていました。


元の返信:

Applescriptを使用する異なるAutomatorワークフロー(あなたのものとは異なる)で、私と他の友人の両方がこのまったく同じ問題を経験していることを知らせたいだけです。手動アクティベーション(Finder->サービス->クリックアイテム)とキーボードショートカットアクティベーションの両方で問題が発生しています。

さらに奇妙なことに、Automator内でテストする場合、ワークフローは美しく機能します。

フィードバックアシスタントを通じてバグレポートを提出しましたが、これを見た他の人にはあなたもそうすることをお勧めします!きしむホイールとすべて...

Automator-権限エラー。「アクション「AppleScriptの実行」でエラーが発生しました:「Appleイベントをシステムイベントに送信する権限がありません。」

Automator内で良好に機能するAutomatorワークフロー

5
Mr. Bubbles

このようにターミナルからリセットすると修正されました:

tccutilはAppleEventをリセットします。 tccutil reset SystemPolicyAllFiles

1
TruncatedCoDr

キーストロークでリマインダーアプリに現在の日付を挿入しようとしていました。推奨される「設定->セキュリティとプライバシー->プライバシー->アクセシビリティ-> Automator」を使用する代わりに、キーストロークコマンドが許可されるように、Automatorの代わりにリマインダーを追加する必要がありました。特定のアプリでのみアクションを許可するのは面倒ですが、それは事実のようです。

0
Dennis Happ

私の場合、私は行かなければなりませんでした:

設定とプライバシー>プライバシー>Full Disk Access(左側のパネル)およびadd Automator

また、他の回答が示唆したように、AutomatorをAccessibilityに追加しようとしましたが(最初はうまくいきませんでした)、おそらく両方の場所にAutomatorを追加する必要があります。

screenshot showing the new Full Disk Access option

0

Mojaveがリリースされてから数か月経ってもキーストロークを送信する際に問題が発生していました。奇妙なことに、修正方法はシステム環境設定-> セキュリティとプライバシー-> プライバシータブ->パスワードでロックを解除する-> Remove(マイナスボタン付き)アクセシビリティ行のアプリのリストからのAutomator。私のスクリプトがキーストロークを再度送信する前に削除する必要があるベータ版の実行から何かがあったのかもしれません。

Edit:システム環境設定を終了した後、再びアラートエラーが表示されました。 Automator.appをAccessibility行に再度追加すると、今のところこれが修正されたようです。

0
nteiss