Skip to content

Getting native binaries and executables entitled for notarization #30583

@jcagme

Description

@jcagme

As per the "Getting .NET Core ready for Mac OS Catalina" email we need to add a flag and entitlements to native binaries and executables to get them ready for notarization.

The steps needed are:

  1. Add a plist which sets CSFlags to 65536. This is used to preserve the codesign flag “-o runtime” when codesign is called on it. We’d need to do “ld -sectcreate _TEXT __info_plist plist_name.plist”. This is what the Edge team did.
  2. Add entitlements. “codesign –entitlements ”. Here we need two things:
    a. Define what entitlements are needed. This enumerates all the supported options. From what I saw I think we need something like: (to be verified by the product teams)
    <key>com.apple.security.cs.allow-jit</key>
    <true/>
    <key>com.apple.security.cs.allow-unsigned-executable-memory</key>
    <true/>
    <key>com.apple.security.cs.disable-library-validation</key>
    <true/>

b. Determine what binaries need to be entitled

ETA for this work is November when we release 3.1

fyi: @wfurt @danmosemsft

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions