Ana içeriğe geç

ONLYOFFICE SP ve Shibboleth IdP'yi yapılandırma

Giriş​

Single Sign-on (SSO), kullanıcıların yalnızca bir kez oturum açıp yeniden kimlik doğrulaması yapmadan birden fazla uygulamaya/hizmete erişmesine olanak tanıyan bir teknolojidir.

Bir web portalı birkaç büyük bağımsız bölüm (forum, sohbet, bloglar vb.) içeriyorsa kullanıcı bu hizmetlerden birinde kimlik doğrulaması yapabilir ve kimlik bilgilerini defalarca girmeden diğer tüm hizmetlere otomatik olarak erişebilir.

SSO her zaman iki uygulamanın birlikte çalışmasıyla sağlanır: Identity Provider ve Service Provider (bundan sonra "IdP" ve "SP" olarak anılacaktır). ONLYOFFICE SSO yalnızca SP'yi uygular. Birçok farklı sağlayıcı IdP olarak görev yapabilir, ancak bu makalede Shibboleth uygulaması ele alınmaktadır.

not

ONLYOFFICE Desktop Editors'ı ONLYOFFICE Workspace'inize bağlarken SSO kullanmak istiyorsanız Control Panel'de Private Rooms'u devre dışı bırakın.

ONLYOFFICE Workspace'i SSO kurulumuna hazırlama​

  1. Docker için ONLYOFFICE Workspace v. 11.0.0 veya SSO desteği olan daha yeni bir sürümü kurun.
  2. Bir alan adı ekleyin, örneğin myportal-address.com.
  3. Portalınızda Control Panel > HTTPS'e gidin ve trafik şifrelemesi için (portalınızda HTTPS'i etkinleştirmek üzere) letsencrypt sertifikasını oluşturup uygulayın.

Shibboleth IdP oluşturma​

Gereksinimler​

  • Shibboleth IdP'yi dağıtmak için temiz bir CentOS 7 ana makinesi gerekir.

  • Saat doğru ayarlanmalı ve IDP için ana makineye saat eşitleme hizmeti kurulmalıdır:

    timedatectl status
    yum install ntp
    systemctl enable ntpd.service
    ntpdate time.apple.com
  • Makineye unzip paketi kurulmalıdır:

    yum install unzip
  • Makineye Docker ve Docker Compose kurulmalıdır.

  • Makineyle bir alan adı ilişkilendirilmelidir (örneğin your-idp-domain.com)

Shibboleth IdP oluşturma​

Shibboleth IDP'yi oluşturmak, yapılandırmak ve başlatmak için install.sh betiğini indirip çalıştırın.

Betik aşağıdaki işlemleri yapar:

  • Shibboleth Idp imajlarını ve kapsayıcılarını oluşturmak için docker dosyalarını github'dan indirir,
  • yapılandırma dosyalarındaki varsayılan idptestbed.edu alan adını betik çalıştırılırken belirtilen alan adıyla değiştirir,
  • belirtilen ONLYOFFICE SP alan adı için SAML protokolü üzerinden erişim ekler,
  • ONLYOFFICE SP'nin kullanıcı bilgilerini Shibboleth IdP'den alabilmesi için gereken özellikleri belirtir (Attribute Mapping ayarı),
  • LDAP'ı oluşturur ve yapılandırır, verilecek kullanıcıları oluşturur,
  • ONLYOFFICE SP'den Shibboleth IDP'ye meta verilerin dinamik olarak yüklenmesini etkinleştirir,
  • uygunsa Shibboleth Single Logout'u (SLO) etkinleştirir.
  1. install.sh betiğini indirin:

    curl -L https://raw.githubusercontent.com/ONLYOFFICE/helpcenter-scripts/master/workspace/control-panel-sso-shibboleth/install.sh -o install.sh
  2. Betiği çalıştırılabilir yapın:

    chmod +x install.sh
  3. Parametreleri kendi değerlerinizle değiştirerek betiği çalıştırın:

    ./install.sh -id your-idp-domain.com -sd myportal-address.com --no_slo

    Betik parametreleri:

    • -id - Shibboleth IDP için geçerli makinenin alan adı.
    • -sd - ONLYOFFICE SP'nin dağıtıldığı alan adı.
    • --no_slo - Shibboleth IDP'de Single Logout'u devre dışı bırakır (isteğe bağlı parametre).
  4. Betiği çalıştırdıktan sonra Shibboleth IDP'nin başlamasını bekleyin.

  5. Shibboleth IDP'nin doğru başladığını doğrulamak için tarayıcınızda https://your-idp-domain.com/idp/shibboleth bağlantısını açın. Bir xml dosyası görüntülenmelidir.

  6. https://{your_idp_domain}/idp/shibboleth bağlantısını kopyalayın (örneğin https://your-idp-domain.com/idp/shibboleth) ve ONLYOFFICE portalına gidip yönetici olarak oturum açın. Control Panel > SSO sayfasını açın.

