شروع سریع Python

برنامه خط فرمان Python ایجاد کنید که درخواست‌هایی به Directory API ارسال می‌کند.

«شروع‌های سریع» توضیح می‌دهند که چگونه برنامه‌ای را که «میانای برنامه‌سازی کاربردی Google Workspace» را فراخوانی می‌کند راه‌اندازی و اجرا کنید. این شروع سریع از یک رویکرد اصالت‌سنجی ساده‌شده استفاده می‌کند که برای محیط آزمایشی مناسب است. برای محیط تولید، توصیه می‌کنیم قبل‌از انتخاب اعتبارنامه دسترسی مناسب برای برنامه‌تان، درباره اصالت‌سنجی و صدور مجوز اطلاعات کسب کنید.

این شروع سریع از کتابخانه‌های کارخواه میانای برنامه‌سازی کاربردی توصیه‌شده Google Workspace برای مدیریت برخی‌از جزئیات جریان اصالت‌سنجی و صدور مجوز استفاده می‌کند.

اهداف اصلی

  • محیط را راه‌اندازی کنید.
  • کتابخانه مشتری را نصب کنید.
  • نمونه را راه‌اندازی کنید.
  • نمونه را اجرا کنید.

پیش‌نیازها

برای اجرای این شروع سریع، به پیش‌نیازهای زیر نیاز دارید:

  • دامنه Google Workspace با دسترسی API فعال.
  • «حساب Google» در آن دامنه با امتیازهای سرپرست.

راه‌اندازی محیط

برای تکمیل این راهنمای شروع سریع، محیط خود را راه‌اندازی کنید.

فعال کردن میانای برنامه‌سازی کاربردی

قبل‌از استفاده از Google API، باید آن‌ها را در پروژه Google Cloud فعال کنید. می‌توانید یک یا چند میانای برنامه‌سازی کاربردی را در یک پروژه Google Cloud روشن کنید.

اگر از پروژه Google Cloud جدیدی برای تکمیل این شروع سریع استفاده می‌کنید، صفحه رضایت OAuth را پیکربندی کنید. اگر قبلاً این مرحله را برای پروژه Cloud خود تکمیل کرده‌اید، به بخش بعدی بروید.

  1. در «کنسول Google API»، به «منو» > پلاتفرم «احراز هویت Google» > نمانام‌سازی بروید.

    رفتن به نمانام‌سازی

  2. اگر قبلاً پلاتفرم «احراز هویت Google» را پیکربندی کرده‌اید، می‌توانید تنظیمات «صفحه موافقت OAuth» زیر را در نمانام‌سازی، مخاطب، و دسترسی به داده‌ها پیکربندی کنید. اگر پیامی با این مضمون دیدید که پلاتفرم Google Auth هنوز پیکربندی نشده است، روی شروع به کار کلیک کنید:
    1. در بخش اطلاعات برنامه، در قسمت نام برنامه، نامی برای برنامه وارد کنید.
    2. در ایمیل پشتیبانی کاربر، نشانی ایمیل پشتیبانی را انتخاب کنید تا کاربران بتوانند درصورت داشتن سؤال درباره رضایتشان با شما تماس بگیرند.
    3. روی بعدی کلیک کنید.
    4. در بخش مخاطبان، داخلی را انتخاب کنید.
    5. روی بعدی کلیک کنید.
    6. در بخش اطلاعات تماس، نشانی ایمیلی را وارد کنید که بتوانید ازطریق آن از هرگونه تغییر در پروژه‌تان مطلع شوید.
    7. روی بعدی کلیک کنید.
    8. در بخش پایان، خط‌مشی داده‌های کاربر سرویس‌های Google API را مرور کنید و اگر موافقید، با «خط‌مشی داده‌های کاربر سرویس‌های Google API» موافقم را انتخاب کنید.
    9. روی ادامه کلیک کنید.
    10. روی ایجاد کردن کلیک کنید.
  3. فعلاً می‌توانید از افزودن دامنه‌ها صرف‌نظر کنید. در آینده، وقتی برنامه‌ای برای استفاده در خارج از سازمان Google Workspace خود ایجاد می‌کنید، باید نوع کاربر را به خارجی تغییر دهید. سپس محدوده‌های مجوز موردنیاز برنامه‌تان را اضافه کنید. برای کسب اطلاعات بیشتر، راهنمای کامل پیکربندی موافقت OAuth را ببینید.

مجاز کردن اعتبارنامه‌ها برای برنامه رایانه‌ای

