Интеграция IG с OIDC и SAML: комплексное руководство

В сегодняшней взаимосвязанной цифровой среде интеграция решений управления идентификацией и доступом (IAM) с веб-приложениями имеет решающее значение для обеспечения безопасного и бесперебойного взаимодействия с пользователем. В этом сообщении блога мы рассмотрим интеграцию IG (Identity Gateway) с OIDC (OpenID Connect) и SAML (языком разметки утверждений безопасности), двумя широко используемыми протоколами IAM, предоставляя вам различные методы и примеры кода для достижения успешной интеграции.

Методы интеграции IG OIDC:

  1. Метод 1: использование фильтра OIDC IG

    • Пример кода:
      "routes": [
       {
           "name": "MyProtectedApp",
           "baseURI": "https://myapp.example.com",
           "handler": "ClientHandler",
           "handlerConfig": {
               "filters": [
                   {
                       "name": "OIDCFilter",
                       "config": {
                           "oidcConfig": "https://oidc-provider.example.com/.well-known/openid-configuration",
                           "clientId": "myAppClientId",
                           "clientSecret": "myAppClientSecret",
                           "scope": "openid profile",
                           "redirectURI": "https://myapp.example.com/callback"
                       }
                   }
               ]
           }
       }
      ]
  2. Метод 2: использование скриптового фильтра IG

    • Пример кода:
      "routes": [
       {
           "name": "MyProtectedApp",
           "baseURI": "https://myapp.example.com",
           "handler": "ClientHandler",
           "handlerConfig": {
               "filters": [
                   {
                       "name": "ScriptableFilter",
                       "type": "JavaScript",
                       "config": {
                           "source": "oidcFilter.js"
                       }
                   }
               ]
           }
       }
      ]

Методы интеграции IG SAML:

  1. Метод 1: использование фильтра SAMLv2 от IG

    • Пример кода:
      "routes": [
       {
           "name": "MyProtectedApp",
           "baseURI": "https://myapp.example.com",
           "handler": "ClientHandler",
           "handlerConfig": {
               "filters": [
                   {
                       "name": "SAML2Filter",
                       "config": {
                           "idpMetadataURL": "https://idp.example.com/metadata",
                           "spEntityID": "https://myapp.example.com",
                           "spPrivateKey": "path/to/private.key",
                           "spCert": "path/to/public.crt"
                       }
                   }
               ]
           }
       }
      ]
  2. Метод 2. Использование скриптового фильтра IG

    • Пример кода:
      "routes": [
       {
           "name": "MyProtectedApp",
           "baseURI": "https://myapp.example.com",
           "handler": "ClientHandler",
           "handlerConfig": {
               "filters": [
                   {
                       "name": "ScriptableFilter",
                       "type": "JavaScript",
                       "config": {
                           "source": "samlFilter.js"
                       }
                   }
               ]
           }
       }
      ]

Интеграция IG с OIDC и SAML обеспечивает мощный механизм защиты веб-приложений и управления идентификационными данными пользователей. В этой статье мы рассмотрели несколько методов интеграции, продемонстрировав, как использовать встроенные и скриптовые фильтры IG для достижения плавной интеграции с протоколами OIDC и SAML. Следуя этим методам и примерам кода, вы сможете повысить безопасность и удобство использования своих приложений, одновременно используя возможности IG.