ONLYOFFICE SP'yi yapılandırma​

  1. ONLYOFFICE Control Panel'de Yönetici olarak oturum açtığınızdan emin olun ve sol kenar çubuğundaki PORTAL SETTINGS bölümünden SSO sekmesine tıklayın.

    not

    ONLYOFFICE portalında kuruluşunuz için yalnızca bir kurumsal Identity Provider kaydedebilirsiniz.

    How to configure Shibboleth IdP and ONLYOFFICE SP

  2. Enable Single Sign-on Authentication düğmesine tıklayarak SSO'yu etkinleştirin ve Shibboleth IdP bağlantısını URL to Idp Metadata XML alanına yapıştırın.

    How to configure Shibboleth IdP and ONLYOFFICE SP

  3. IdP meta verilerini yüklemek için yükleme düğmesine tıklayın. Shibboleth IdP, ONLYOFFICE SP Settings form alanlarını otomatik olarak dolduracaktır.

    install.sh betiğini çalıştırırken --no_slo parametresini belirterek SLO'yu devre dışı bıraktığımız için IdP Single Logout Endpoint URL alanı boş olacaktır.

  4. IdP meta verileri yüklendiğinde IdP Public certificates bölümüne iki sertifika eklenir. Ayrıca şu iletiyi içeren bir açılır pencere görüntülenir: 'Multiple IdP verification certificates are not supported. Please retain only the Primary certificate'.

    Listedeki ikinci sertifikayı silin ve yalnızca birincil sertifika olan ilk sertifikayı bırakın. İkinci sertifikayı kaldırmak için yanındaki Delete bağlantısını kullanın. Sertifika kaldırılmazsa ayarlar kaydedilemez.

  5. Custom login button caption alanına varsayılan metin (Single Sign-on) yerine istediğiniz metni girebilirsiniz. Bu metin, ONLYOFFICE kimlik doğrulama sayfasında Single Sign-on hizmetiyle portalda oturum açmak için kullanılan düğmede görüntülenir.

    How to configure Shibboleth IdP and ONLYOFFICE SP

  6. Şimdi SP Certificates bölümünde kendinden imzalı sertifikalar oluşturmanız veya başka sertifikalar eklemeniz gerekir.

    Önemli

    Use for listesinde signing and encrypt seçeneğini seçin. Shibboleth IdP, install.sh betiği tarafından verilerin dijital olarak imzalandığını ve şifrelendiğini doğrulayacak şekilde otomatik olarak yapılandırılır.

    How to configure Shibboleth IdP and ONLYOFFICE SP

    Hemen hemen aynı sonucu almanız gerekir:

    How to configure Shibboleth IdP and ONLYOFFICE SP

  7. Attribute Mapping bölümünde ONLYOFFICE İnsanlar modülündeki alanları Shibboleth IdP'den dönecek kullanıcı özellikleriyle eşleştirin.

    FieldAttribute
    First Nameurn:oid:2.5.4.42
    Last Nameurn:oid:2.5.4.4
    Emailurn:oid:0.9.2342.19200300.100.1.3
    Locationurn:oid:2.5.4.7
    Titleurn:oid:2.5.4.12
    Phoneurn:oid:0.9.2342.19200300.100.1.41

    How to configure Shibboleth IdP and ONLYOFFICE SP

    Advanced Settings bölümünde, varsayılan kimlik doğrulama sayfasını gizlemek ve otomatik olarak SSO hizmetine yönlendirmek için Hide auth page seçeneğini işaretleyebilirsiniz.

    Önemli

    Varsayılan kimlik doğrulama sayfasını geri yüklemeniz gerekirse (IDP sunucunuz arızalanırsa portala erişebilmek için) tarayıcı adres çubuğunda portalınızın alan adından sonra /Auth.aspx?skipssoredirect=true anahtarını ekleyebilirsiniz.

  8. Save düğmesine tıklayın.

  9. ONLYOFFICE SP Metadata bölümü açılmalıdır.

  10. Download SP Metadata XML düğmesine tıklayarak ayarlarımızın herkese açık erişilebilir olduğunu doğrulayın. XML dosyasının içeriği görüntülenmelidir.

    How to configure Shibboleth IdP and ONLYOFFICE SP

    Bu XML dosyası genellikle Shibboleth IdP'yi yapılandırmak için kullanılır. Ancak install.sh betiği DynamicHTTPMetadataProvider'ı etkinleştirdiği için bu adım gerekli değildir (Shibboleth IDP bu xml dosyasını oturum açma için yapılan ilk istekte indirir).