برای اصالت‌سنجی کاربران نهایی و دسترسی به داده‌های کاربر در برنامه‌تان، باید یک یا چند «شناسه کارخواه OAuth 2.0» ایجاد کنید. از شناسه کارخواه برای شناسایی یک برنامه واحد در سرورهای OAuth Google استفاده می‌شود. اگر برنامه‌تان در چند پلاتفرم اجرا می‌شود، باید برای هر پلاتفرم شناسه کارخواه جداگانه‌ای ایجاد کنید.
  1. در «کنسول Google Cloud»، به «منو» > پلاتفرم Google Auth > کارخواه‌ها بروید.

    رفتن به «مشتریان»

  2. روی ایجاد کارخواه کلیک کنید.
  3. روی نوع برنامه > برنامه رایانه کلیک کنید.
  4. در فیلد نام، نامی برای اطلاعات کاربری تایپ کنید. این نام فقط در Google Cloud Console نشان داده می‌شود.
  5. اختیاری: اگر برنامه شما عامل هوش مصنوعی است که ازطرف کاربران کنش انجام می‌دهد، استفاده از این کارخواه برای عامل هوش مصنوعی را انتخاب کنید. اگر برنامه شما از هر دو گردش کار نماینده هوش مصنوعی و ویژگی‌های کاربر استاندارد پشتیبانی می‌کند، برای هرکدام مشتریان OAuth جداگانه ایجاد کنید. بعداز ایجاد کردن کارخواه نمی‌توانید این تنظیم را تغییر دهید.
  6. روی ایجاد کردن کلیک کنید.

    اعتبارنامه جدید ایجادشده در بخش «شناسه‌های کارخواه OAuth 2.0» نشان داده می‌شود.

  7. فایل JSON بارگیری‌شده را به‌عنوان credentials.json ذخیره کنید و فایل را به دایرکتوری کاری‌تان منتقل کنید.

نصب کردن کتابخانه مشتری Google

  • کتابخانه کارخواه Google را برای Python نصب کنید:

    python3 -m pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
    

پیکربندی نمونه

  1. در فهرست راهنمای کاری‌تان، فایلی با نام quickstart.py ایجاد کنید.
  2. کد زیر را در quickstart.py اضافه کنید:

    admin_sdk/directory/quickstart.py
    import os.path
    
    from google.auth.transport.requests import Request
    from google.oauth2.credentials import Credentials
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # If modifying these scopes, delete the file token.json.
    SCOPES = ["https://www.googleapis.com/auth/admin.directory.user"]
    
    
    def main():
      """Shows basic usage of the Admin SDK Directory API.
      Prints the emails and names of the first 10 users in the domain.
      """
      creds = None
      # The file token.json stores the user's access and refresh tokens, and is
      # created automatically when the authorization flow completes for the first
      # time.
      if os.path.exists("token.json"):
        creds = Credentials.from_authorized_user_file("token.json", SCOPES)
      # If there are no (valid) credentials available, let the user log in.
      if not creds or not creds.valid:
        if creds and creds.expired and creds.refresh_token:
          creds.refresh(Request())
        else:
          flow = InstalledAppFlow.from_client_secrets_file(
              "credentials.json", SCOPES
          )
          creds = flow.run_local_server(port=0)
        # Save the credentials for the next run
        with open("token.json", "w") as token:
          token.write(creds.to_json())
    
      service = build("admin", "directory_v1", credentials=creds)
    
      # Call the Admin SDK Directory API
      print("Getting the first 10 users in the domain")
      results = (
          service.users()
          .list(customer="my_customer", maxResults=10, orderBy="email")
          .execute()
      )
      users = results.get("users", [])
    
      if not users:
        print("No users in the domain.")
      else:
        print("Users:")
        for user in users:
          print(f"{user['primaryEmail']} ({user['name']['fullName']})")
    
    
    if __name__ == "__main__":
      main()

اجرای نمونه

  1. در دایرکتوری کاری خود، نمونه را بسازید و اجرا کنید:

    python3 quickstart.py
    
  1. اولین‌باری که نمونه را اجرا می‌کنید، از شما می‌خواهد دسترسی را مجاز کنید:
    1. اگر ازقبل به سیستم «حساب Google» خود وارد نشده‌اید، وقتی از شما خواسته شد به سیستم وارد شوید. اگر به سیستم چند حساب وارد شده‌اید، یک حساب را برای استفاده در صدور مجوز انتخاب کنید.
    2. روی Accept (پذیرش) کلیک کنید.

    برنامه Python شما اجرا می‌شود و Directory API را فراخوانی می‌کند.

    اطلاعات مجوز در سیستم فایل ذخیره می‌شود، بنابراین دفعه بعد که کد نمونه را اجرا می‌کنید، از شما درخواست مجوز نمی‌شود.

مراحل بعدی