@@ -76,7 +76,30 @@ On the **General** tab, find and save:
7676These scopes allow read-only access to groups and users - no write access to
7777Okta is required.
7878
79- ## Step 6: Identify Your Okta Domain
79+ ## Step 6: Assign Admin Role
80+
81+ API Services applications require an admin role to access Okta APIs. Without
82+ this, API calls will fail with permission errors even if scopes are granted.
83+
84+ 1 . Go to the ** Admin roles** tab for your application
85+ 2 . Click ** Edit assignments**
86+ 3 . Select one of the following roles:
87+
88+ | Role | Access Level |
89+ | ---------------------| -----------------------------------------------|
90+ | ** Read Only Admin** | Read access to all resources (recommended) |
91+ | ** Group Admin** | Full access to groups only |
92+
93+ 4 . If using ** Group Admin** , optionally restrict to specific groups:
94+ - Under ** Edit constraints for Group Administrator** , select specific
95+ groups or group types the app can access
96+ 5 . Click ** Save changes**
97+
98+ > ** Note** : Read Only Admin is recommended for sync operations since it
99+ > provides sufficient access without write permissions. Group Admin is an
100+ > alternative if you need to limit the app's scope to group resources only.
101+
102+ ## Step 7: Identify Your Okta Domain
80103
81104Your Okta domain is the URL you use to access the admin console:
82105
@@ -85,7 +108,7 @@ Your Okta domain is the URL you use to access the admin console:
85108
86109Use the domain without ` https:// ` prefix for ` APP_OKTA_DOMAIN ` .
87110
88- ## Step 7 : Configure User Profile Field
111+ ## Step 8 : Configure User Profile Field
89112
90113The app needs to map Okta users to GitHub usernames. Determine which Okta user
91114profile field contains GitHub usernames:
@@ -111,7 +134,7 @@ profile field contains GitHub usernames:
111134
112135Then set ` APP_OKTA_GITHUB_USER_FIELD=githubUsername ` .
113136
114- ## Step 8 : Prepare Okta Groups
137+ ## Step 9 : Prepare Okta Groups
115138
116139Ensure your Okta groups follow a naming convention that can be matched by sync
117140rules:
@@ -129,7 +152,7 @@ Groups can be:
129152- Groups synced from Active Directory
130153- Groups from other identity providers
131154
132- ## Step 9 : Configure Environment Variables
155+ ## Step 10 : Configure Environment Variables
133156
134157``` bash
135158# Required Okta configuration
@@ -149,7 +172,7 @@ APP_OKTA_PRIVATE_KEY_PATH=/path/to/okta-private-key.pem
149172APP_OKTA_PRIVATE_KEY=arn:aws:ssm:us-east-1:123456789:parameter/github-bot/okta-key
150173```
151174
152- ## Step 10 : Configure Sync Rules
175+ ## Step 11 : Configure Sync Rules
153176
154177Define how Okta groups map to GitHub teams:
155178
0 commit comments