Okta での SAML と SCIM について
ID プロバイダー (IdP) である Okta を使う SAML SSO と SCIM を使用するように Organization を設定することで、GitHub と他の Web アプリケーションの Organization へのアクセスを 1 つの中央インターフェイスから制御できます。
Note
SAML シングル サインオンを使うには、organization が GitHub Enterprise Cloud を使っている必要があります。 GitHub Enterprise Cloud を無料で試す方法の詳細については、「GitHub Enterprise Cloud の試用版を設定する」を参照してください。
SAML SSO は、リポジトリや Issue、Pull Requestといった Organization のリソースに対するアクセスを制御し、保護します。 SCIM は、Okta で変更があった場合に GitHub の Organization へのメンバーアクセスを自動で追加、管理、削除します。 詳細については、「SAML シングルサインオンを使うアイデンティティおよびアクセス管理について」および「Organization の SCIM について」を参照してください。
SCIM を有効にすると、Okta で GitHub Enterprise Cloud アプリケーションを割り当てる任意のユーザが次のプロビジョニング機能を使えるようになります。
機能 | 説明 |
---|---|
新しいユーザのプッシュ | Okta で新しいユーザーを作成すると、そのユーザーは GitHub の Organization に参加するためのメールを受信します。 |
ユーザ無効化のプッシュ | Okta でユーザーを非アクティブ化すると、Okta はそのユーザーを GitHub の Organization から削除します。 |
プロフィール更新のプッシュ | Okta でユーザーのプロフィールを更新すると、Okta は GitHub の Organization にあるユーザー メンバーシップのメタデータを更新します。 |
ユーザの再アクティブ化 | Okta でユーザーを再度有効にすると、Okta はユーザーが GitHub の Organization に再度参加するための招待メールを送信します。 |
あるいは、EnterpriseでOktaを使うSAML SSOを設定することもできます。 Enterpriseアカウント用のSCIMは、Enterprise管理のユーザでのみ利用できます。 詳細については、「Okta を使用して Enterprise 向けの SAML シングル サインオンを設定する」および「Okta を使用した SCIM プロビジョニングの構成」を参照してください。
Okta で SAML を構成する
- Okta ダッシュボードで [アプリケーション] メニューを展開し、続いて [アプリケーション] をクリックします。
- [アプリ カタログの参照] をクリックします。
- "GitHub Enterprise Cloud - Organization" という名前のアプリケーションを検索します。
- [統合の追加] をクリックします。
- フォームに入力し、GitHub での組織の名前と、[Application Label] (アプリケーション ラベル) フィールドで一意の名前を指定します。
- Oktaでユーザにアプリケーションを割り当ててください。 詳細については、Okta ドキュメントの「Assign applications to users (ユーザーにアプリケーションを割り当てる)」を参照してください。
- アプリケーションの名前の下にある [サインオン] をクリックします。
- [サインオン方法] で [セットアップ手順の表示] をクリックします。
- SAML 2.0 の設定方法に関するガイドから、サインオン URL、発行者 URL、公開の証明書を使用して、GitHub での SAML SSO を有効化してテストします。 詳しくは、「Organization 向けの SAML シングルサインオンを有効化してテストする」を参照してください。
Okta で SCIM を使ってアクセスのプロビジョニングを設定する
組織で SCIM を使用するには、サードパーティ所有の OAuth app を使用する必要があります。 OAuth app では、特定の GitHub ユーザーによって承認される必要があり、その後は、そのユーザーに代わって動作します。 この OAuth app を最後に承認したユーザーが組織から離れるか、組織から削除された場合、SCIM は動作を停止します。 この問題を回避するために、SCIM を構成するための専用ユーザー アカウントを作成することをお勧めします。 このユーザー アカウントは組織の所有者である必要があり、ライセンスを使用します。
-
Organization のオーナーであり、理想的には SCIM 構成にのみ使われるアカウントを使用して、GitHub にサインインします。
-
Organization のアクティブな SAML セッションを作成するには、
https://github.com/orgs/ORGANIZATION-NAME/sso
に移動します。 詳しくは、「SAMLのシングルサインオンでの認証について」を参照してください。 -
Okta に移動します。
-
左側のサイドバーで、 [アプリケーション] ドロップダウンを使用し、 [アプリケーション] をクリックします。
-
アプリケーションのリストで、GitHub Enterprise Cloudを使うOrganizationのために作成したアプリケーションのラベルをクリックしてください。
-
アプリケーションの名前の下で [プロビジョニング] をクリックします。
-
[API 統合の構成] をクリックします。
-
[Enable API integration](API 統合を有効にする) を選択します。
Note
[グループのインポート] は、GitHub ではサポートされていません。 チェックボックスを選択または選択解除しても、構成には影響しません。
-
[GitHub Enterprise Cloud - Organization での認証] をクリックします。
-
Organization 名の右側にある [許可] をクリックします。
Note
Organization が表示されない場合は、OAuth app アクセス制限が organization で有効になっている可能性があります。 続行するには、組織の「OKTA SCIM 統合」アプリを承認する必要があります。 詳しくは、「Organization 用の OAuth アプリの承認」を参照してください。
-
[OktaOAN の承認] をクリックします。
-
保存をクリックします。
-
同期エラーを回避し、ユーザーが SAML と SCIM のリンク ID を有効にしていることを確認するには、組織のユーザーを監査することをお勧めします。 詳しくは、「組織の ID とアクセス管理のトラブルシューティング」を参照してください。
-
[アプリへのプロビジョニング] の右側にある [編集] をクリックします。
-
[ユーザーの作成] の右側にある [有効] を選びます。
-
[ユーザー属性の更新] の右側にある [有効] を選びます。
-
[ユーザーの非アクティブ化] の右側にある [有効] を選びます。
-
[保存] をクリックします。
参考資料
- 「Okta を使用して Enterprise 向けの SAML シングル サインオンを設定する」
- Okta ドキュメントの「Understanding SAML」 (SAML について)。
- Okta ドキュメントの「Understanding SCIM」 (SCIM について)。