ONLYOFFICE SP yapılandırmasını Shibboleth IdP ile doğrulama​

install.sh betiği, ONLYOFFICE SP ile Shibboleth IdP'nin çalışmasını test etmek için dört test kullanıcısı oluşturur.

EmailUsernamePasswordComment
student1@{your_idp_domain}student1passwordStandart
student2@{your_idp_domain}student2passwordgivenName olmadan
student3@{your_idp_domain}student3passwordUmlaut'lu
staff1@{your_idp_domain}staff1passwordYalnızca zorunlu alanlar

SP tarafında ONLYOFFICE'te oturum açma​

  1. ONLYOFFICE kimlik doğrulama sayfasına gidin (örneğin https://myportal-address.com/Auth.aspx).

  2. Single sign-on düğmesine tıklayın (düğme başlığı, ONLYOFFICE SP'yi yapılandırırken kendi metninizi belirttiyseniz farklı olabilir). Düğme yoksa SSO etkinleştirilmemiş demektir.

    How to configure Shibboleth IdP and ONLYOFFICE SP

  3. Tüm SP ve IdP parametreleri doğru yapılandırılmışsa Shibboleth IdP oturum açma formuna yönlendirilirsiniz:

    How to configure Shibboleth IdP and ONLYOFFICE SP

  4. Shibboleth IdP hesabının kullanıcı adını ve parolasını girin (kullanıcı adı: student1, parola: password) ve Don't Remember Login onay kutusunu işaretleyin.

  5. Kimlik bilgileri doğruysa yeni bir pencere açılır. Accept düğmesine tıklayarak hizmetin bilgilerinize erişmesine izin verin.

    How to configure Shibboleth IdP and ONLYOFFICE SP

  6. Kimlik bilgileri doğruysa portal ana sayfasına yönlendirilirsiniz. Kullanıcı hesabı yoksa otomatik olarak oluşturulur veya IdP'de herhangi bir veri değiştiyse güncellenir.

    How to configure Shibboleth IdP and ONLYOFFICE SP

SSO kimlik doğrulamasıyla eklenen kullanıcıların profilleri​

SSO kimlik doğrulamasıyla oluşturulan kullanıcı profillerini düzenleme kısıtlıdır. IdP'den alınan kullanıcı profili alanları (yani First Name, Last Name, Email, Title ve Location) düzenlenemez. Bu alanları yalnızca IdP hesabınızdan düzenleyebilirsiniz.

Aşağıdaki şekil, bir SSO kullanıcısı için Actions menüsünü gösterir:

How to configure Shibboleth IdP and ONLYOFFICE SP

Aşağıdaki şekil, düzenlenmek üzere açılmış bir SSO kullanıcı profilini gösterir:

How to configure Shibboleth IdP and ONLYOFFICE SP

SSO kimlik doğrulamasıyla oluşturulan kullanıcılar, portal yöneticileri için kullanıcı listesinde SSO simgesiyle işaretlenir:

How to configure Shibboleth IdP and ONLYOFFICE SP

Shibboleth IdP'den oturumu kapatmak için (oturum açarken Don't Remember Login onay kutusunu işaretlemediyseniz) şuna benzeyen bağlantıya gidin: https://{shibboleth-idp-domain}/idp/profile/Logout