[AzureAD] Bookstack SSO

Hyun-Sung Kim·2025년 1월 6일

AzureAD

목록 보기
1/2
post-thumbnail

Azure Active Directory (Azure AD)를 사용해 SSO(Single Sign-On)를 구현하면 사용자가 여러 애플리케이션에 대해 한 번의 인증으로 접근할 수 있게 되어 보안 강화와 사용자 경험을 크게 개선할 수 있습니다.


SSO

AzureAD App 등록

.env

  • bookstack 환경 변수 편집

    vi /var/www/bookstack/.env

  • 아래와 같이 Azure AD 인증 관련 설정을 추가한다.

    	```
    	AZURE_APP_ID={19f6b543-5555-4444-9999-999999999} 
    	AZURE_APP_SECRET={F2222~mmmmmmm_Hxxxxxxxxxxxx.P} 
    	AZURE_TENANT={b1fd7989-5555-4444-9999-aaaaaaa4ec} 

    App_URL=https://bookstacktest.company.com


인증서

  • bookstack config 편집

    vi /etc/apache2/sites-available/bookstack.conf

    ```
    SSLEngine on  
    
    SSLCertificateFile  
    SSLCertificateKeyFile  
    SSLCertificateChainFile  
    SSLCACertificateFile 

  • SSL을 지원하는 모듈 설치

    a2enmod ssl

  • 환경 파일

    vi /var/www/bookstack/.env

아래와 같이 URL 값에 'https' 프로토콜 형식으로 써줘야 한다.


http to https Redirection

  • apache Rewirte 엔진

vi /etc/apache2/sites-available

```
<VirtualHost *:80>
    ServerName bookstack.company.com
    DocumentRoot /var/www.bookstack/public/

    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
</VirtualHost>
  • /login 으로 들어오는 요청에 대해서만 https로 변경
    	```
    	RewriteRule ^/login(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

최종 결과

아래와 같이 로그인 창에서, 기존 계정/패스워드 입력 창 이외에
Microsoft AzureAD 계정을 통해 SSO로 로그인할 수 있는 메뉴가 표시됩니다.


※ Auto Register

  • 효과
    - 사용자가 Azure 인증 옵션을 사용할 때 로그인 화면에서 사용자를 자동 등록
  • .env
    	```
    Azure_AUTO_REGISTER=true
profile
Cloud Engineer

0개의 댓글