메인 콘텐츠로 건너뛰기

MinIO

MinIO는 OpenID Connect (OIDC)-호환 제공자를 사용하여 외부 신원 관리를 지원합니다. 이 문서는 Casdoor를 MinIO를 지원하는 신원 제공자로 구성하는 방법에 대해 다룹니다.

단계 1: Casdoor & MinIO 배포

먼저, Casdoor를 배포하십시오.

Casdoor 공식 문서를 참조하여 서버 설치를 확인할 수 있습니다.

성공적인 배포 후에는 다음을 확인하십시오:

  • Casdoor 서버가 http://localhost:8000에서 실행 중입니다.
  • 선호하는 브라우저를 열고 http://localhost:7001을 방문하여 Casdoor의 로그인 페이지를 확인하십시오.
  • admin123을 입력하여 로그인 기능을 테스트하십시오.

다음으로, 이 단계를 따라 자신의 앱에서 Casdoor 기반 로그인 페이지를 빠르게 구현할 수 있습니다.

MinIO 서버를 배포하는 방법은 여기를 참조하고, mc라는 MinIO 클라이언트에 대해서는 여기를 참조하십시오.

단계 2: Casdoor 애플리케이션 구성

  1. 새로운 Casdoor 애플리케이션을 만들거나 기존의 것을 사용하십시오.

  2. 리디렉션 URL을 추가하십시오.Casdoor 애플리케이션 설정

  3. 원하는 제공자를 추가하고 필요한 설정을 제공하십시오.

    애플리케이션 설정 페이지에서 두 가지 값인 Client IDClient secret을 찾을 수 있습니다(위의 그림에서 보여지는 것처럼). 다음 단계에서 이 값들을 사용할 것입니다.

    선호하는 브라우저를 열고 http://CASDOOR_HOSTNAME/.well-known/openid-configuration을 방문하여 Casdoor의 OIDC 구성을 확인하십시오.

  4. 이 단계는 MinIO에 필요합니다. MinIO가 정책에 대해 JWT의 클레임 속성을 사용해야 하므로, Casdoor에서도 이를 구성해야 합니다. 현재, Casdoor는 MinIO의 정책을 구성하기 위한 우회책으로 tag를 사용합니다.

    MinIO 정책 설정

    지원되는 모든 정책은 여기에서 찾을 수 있습니다.

단계 3: MinIO 구성

다음 명령을 사용하여 MinIO 서버를 시작할 수 있습니다:

export MINIO_ROOT_USER=minio
export MINIO_ROOT_PASSWORD=minio123
minio server /mnt/export

--console-address 매개변수를 사용하여 주소와 포트를 구성할 수 있습니다.

다음으로, MinIO 클라이언트 mc를 사용하여 서비스 별칭을 추가합니다.

mc alias set myminio <Your console address> minio minio123

이제, MinIO의 OpenID Connect를 구성합니다. Casdoor의 경우, 명령은 다음과 같습니다:

mc admin config set myminio identity_openid config_url="http://CASDOOR_HOSTNAME/.well-known/openid-configuration" client_id=<client id> client_secret=<client secret> claim_name="tag"

더 자세한 매개변수에 대해서는 공식 문서를 참조할 수 있습니다.

성공적으로 설정한 후에는 MinIO 인스턴스를 다시 시작하십시오.

mc admin service restart myminio

단계 4: 데모를 시도해 보세요!

이제 브라우저에서 MinIO 콘솔을 열고 Login with SSO를 클릭합니다.

Casdoor 사용자 로그인 페이지로 리디렉션됩니다. 로그인에 성공하면, MinIO 페이지로 리디렉션되고 자동으로 로그인됩니다. 이제 접근할 수 있는 버킷과 객체를 볼 수 있어야 합니다.

주의

Casdoor의 프론트엔드와 백엔드를 다른 포트에 배포하는 경우, 리디렉션되는 로그인 페이지는 백엔드 포트에 있을 것이며 404 not found가 표시됩니다. 포트를 프론트엔드 포트로 변경할 수 있습니다. 그런 다음 Casdoor 로그인 페이지에 성공적으로 접근할 수 있습니다.