azure-setup-guide
andersnygaard/ettsted2
EasyAuth(Google + Facebook) 및 CosmosDB를 활용한 Azure 배포 가이드를 조사하고 작성합니다. 이 스킬은 최신 문서와 스크린샷을 검색하여 .docs/azure-setup-guide.md에 최신 설치 가이드를 생성합니다.
...모든 것을 확장하십시오소개 azure-setup-guide
azure-setup-guide 스킬은 Azure에서 finans 애플리케이션을 배포하기 위한 포괄적이고 최신 정보를 담은 배포 가이드를 조사하고 생성하도록 설계되었습니다. 이 스킬은 Azure Portal, Google Cloud Console, Facebook Developer Portal 및 CosmosDB에서 최신 문서, 모범 사례 및 스크린샷을 적극적으로 검색하여 반영함으로써 배포 지침이 항상 최신 상태를 유지하도록 보장합니다. 이 스킬은 설정 가이드 생성을 자동화함으로써 Azure에 finans 앱을 배포하는 과정을 간소화하고, 개발자가 클라우드 환경의 최신 변경 사항을 놓치지 않도록 지원합니다.
이 스킬은 Azure App Service, Google 및 Facebook 로그인을 통한 인증을 위한 EasyAuth, NoSQL 데이터베이스 관리를 위한 Azure CosmosDB 등 다양한 Azure 구성 요소를 다룹니다. 또한 최신 Azure CLI 명령어 구문, Azure 포털의 메뉴 경로, Google 및 Facebook의 OAuth 자격 증명 구성 정보를 수집합니다. 조사 단계가 완료되면, 이 스킬은 설정 단계를 .docs/azure-setup-guide.md 마크다운 파일로 컴파일하며, 이 파일을 따라 앱을 설정하고 배포할 수 있습니다.
이 스킬은 finans 애플리케이션용 새 환경 설정, Azure UI 변경 사항을 반영한 배포 가이드 업데이트, 기존 설정 구성 확인, 단계별 배포 가이드를 통한 신규 개발자 온보딩 등 다양한 사용 사례에 이상적입니다.
자주 묻는 질문
이 스킬은 어떻게 사용하나요?
이 스킬을 사용하려면, Azure에 finans 앱을 배포하기 위한 현재 설정 절차를 조사하기 위해 스킬을 실행하기만 하면 됩니다. 스킬은 최신 문서를 검색한 다음, .docs/azure-setup-guide.md에 설정 가이드를 생성합니다.
이 스킬을 사용하려면 어떤 전제 조건이 필요한가요?
Contributor 액세스 권한이 있는 Azure 구독, 설치된 Azure CLI, Google Cloud Console 및 Facebook 개발자 계정, 그리고 설치된 Node.js 20.x LTS가 필요합니다.
이 스킬은 Azure 포털의 업데이트도 처리할 수 있나요?
예, 이 스킬은 Azure 포털 UI의 변경 사항을 추적하고 그에 따라 배포 가이드를 업데이트하도록 특별히 설계되었습니다.
이 스킬은 어떤 구성 요소를 구성하나요?
이 스킬은 Azure App Service, Google 및 Facebook 인증을 위한 EasyAuth, Google OAuth, Facebook 로그인, Azure CosmosDB를 구성합니다.
이 스킬을 다른 애플리케이션과 함께 사용할 수 있나요?
이 스킬은 finans 앱을 위해 설계되었지만, 유사한 Azure 구성 요소를 사용하는 다른 애플리케이션에도 적용할 수 있습니다. 단, 일부 단계는 수정해야 할 수도 있습니다.
Azure Setup Guide Skill
This skill researches and generates a comprehensive Azure deployment guide for the finans application. It actively searches for the latest documentation to ensure instructions are current.
Stack Components
- Azure App Service (Free F1 tier preferred)
- EasyAuth (Azure App Service Authentication)
- Google OAuth login
- Facebook Login
- Azure CosmosDB (NoSQL database)
Credentials Location
OAuth credentials are stored in backend/.env:
GOOGLE_CLIENT_ID/GOOGLE_CLIENT_SECRETFACEBOOK_APP_ID/FACEBOOK_APP_SECRETCOSMOS_DB_ENDPOINT/COSMOS_DB_KEY
Reference these when configuring EasyAuth instead of creating new credentials.
When to Use
Use this skill when:
- Setting up a new Azure environment for finans
- Updating deployment documentation after Azure Portal changes
- Verifying current setup steps against latest Azure UI
- Onboarding new developers who need deployment guidance
Workflow
Phase 1: Research Current Documentation
Search for the latest setup procedures:
Azure App Service Authentication (EasyAuth)
- Search: "Azure App Service authentication 2024 2025 configure Google Facebook"
- Search: "Azure EasyAuth setup guide latest"
- Look for Azure Portal UI screenshots and current menu paths
Google OAuth Configuration
- Search: "Google Cloud Console OAuth setup 2024 2025"
- Search: "Google OAuth web application redirect URI Azure"
- Verify current Google Cloud Console menu structure
Facebook Login Configuration
- Search: "Facebook Developer Portal app setup 2024 2025"
- Search: "Facebook Login OAuth redirect URI configuration"
- Verify current Facebook Developer Portal menu structure
Azure CosmosDB Setup
- Search: "Azure CosmosDB create database container 2024 2025"
- Search: "CosmosDB Node.js SDK connection setup"
- Verify current Portal paths and CLI commands
Azure CLI Commands
- Search: "az webapp auth update syntax 2024"
- Search: "az cosmosdb create CLI 2024"
- Verify command flags haven't changed
Phase 2: Compile Guide
After research, write the guide to .docs/azure-setup-guide.md with:
- Prerequisites section - Azure CLI, accounts needed
- Resource Group creation
- App Service Plan - Free F1 tier
- Web App creation
- CosmosDB setup - Account, database, containers (users, portfolios)
- Google OAuth setup - Step-by-step with current menu paths
- Facebook Login setup - Step-by-step with current menu paths
- EasyAuth configuration - CLI and Portal methods
- Environment variables - Connection strings, secrets
- Deployment steps - Build, package, deploy
- Testing section - Verify auth URLs work
- Troubleshooting - Common issues and fixes
- Cleanup commands - Delete resources when done
Phase 3: Verification
After writing the guide:
- Confirm all CLI commands use current syntax
- Verify Portal menu paths match latest Azure UI
- Include both CLI and Portal alternatives where possible
- Note any recent changes from previous guide versions
Base Template
Use this as the foundation, updating with researched information:
Finans App - Azure Deployment Guide
Stack: App Service + EasyAuth + Google/Facebook Login + CosmosDBTier: Free (F1) - suitable for development and testing
Prerequisites
- Azure CLI installed and logged in (
az login) - Azure subscription with Contributor access
- Google Cloud Console account
- Facebook Developer account
- Node.js 20.x LTS
Verify Azure login:
az account show --query "{Name:name, SubscriptionId:id}" -o tableStep 1: Create Resource Group
az group create --name finans-rg --location norwayeast
Step 2: Create App Service Plan (Free Tier)
az appservice plan create \ --name finans-plan \ --resource-group finans-rg \ --location norwayeast \ --sku F1 \ --is-linux
Free Tier Limits:
- 1 GB storage
- Shared compute
- No custom domains or SSL
- Good for development/testing
Step 3: Create Web App
az webapp create \ --name finans \ --resource-group finans-rg \ --plan finans-plan \ --runtime "NODE|20-lts"Get app URL:
az webapp show --name finans --resource-group finans-rg --query defaultHostName -o tsv
Step 4: Create CosmosDB Account
4.1 Create Account (Serverless - Cost Effective)
az cosmosdb create \ --name finans-cosmos \ --resource-group finans-rg \ --locations regionName=norwayeast \ --capabilities EnableServerless \ --default-consistency-level Session
4.2 Create Database
az cosmosdb sql database create \ --account-name finans-cosmos \ --resource-group finans-rg \ --name finans-db
4.3 Create Containers
Users container (partition key: /id):
az cosmosdb sql container create \ --account-name finans-cosmos \ --resource-group finans-rg \ --database-name finans-db \ --name users \ --partition-key-path /id
Portfolios container (partition key: /userId):
az cosmosdb sql container create \ --account-name finans-cosmos \ --resource-group finans-rg \ --database-name finans-db \ --name portfolios \ --partition-key-path /userId
4.4 Get Connection String
az cosmosdb keys list \ --name finans-cosmos \ --resource-group finans-rg \ --type connection-strings \ --query "connectionStrings[0].connectionString" \ -o tsvStep 5: Configure Google OAuth
[RESEARCH CURRENT STEPS - Google Cloud Console menu structure may have changed]
- Navigate to Google Cloud Console → APIs & Services → Credentials
- Create OAuth consent screen (External, app name: finans)
- Create OAuth 2.0 Client ID:
- Type: Web application
- Redirect URI:
https://finans.azurewebsites.net/.auth/login/google/callback
- Save Client ID and Client Secret
Step 6: Configure Facebook Login
[RESEARCH CURRENT STEPS - Facebook Developer Portal menu structure may have changed]
- Navigate to developers.facebook.com → My Apps → Create App
- Select app type: Consumer
- Add Facebook Login product
- Configure:
- Site URL:
https://finans.azurewebsites.net - Valid OAuth Redirect URI:
https://finans.azurewebsites.net/.auth/login/facebook/callback
- Site URL:
- Set Privacy Policy URL
- Switch app to Live mode
- Save App ID and App Secret
Step 7: Enable EasyAuth
CLI Method
# Enable authenticationaz webapp auth update \ --name finans \ --resource-group finans-rg \ --enabled true \ --unauthenticated-client-action RedirectToLoginPage \ --token-store true# Add Google provideraz webapp auth google update \ --name finans \ --resource-group finans-rg \ --client-id {GOOGLE_CLIENT_ID} \ --client-secret {GOOGLE_CLIENT_SECRET} \ --yes# Add Facebook provideraz webapp auth facebook update \ --name finans \ --resource-group finans-rg \ --app-id {FACEBOOK_APP_ID} \ --app-secret {FACEBOOK_APP_SECRET} \ --yes
Portal Method
[RESEARCH CURRENT PORTAL PATH - Azure Portal UI may have changed]
- Azure Portal → App Services → finans → Authentication
- Add identity provider → Google
- Add identity provider → Facebook
- Configure unauthenticated access
Step 8: Configure App Settings
az webapp config appsettings set \ --name finans \ --resource-group finans-rg \ --settings \ COSMOS_DB_ENDPOINT="https://finans-cosmos.documents.azure.com:443/" \ COSMOS_DB_KEY="{PRIMARY_KEY}" \ COSMOS_DB_DATABASE="finans-db" \ NODE_ENV="production"
Step 9: Deploy Application
Build & Package
pnpm --filter frontend buildpnpm --filter backend build
Deploy
az webapp deploy \ --name finans \ --resource-group finans-rg \ --src-path deploy.zip \ --type zip
Step 10: Verify Deployment
Test URLs:
- App:
https://finans.azurewebsites.net - Google login:
https://finans.azurewebsites.net/.auth/login/google - Facebook login:
https://finans.azurewebsites.net/.auth/login/facebook - User info:
https://finans.azurewebsites.net/.auth/me - Logout:
https://finans.azurewebsites.net/.auth/logout
Troubleshooting
Common Issues
"Reply URL does not match"
- Check redirect URI matches exactly including trailing slash
"/.auth/me returns null"
- User not logged in or session expired
- Check AppServiceAuthSession cookie
Facebook app not working
- Ensure app is in Live mode (not Development)
- Privacy Policy URL must be accessible
View Logs
az webapp log tail --name finans --resource-group finans-rg
Cleanup
Delete all resources:
az group delete --name finans-rg --yes --no-wait
Output Requirements
After completing research and compilation:
- Create
.docs/directory if needed - Write complete guide to
.docs/azure-setup-guide.md - Report any steps that couldn't be verified
- Note any significant changes from previous documentation
- Confirm file creation with path
Notes
- Always prefer free tier options where available
- Include both CLI and Portal methods
- Use norwayeast region for GDPR compliance
- Serverless CosmosDB for cost efficiency
azure-setup-guide 설치
스킬 파일을 다운로드하여 .claude/skills/ 디렉터리에 압축을 풀어주세요.
ZIP 다운로드저장소를 클론하고 스킬 파일을 프로젝트에 복사하세요.
git clone https://github.com/andersnygaard/ettsted2/blob/main/.claude/skills/azure-setup-guide/SKILL.md # Copy SKILL.md to your .claude/skills/ directory
복사





집
