LOCKED
ブログ一覧に戻る
SSO・IDaaSLOCKED MSO

OneLogin SAML設定ガイド【メタデータ取得から実装まで】

関連トピック: SAML認証の実装ガイド【仕様から設定まで完全解説】

OneLoginは、中堅企業から大企業まで広く採用されているクラウドベースのIdentity Platformです。本記事では、OneLoginコンソールでのSAML設定方法、メタデータ交換、API連携、SCIM対応の実装を詳しく解説します。

OneLoginの概要

OneLoginは、クラウドベースのUnified Access Management(UAM)プラットフォームであり、シングルサインオン、多要素認証、アクセス管理を統合的に提供します。

OneLogin(IdP)
  ├─ ユーザーディレクトリ(クラウドベース)
  ├─ 3000+アプリケーション統合
  ├─ API-first設計
  └─ SCIM/SAML/OIDC対応
RFPテンプレート(無料)

IDaaS導入RFPテンプレート

IDaaS導入の社内稟議に使えるRFPテンプレート。SSO、MFA、プロビジョニングなどの要件を網羅したフォーマットです。

無料でダウンロード

OneLoginコンソールでのSAML設定手順

ステップ1:OneLoginコンソールにログイン

OneLoginコンソールURL:https://{region}.onelogin.com/
ユーザー:Administrator
地域:US(デフォルト)、EU、CANADAより選択

ステップ2:アプリケーションカタログの確認

OneLoginは3000以上の事前統合アプリケーションテンプレートを提供しており、カスタムSAML設定も可能です。

【アプリケーション検索】
Admin → Applications → Find Applications

検索:「Salesforce」「SAP」等のアプリケーション名
↓
複数の統合オプションが表示される

ステップ3:カスタムSAML設定(Custom App)

事前統合テンプレートにないシステムの場合、カスタムSAML設定が必要です。

Admin → Applications → Add App
  ↓
「SAML」を検索、「Add」をクリック

3-1. アプリケーション情報を入力

【General Info】

- Display Name:「SAP ERP - Production」
- Category:Enterprise Applications

3-2. SAML Configuration タブをクリック

OneLoginが提供するSAML設定情報とアプリケーション側の情報を入力します。

【Issuer URL】
https://app.onelogin.com/saml/metadata/{app-id}

【SAML 2.0 Endpoint (HTTP)】
https://example.onelogin.com/trust/saml2/http-post/sso/{app-id}

【SAML 2.0 Endpoint (HTTP-Redirect)】
https://example.onelogin.com/trust/saml2/http-redirect/sso/{app-id}

【SLO Endpoint (HTTP)】
https://example.onelogin.com/trust/saml2/http-redirect/slo/{app-id}

3-3. アプリケーション設定(Application Details タブ)

アプリケーション側(SAP等)の設定情報をOneLoginに入力します。

【Recipient】
https://sap.company.local/acs

【ACS (Assertion Consumer Service) URL】
https://sap.company.local/saml/acs

【Audience (Entity ID)】
https://sap.company.local/metadata

【Name ID Format】
Email Address(推奨)

【NameID Include Encrypted】
No(通常)

【Signed Response】
Yes(署名済みレスポンス)

【Encrypted Assertion】
No(通常、暗号化は不要)

ステップ4:属性マッピング(Parameters タブ)

OneLoginユーザー属性からアプリケーション側のクレーム名へのマッピングを定義します。

【Attribute Mappings】

OneLogin属性 → アプリケーション属性

User Email → email
First Name → firstName
Last Name → lastName
Employee ID → employeeId
Department → department
Manager → manager

複数値属性(グループ)の設定

【Group Attribute】

Group Name: memberOf
Include in SAML assertion: Yes

フィルター:All groups(すべてのグループを送信)

