How to make Github app connect after approval #42351
Replies: 20 comments 14 replies
-
Any suggestions on this? |
Beta Was this translation helpful? Give feedback.
-
I imagine this should be a fairly common scenario for GitHub App integration developers. Very interested in how to tackle this as well. |
Beta Was this translation helpful? Give feedback.
-
Apparently there's no solution yet. This is what support told me:
|
Beta Was this translation helpful? Give feedback.
-
Does anybody else have a work around for this? Right now we've got the "Request user authorization (OAuth) during installation" option enabled for our app and we make user go through the following:
This approach works but is horrible and error prone, there's lots of moving parts. How are others doing this? |
Beta Was this translation helpful? Give feedback.
-
According to https://docs.github.com/en/webhooks-and-events/webhooks/webhook-events-and-payloads#installation the application receives this webhook when the installation is completed. So after approval, it should receive a call with action=created. Can't you keep the application in "pending approval" state when the callback setup_action=request, and then be ready to handle the installation webhook once it is approved? |
Beta Was this translation helpful? Give feedback.
-
Any update on this? It's badly needed to allow only authenticated users to access a github-app enabled application. |
Beta Was this translation helpful? Give feedback.
-
@hpsin can you help us on this? It makes the app install process useless for most of our enterprise customers right now as the person requesting the install of the app never has permissions in GitHub to actually install it. |
Beta Was this translation helpful? Give feedback.
-
It seems to me the I've been exploring alternative ways of doing this, and I think I'm sadly going to be stuck with a manual work flow until this is resolved. |
Beta Was this translation helpful? Give feedback.
-
Is there any update on this? Interestingly I noticed a few cases where the original |
Beta Was this translation helpful? Give feedback.
-
Also looking for a solution for this issue. Any updates on this? |
Beta Was this translation helpful? Give feedback.
-
It seems the problem is still here. Would be great to have this |
Beta Was this translation helpful? Give feedback.
-
I've come up with a hacky workaround. On the initial callback with
On the callback with
A user can cancel a request and their is no callback or webhook from github for this, so if they re-request after canceling you could get duplicates in your DB unless you handle it... What happens if multiple users request? I don't know since I only have 2 users to test with 🤷♂️ |
Beta Was this translation helpful? Give feedback.
-
🕒 Discussion Activity Reminder 🕒 This Discussion has been labeled as dormant by an automated system for having no activity in the last 60 days. Please consider one the following actions: 1️⃣ Close as Out of Date: If the topic is no longer relevant, close the Discussion as 2️⃣ Provide More Information: Share additional details or context — or let the community know if you've found a solution on your own. 3️⃣ Mark a Reply as Answer: If your question has been answered by a reply, mark the most helpful reply as the solution. Note: This dormant notification will only apply to Discussions with the Thank you for helping bring this Discussion to a resolution! 💬 |
Beta Was this translation helpful? Give feedback.
-
Posting a message to keep this alive. Since it's open now for 2 years, I'm guessing that GitHub team has no intention to prioritize fixing this bug. We can close this issue if we don't get any new activity in the next few weeks. |
Beta Was this translation helpful? Give feedback.
-
@hpsin -> can you get this prioritized? lmao |
Beta Was this translation helpful? Give feedback.
-
Hey folks,
We have a GitHub app that can be installed on a repository. This works using the GitHub app authorization flow that returns back an
installation_id
that we use to associate a user account on our web app with their GitHub repository. In this case we get a callback to our url:/callback?setup_action=install&installation_id=<installation_id>
This typically works fine, but there are some scenarios where the authorization flow doesn't complete in a single step. In many GitHub orgs, it requires approval from an admin before the app can be installed. In these cases we don't immediately get the installation_id in the url but a request state:
/callback?setup_action=request
, and once the admin approves we get theinstallation_id
.In this case, since the approval step is completed by a different user, we don't have our web app session to associate the user with this
installation_id
. Is there a way to identify the user / account of the original request when the authorization is approved?Beta Was this translation helpful? Give feedback.
All reactions