기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Confluence에 대한 OAuth 2.0 인증 설정
OAuth 2.0 인증(OAUTH2)은 Atlassian OAuth 2.0 3레그(3LO) 앱으로 인증합니다. Atlassian 개발자 콘솔에 앱을 등록하고, 일회성 권한 부여 흐름을 완료하여 새로 고침 토큰을 얻고, 자격 증명을 저장합니다 AWS. 크롤링 시 Amazon Bedrock은 새로 고침 토큰을 사용하여 수명이 짧은 액세스 토큰을 자동으로 민트합니다.
중요
OAuth 2.0은 문서 수준 액세스 제어(ACLs 지원하지 않습니다. 사용자 권한별로 쿼리 결과를 필터링하려면 기본 인증을 사용합니다. Confluence에 대한 기본 인증 설정을(를) 참조하세요.
1단계: OAuth 2.0(3LO) 앱 등록
-
Atlassian 개발자 콘솔
에 로그인합니다. -
생성을 선택한 다음 OAuth 2.0 통합을 선택합니다.
-
앱의 이름(예:
bedrock-confluence-connector)을 입력하고 생성을 선택합니다. -
앱의 권한 페이지에서 Confluence API를 추가합니다. 다음과 같은 세분화된 범위(또는 앱이 사용하는 경우 이에 상응하는 클래식 범위)를 구성합니다.
read:content:confluenceread:content-details:confluenceread:space:confluenceread:space-details:confluenceread:user:confluenceread:attachment:confluenceread:page:confluence- 페이지 열거에 필요read:blogpost:confluence- 블로그 게시물을 크롤링하는 경우 필수read:custom-content:confluence- 워크스페이스에 사용자 지정 콘텐츠가 포함된 경우 필수
권한 부여 - 사용자 자격 증명 API 권한
offline_access에를 추가합니다.offline_access는 Atlassian이 새로 고침 토큰을 발행하도록 하는 원인입니다. -
권한 부여 페이지에서 콜백 URL을 3단계에서 권한 부여 코드를 캡처할 수 있는 URL로 설정합니다(예:
https://localhost:8080/callback). -
설정 페이지에서 클라이언트 ID와 보안 암호를 복사합니다. 및
confluenceAppKey입니다confluenceAppSecret.
2단계: 앱 권한 부여
브라우저에서 다음 URL을 열고 자리 표시자를 값으로 바꿉니다. 커넥터에 액세스해야 하는 Atlassian 사용자로 로그인합니다. 사용자는 크롤링하려는 Confluence 콘텐츠에 액세스할 수 있어야 합니다.
https://auth.atlassian.com/authorize? audience=api.atlassian.com& client_id=your-client-id& scope=read:content:confluence%20read:content-details:confluence%20read:space:confluence%20read:space-details:confluence%20read:user:confluence%20read:attachment:confluence%20read:page:confluence%20read:blogpost:confluence%20read:custom-content:confluence%20offline_access& redirect_uri=https://localhost:8080/callback& response_type=code& prompt=consent
동의 프롬프트를 승인합니다. Atlassian은 code 쿼리 파라미터를 사용하여 콜백 URL로 리디렉션합니다. 해당 권한 부여 코드를 복사합니다.
3단계: 코드를 토큰으로 교환
권한 부여 코드를 액세스 토큰과 새로 고침 토큰으로 교환합니다. 터미널에서 다음을 실행합니다.
curl -X POST https://auth.atlassian.com/oauth/token \ -H "Content-Type: application/json" \ -d '{ "grant_type": "authorization_code", "client_id": "your-client-id", "client_secret": "your-client-secret", "code": "authorization-code-from-step-2", "redirect_uri": "https://localhost:8080/callback" }'
응답에는 access_token 및가 포함됩니다refresh_token. 두 값을 모두 기록합니다. 새로 고침 토큰은 정기적으로 사용되는 한 만료되지 않습니다.
4단계: Secrets Manager 보안 암호 생성
다음 키-값 페어를 사용하여 보안 인증 정보를 AWS Secrets Manager 보안 암호에 저장합니다.
{ "confluenceAppKey": "your-client-id", "confluenceAppSecret": "your-client-secret", "confluenceAccessToken": "your-access-token", "confluenceRefreshToken": "your-refresh-token", "hostUrl": "https://your-instance.atlassian.net" }
AWS Command Line Interface다음을 사용하여 보안 암호를 생성합니다.
aws secretsmanager create-secret \ --namebedrock-confluence-oauth2-creds\ --secret-string file://secret.json
응답의 보안 암호 ARN을 기록합니다. 이를 데이터 소스 로 사용합니다secretArn.
5단계: 보안 암호를 업데이트할 수 있는 서비스 역할 권한 부여
Atlassian 액세스 토큰은 60분 후에 만료됩니다. Amazon Bedrock은 새로 고침 토큰을 사용하여 새 액세스 토큰을 민트하고 새 값을 동일한 보안 암호에 다시 씁니다. 지식 기반 서비스 역할의 권한 정책에 보안 암호에 secretsmanager:PutSecretValue를 추가합니다.
{ "Effect": "Allow", "Action": "secretsmanager:PutSecretValue", "Resource": "arn:aws:secretsmanager:region:account-id:secret:bedrock-confluence-oauth2-creds-*" }
이 권한이 없으면 커넥터가 교체된 액세스 토큰을 유지할 수 없으며 후속 동기화가 실패합니다.
다음 단계
보안 암호를 저장한 후가 로 authType 설정된 데이터 소스를 생성합니다OAUTH2. Confluence 데이터 소스 연결을(를) 참조하세요.