SAMLResponse例:
<saml:Attribute Name="memberOf">
  <saml:AttributeValue>sales-team</saml:AttributeValue>
  <saml:AttributeValue>japan-office</saml:AttributeValue>
  <saml:AttributeValue>all-employees</saml:AttributeValue>
</saml:Attribute>

ステップ5:メタデータのダウンロード

メタデータXMLファイルをダウンロードし、アプリケーション側に提供または登録します。

【Metadata ダウンロード】

Admin → Applications → {App Name}
  → SAML Metadata section
  → 「Download」をクリック

ファイル形式:XML
内容:
- OneLogのエンティティID
- シングルサインオンエンドポイント
- ログアウトエンドポイント
- 署名用証明書(X.509)
- キーの取得方法

ステップ6:ユーザー・グループ割り当て

Admin → Applications → {App Name}
  → Users → 「Add User」
  → グループを検索・選択
  → 保存

グループベース割り当て

【Group Assignment】

Group: Sales Team
  ↓ All members automatically get access
  ↓
App-specific attribute:
  - Role: SALES_USER
  - Region: APAC

OneLogin APIとの統合

OneLoginはREST APIを提供しており、プログラマティックなユーザー管理が可能です。

認証(OAuth 2.0 Client Credentials)

# アクセストークン取得
curl -X POST https://api.onelogin.com/auth/oauth2/token \
  -H "Authorization: client_id:{client_id},client_secret:{client_secret}" \
  -d "grant_type=client_credentials"

レスポンス:
{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGc...",
  "token_type": "Bearer",
  "expires_in": 3600
}

ユーザー操作API

# ユーザー作成
curl -X POST https://api.onelogin.com/scim/v2/Users \
  -H "Authorization: Bearer {access_token}" \
  -H "Content-Type: application/scim+json" \
  -d '{
    "userName": "user@company.com",
    "emails": [{
      "value": "user@company.com",
      "primary": true
    }],
    "name": {
      "givenName": "John",
      "familyName": "Doe"
    }
  }'

# ユーザー一覧取得
curl -X GET https://api.onelogin.com/scim/v2/Users \
  -H "Authorization: Bearer {access_token}"

# ユーザー更新
curl -X PATCH https://api.onelogin.com/scim/v2/Users/{userId} \
  -H "Authorization: Bearer {access_token}" \
  -d '{
    "op": "replace",
    "path": "name.givenName",
    "value": "Jane"
  }'

# ユーザー削除
curl -X DELETE https://api.onelogin.com/scim/v2/Users/{userId} \
  -H "Authorization: Bearer {access_token}"

SCIMプロビジョニング

OneLoginはSCIM 2.0標準完全対応により、自動ユーザープロビジョニングを実現します。

SCIM有効化手順

Admin → Applications → {App Name}
  → Provisioning タブ
  → Enable SCIM provisioning:ON

SCIMエンドポイント

【OneLoginが提供するSCIMエンドポイント】

Base URL: https://api.onelogin.com/scim/v2

利用可能なエンドポイント:
- GET /Users:ユーザー一覧
- POST /Users:ユーザー作成
- GET /Users/{id}:ユーザー詳細
- PATCH /Users/{id}:ユーザー属性更新
- DELETE /Users/{id}:ユーザー削除
- GET /Groups:グループ一覧
- GET /Groups/{id}:グループ詳細
- PATCH /Groups/{id}:グループメンバー更新

自動同期フロー

Okta(他社IdP)等
  ↓ SCIM API
OneLogin
  ↓ SCIM API(逆方向同期も対応)
アプリケーション(Slack、Salesforce等)

両方向同期により、OneLogin が複数の IdP 間のハブとなる

セキュリティ機能:MFA・リスク認証

OneLoginは複数のMFA方式をネイティブサポートしています。

MFA方式一覧

【Multifactor Authentication Methods】

