iOS code signing as a company not as an individual - ios

I am working at a research center and they asked me how to sign code as a company (rather than as an individual developer).
I have been googling for a while but I haven't found out anything regarding how to do so. I have been looking through apple's documentation too but still nothing. Does anybody here knows how to proceed in this case?

You need to sign up your company for an Apple Developer account, separately from your personal one.
They don't make it clear (at least in the pages that I just scanned), but I believe the company version of the Apple Developer account allows multiple team members.
There's some more useful information at the Developer Account FAQ.

There's no difference when it comes to code-signing. You generate the key pair the same way, you generate the certificate signing request the same way, you create app IDs the same way, you create provisioning profiles the same way, you compile the code the same way.

Your Apple Developer Account needs to be setup as a company, rather than individual. Code signing has nothing to with wether or not your account is setup as a company or not.
When you setup your Developer Account, you need to input what you want to display as the seller name, and you are not able to change this once it is setup, and the process should explain that to you.
I also don't think there is a way to switch over to a company account if you have already setup your developer account as individual, but you can always call Developer Support to see if it can be changed over.

Related

Renew iOS Distribution Certificates

I need to renew my iOS Distribution certificate for my mobile app and want to hire a freelancer to do it for me.
I know, this needs to be done with the Apple Developer Account - however I do not wish to give him root access. Whats the best possible way to do it?
Appreciate any help! Thanks.
You don't have to give the hired developers a full access to your Apple Developer Account to allow them to develop an app for you and/or renew any kind of certificates in your account. Just ask the developer's email and add it in Users and Access section by assigning a proper role on the Apple Developer Website. In your case, you can assign the role of either App Manager or Developer to a hired freelancer, it depends on how much access you want to give them. You can read more about possible roles in here

Unable to grant access to Certificates, Identifiers & Profiles

I bought an apple developer account and I'm trying to add a user as admin and grant access to Certificates, Identifiers & Profiles. But the checkbox is disabled I'm unable to tick it.
I think you have created Apple Developer account as Individual.
To Add other user as Admin with (Certificate, Identifiers & Profiles) access you just need to change your Apple Developer account from Individual to Company / Organisation and then you will be able to grant above access to your added users.
TL;DR:
You need to enrol on the Apple developer program as an organization, and to do this,
you need to be legally registered as an organized, because
you need your "DUNS" number.
Organization account required
Your apple developer account must be an organization to have other developers added via App Store Connect to create their provisioning profiles. It doesn't cost more, it just requires more information / setup.
As per the apple documentation:
Note: If you’re enrolled as an individual and add users in App Store Connect, users receive access only to your content in App Store Connect and are not considered part of your team in the Apple Developer Program.
and
Management of users and roles is done in App Store Connect.
Therefore, you have to be an organization. This does not cost anything extra.
As everyone else, I found Kuldeep's answer useful, but wanted more official documentation.
Although another apple page under "Enrolling in the Apple Developer Program as an individual" says:
If you're an individual or sole proprietor/single-person business, follow these steps to enroll
Company registration required
I called the Apple support team, and the mentioned that they do migrations to Organization accounts for sole proprieters all the time.
You can "try" to find your organization on the DUNS lookup page with valid details. If it doesn't succeed in finding it, it can submit for you.
However, a few days after I submitted the form, I was not given a DUNS number. Instead, I got a reply saying no business exists for this organization. This concludes that you need a business registration. You can see the email at Applying for DUNS Number: 'Apple Tracking Number' and 'Purpose'.
After being on the phone with Apple support, I gave them some constructive feedback: we should have a "team" account, not just "Individual" and "Organization".
Same issue here,
Client add me as as Admin in Appstore, but they missed to give access for
Access to Certificates, Identifiers & Profiles
Once they give Admin access then need to give access for
Access to Certificates, Identifiers & Profiles
Or else they delete your account and add it again, that time give access for all.
The details about all the access and user roles are explained at https://developer.apple.com/support/roles/

Why can't I add a technical role?

I am trying to beta test my app, but for some reason I can't seem to find the technical role. I am logged in and am the admin and Legal role.
Technical has been replaced with App Manager.
If you look at user in iTunes Connect who has the Technical role it says:
Note: the Technical role will become App Manager. Please remove users from the Technical Role
Well, it might not be strictly about code, but you can't release your app via TestFlight until you get past this mystifying problem.
The problem is caused because Apple will not allow an Apple ID that is associated with a developer account to be used for TestFlight (except for the account owner themselves). In other words, because my Apple ID is associated with my developer account, none of my developer friends can invite that Apple ID to be a TestFlight user. I must instead create a new Apple ID and ask them to invite that one.
The worst part of this particular bit of nonsense is that you use the same mechanism to invite developers and other team mates to work in iTunesConnect with you, and for those roles a developer account is irrelevant. Only being a TestFlight user seems to be affected by whether or not you are using an Apple ID associated with a developer account.

Adding a developer to an Apple Developer account

I have an Apple Developer iOS Membership. I have hired a developer to write an iOS app for me. They said they don't have their own account so in order for us to test the app using ad-hoc provisioning we'll need to use my account. When I go to invite users into my account from the Member Center I am given 2 options to add this user as, 1) Admin, 2) Member. Is the correct way to give a developer access and which option should I give them? I want to give the least amount of privileges as possible. I don't want them to access any sensitive account information, just allow them to develop the app and allow for testing.
This is the overview of the roles but I am still not sure which is correct
https://developer.apple.com/support/roles/
It depends on what level of involvement you want to have with the project. In order to manage the full development life-cycle for an app you need to create provisioning files, generate certificates for distribution, generate App IDs ect. You can add you developer as a member but in that case many of these functions will have to be done by you as the admin. In the case of certificates (for distribution, push notifications etc) the 'member' can request them but they still need to be approved by an 'admin'.
So, if you want to give the least amount of privileges stick with the 'member option with the understanding that you will need to be involved periodically.
I guess Member is what you should go for.

Is there a way to verify identity of Apple developer when they sign up to our website?

We are a registered Apple affiliate and have a website with a community of iOS developers. Membership is supposed to be only for developers who have published an app to the App Store and we would like to have some way of checking this.
Currently, we ask the developer for the App ID of one of their published apps and then we use this information to find their Artist ID (i.e. developer ID) in our database. However, the user can just copy any app's ID from the iTunes website and sign up with it, even if he isn't really that app's developer.
We thought of one way but don't think it is allowed or possible: the developer specifies the email address used to register in the Apple Developer Program and we then call some API or other resource to verify that email address really is registered. If yes, we then complete the registration process through that email address. Is this possible?
Or is there another way to check if the user has a published app? We don't need a 100% foolproof way: just a minimally reliable approach. Even simply verifying that the user is a registered Apple developer would be okay.
I would investigate using the developer's certificate to sign something, proving that they are the controller of the private key. You would first need to verify terms of use, since I don't know if this use is permitted by Apple, but the cryptography should work fine as an authentication.
You have to be a developer to read the dev forums. Make a post to the dev forums with a code number and then ask the user for that code (post the link like: https://devforums.apple.com/message/799093). It would at least prove they have access to the forums (or to someone who does). I don't think there's a fool-proof way validate a user unless you're Apple.

Resources