- OneLogin OTP(アプリ):TOTP標準準拠
- OneLogin SMS:SMS送信
- OneLogin Email:メール送信
- Google Authenticator:TOTP
- Duo Security:プッシュ通知・トークン
- YubiKey:ハードウェアキー
- ForgeRock Authenticator:モバイアプリ
- Windows Hello for Business:生体認証

リスクベース認証ルール設定

【Conditional Authentication Rules】

Rule 1: Impossible Travel
  Condition: Last login location != Current location AND
             Time between logins < 2 hours
  Action: Require MFA

Rule 2: Unusual Time
  Condition: Login time is not within business hours
  Action: Require MFA

Rule 3: IP Geolocation
  Condition: IP not in trusted country list
  Action: Block login or Require MFA

メタデータ交換ベストプラクティス

定期的なメタデータ更新

OneLogin側で証明書が更新される場合、アプリケーション側も新しいメタデータを取得・更新する必要があります。

【推奨プロセス】

1. 月1回のメタデータ確認スケジュール
2. 新しい証明書の有効期限を30日前に確認
3. アプリケーション側でメタデータURLをキャッシュしない
4. HTTPキャッシュヘッダー:Cache-Control: no-cache

大規模導入事例

グローバル金融機関(従業員 5,000名)

課題

  • 複数拠点(日本、シンガポール、ロンドン)で異なるIdP体系
  • レガシー基幹システムのSSO対応が必須
  • 規制要件(SOC 2、ISO 27001)への対応

実装内容

  1. グローバルOneLoginテナント統合:2ヶ月で全拠点を統一
  2. カスタムSAML設定:レガシーシステムの特殊な認証要件に対応
  3. SCIM自動プロビジョニング:HR System → OneLogin → 全SaaS への自動同期
  4. リスク認証ルール:不正アクセス防止のための自動MFA要求

成果

  • ユーザーオンボーディング時間:3日 → 2時間(98%削減)
  • パスワードリセット要求:月間200件 → 10件
  • セキュリティインシデント:ゼロ
  • コンプライアンス監査対応時間:80時間削減

LOCKED MSO との連携

OneLogin と LOCKED MSO を組み合わせることで、さらに高度なアクセス制御が実現されます。

ユーザー
  ↓
OneLogin([SAML認証](/article/mso/saml-authentication-implementation)・MFA)
  ↓
LOCKED MSO
  ├─ デバイスチェック(従業員の BYOD対応)
  ├─ ジオロケーション確認
  ├─ 異常ログイン検知
  └─ 条件付きアクセスルール
  ↓
アプリケーション

まとめ

OneLoginのSAML実装は、メタデータ交換から属性マッピング、SCIM自動プロビジョニングまで、業界標準に準拠した堅牢な設計になっています。グローバル企業のマルチテナント、マルチプロトコル要件にも対応可能です。

LOCKED MSO を組み合わせることで、OneLoginの強力な認証基盤の上に、さらに詳細なアクセス制御とセキュリティ検査を追加できます。


参考資料・外部リンク

関連記事

LOCKEDの詳細を見る

シングルサインオン・認証管理でお悩みなら、LOCKEDの無料デモをお試しください。

資料請求・デモ依頼はこちら →

商標について:本記事に記載されているOktaOneLoginAzure ADSalesforceSlack等の製品名・サービス名は、各社の商標または登録商標です。

免責事項:本記事の情報は執筆時点のものであり、各製品の最新の機能・料金・仕様については、各社の公式サイトをご確認ください。本記事の内容に基づく判断・行動について、当社は一切の責任を負いかねます。

LOCKED MSO

この課題、LOCKEDで解決できます

「IDaaS導入RFPテンプレート」など、検討に役立つ資料を無料でご用意しています

LOCKEDシリーズの詳細資料を無料でダウンロード

導入事例、機能詳細、他社比較など、検討に必要な情報をまとめた資料をご用意しています

まずは資料で詳細を確認

製品資料で機能・料金・導入事例をまとめてご確認いただけます

資料をダウンロード