Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
cloudfoundry_uaa — CVE-2016-4468 | Kitploit
उपकरण/GitHubGitHub/shanika04/cloudfoundry_uaa
प्रमाणीकरण और प्राधिकरणक्लाउड इन्फ्रास्ट्रक्चर सुरक्षाक्लाउड सुरक्षाDevSecOpsपहचान और एक्सेस प्रबंधन (IAM)API सुरक्षा
GitHubshanika04/cloudfoundry_uaa

cloudfoundry_uaa

CVE-2016-4468

रिपॉजिटरी देखें
5 साल पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
# CloudFoundry उपयोगकर्ता खाता और प्रमाणीकरण (UAA) सर्वर

Build Status Coverage Status

UAA एक मल्टी-टेनेंट पहचान प्रबंधन सेवा है, जो Cloud Foundry में उपयोग होती है, लेकिन यह एक स्टैंड-अलोन OAuth2 सर्वर के रूप में भी उपलब्ध है। इसकी प्राथमिक भूमिका OAuth2 प्रदाता के रूप में है, जो क्लाइंट अनुप्रयोगों के लिए टोकन जारी करती है, जब वे Cloud Foundry उपयोगकर्ताओं की ओर से कार्य करते हैं। यह उपयोगकर्ताओं को उनके Cloud Foundry क्रेडेंशियल्स के साथ प्रमाणित भी कर सकता है, और उन क्रेडेंशियल्स (या अन्य) का उपयोग करके SSO सेवा के रूप में कार्य कर सकता है। इसमें उपयोगकर्ता खातों के प्रबंधन और OAuth2 क्लाइंट्स को पंजीकृत करने के लिए एंडपॉइंट्स के साथ-साथ विभिन्न अन्य प्रबंधन कार्य भी हैं।

निर्देशांक

  • टोकन: टोकन, स्कोप और अधिकारियों पर एक नोट
  • तकनीकी फोरम: cf-dev मेलिंग सूची
  • दस्तावेज़: docs/
  • API दस्तावेज़ीकरण: UAA-APIs.rst
  • विनिर्देश: OAuth 2 प्राधिकरण ढांचा
  • LDAP: UAA LDAP एकीकरण

त्वरित प्रारंभ

आवश्यकताएँ:

  • Java 8

यदि यह काम करता है, तो आपका काम बन गया है:

root@kitploit:~
$ git clone git://github.com/cloudfoundry/uaa.git
$ cd uaa
$ ./gradlew run

सभी ऐप्स एक साथ काम करते हैं, और उसी पोर्ट (8080) पर चलते हैं: /uaa, /app और /api।

UAA uaa.log नामक एक फ़ाइल में लॉग करेगा, जिसे निम्नलिखित कमांड का उपयोग करके पाया जा सकता है:-

root@kitploit:~
$ sudo find / -name uaa.log

जो आपको कुछ इस प्रकार के पथ के अंतर्गत मिलना चाहिए:-

root@kitploit:~
/private/var/folders/7v/518b18d97_3f4c8fzxphy6f8zcm51c/T/cargo/conf/logs/

Cloud Foundry पर तैनात करें

आप ऐप को बना सकते हैं और उसे Cloud Foundry पर पुश भी कर सकते हैं, जैसे: हमारा अनुशंसित तरीका मैनिफेस्ट फ़ाइल का उपयोग करना है, लेकिन आप सब कुछ कमांड लाइन पर भी कर सकते हैं।

root@kitploit:~
$ ./gradlew :cloudfoundry-identity-uaa:war
$ cf push myuaa --no-start -m 512M -p uaa/build/libs/cloudfoundry-identity-uaa-2.3.2-SNAPSHOT.war 
$ cf set-env myuaa SPRING_PROFILES_ACTIVE default,hsqldb
$ cf set-env myuaa UAA_URL http://myuaa.<domain>
$ cf set-env myuaa LOGIN_URL http://myuaa.<domain>
$ cf set-env myuaa JBP_CONFIG_SPRING_AUTO_RECONFIGURATION '[enabled: false]'
$ cf set-env myuaa JBP_CONFIG_TOMCAT '{tomcat: { version: 7.0.+ }}'
$ cf start myuaa

उपरोक्त चरणों में, बदलें:

  • myuaa को एक अद्वितीय एप्लिकेशन नाम से
  • 2.3.2-SNAPSHOT को आपके बिल्ड से उपयुक्त संस्करण लेबल से
  • <domain> यह आपका ऐप डोमेन है। हम भविष्य में इसे सिस्टम पर्यावरण से पार्स करेंगे।
  • आप एक कॉन्फ़िगरेशन मैनिफेस्ट भी प्रदान कर सकते हैं जहाँ पर्यावरण चर UAA_CONFIG_YAML में पूर्ण कॉन्फ़िगरेशन yaml होता है।

स्थानीय सर्वर पर कमांड लाइन उपयोग का डेमो

पहले UAA सर्वर को ऊपर बताए अनुसार चलाएँ:

root@kitploit:~
$ ./gradlew run

फिर एक और टर्मिनल खोलें और प्रोजेक्ट की आधार निर्देशिका से, लॉगिन एंडपॉइंट से सिस्टम के बारे में बताने के लिए कहें:

root@kitploit:~
$ curl -H "Accept: application/json" localhost:8080/uaa/login
{
  "timestamp":"2012-03-28T18:25:49+0100",
  "commit_id":"111274e",
  "prompts":{"username":["text","Username"],
    "password":["password","Password"]
  }
}

फिर आप UAA रूबी जेम से लॉगिन करने का प्रयास कर सकते हैं। सुनिश्चित करें कि आपके पास रूबी 1.9 है, फिर

root@kitploit:~
$ gem install cf-uaac
$ uaac target http://localhost:8080/uaa
$ uaac token get marissa koala

(या प्रॉम्प्ट के लिए उपयोगकर्ता नाम / पासवर्ड छोड़ दें)।

यह प्रमाणित करता है और OAuth2 इम्प्लिसिट ग्रांट का उपयोग करके सर्वर से एक एक्सेस टोकन प्राप्त करता है, जो CF जैसे क्लाइंट के लिए इच्छित दृष्टिकोण के समान है। टोकन ~/.uaac.yml में संग्रहीत होता है, इसलिए उस फ़ाइल में जाकर अपने cf लक्ष्य के लिए एक्सेस टोकन निकालें (या ऊपर दिए गए लॉगिन कमांड लाइन पर --verbose का उपयोग करें ताकि यह आपके कंसोल पर लॉग होता दिखे)।

फिर आप एक रिसोर्स सर्वर के रूप में लॉगिन कर सकते हैं और टोकन विवरण प्राप्त कर सकते हैं:

root@kitploit:~
$ uaac target http://localhost:8080/uaa
$ uaac token decode

आपको अपना उपयोगकर्ता नाम और मूल टोकन ग्रांट का क्लाइंट id stdout पर देखना चाहिए, उदाहरण के लिए:

root@kitploit:~
  exp: 1355348409
  user_name: marissa
  scope: cloud_controller.read openid password.write scim.userids tokens.read tokens.write
  email: [email protected]
  aud: scim tokens openid cloud_controller password
  jti: ea2fac72-3f51-4c8f-a7a6-5ffc117af542
  user_id: ba14fea0-9d87-4f0c-b59e-32aaa8eb1434
  client_id: cf

डिफ़ॉल्ट MySQL और PostgreSQL सेटिंग्स के विरुद्ध स्थानीय सिस्टम चलाना (और Flyway माइग्रेशन स्क्रिप्ट जानकारी)

root@kitploit:~
$ ./gradlew -Dspring.profiles.active=default,mysql run

यह कमांड मान लेगा कि एक MySQL डेटाबेस डिफ़ॉल्ट एक्सेस सेटिंग्स के साथ उपलब्ध है और निम्नलिखित JDBC सेटिंग्स पर प्रतिक्रिया देगा।

root@kitploit:~
driver = 'org.mariadb.jdbc.Driver'
url = 'jdbc:mysql://localhost:3306/uaa'
user = 'root'
password = 'changeme'
schemas = ['uaa']

इसी तरह, यदि आप निम्न कमांड निष्पादित करते हैं

root@kitploit:~
$ ./gradlew -Dspring.profiles.active=default,postgresql run

यह निम्न रूप में परिभाषित सेटिंग्स का उपयोग करता है

root@kitploit:~
driver = 'org.postgresql.Driver'
url = 'jdbc:postgresql:uaa'
user = 'root'
password = 'changeme'

ये सेटिंग्स Gradle एकीकरण के लिए दो स्थानों पर दोहराई गई हैं। वे Spring XML कॉन्फ़िगरेशन फ़ाइलों में डिफ़ॉल्ट के रूप में परिभाषित हैं, और वे मुख्य build.gradle फ़ाइल में भी परिभाषित हैं। इसका कारण वे Gradle बिल्ड फ़ाइल में हैं, यह है कि Gradle UAA एप्लिकेशन लॉन्च करने से पहले हमेशा flywayClean कार्य निष्पादित करता है। यदि आप DB को साफ नहीं करना चाहते हैं, तो आप निम्न चर को परिभाषित कर सकते हैं

root@kitploit:~
-Dflyway.clean=false

यह ग्रैडल स्क्रिप्ट में flywayClean कार्य को अक्षम कर देता है। flywayClean को अक्षम करने का दूसरा तरीका कमांड लाइन पर स्प्रिंग प्रोफाइल निर्दिष्ट न करना है, बल्कि प्रोफाइल को uaa.yml और login.yml फ़ाइलों में सेट करना है।

run.pivotal.io पर कमांड लाइन उपयोग का डेमो

वही कमांड लाइन उदाहरण run.pivotal.io पर चल रहे UAA के विरुद्ध काम करना चाहिए (टोकन डिकोडिंग भाग को छोड़कर, क्योंकि आपके पास क्लाइंट सीक्रेट नहीं होगा)। इस मामले में, स्थानीय uaa सर्वर चलाने की कोई आवश्यकता नहीं है, इसलिए बस बाहरी लॉगिन एंडपॉइंट से सिस्टम के बारे में बताने के लिए कहें:

root@kitploit:~
$ curl -H "Accept: application/json" login.run.pivotal.io
{
  "prompts":{"username":["text","Username"],
    "password":["password","Password"]
  }
}

फिर आप UAA रूबी जेम से लॉगिन करने का प्रयास कर सकते हैं। सुनिश्चित करें कि आपके पास रूबी 1.9 है, फिर

root@kitploit:~
$ gem install cf-uaac
$ uaac target uaa.run.pivotal.io
$ uaac token get [yourusername] [yourpassword]

(या प्रॉम्प्ट के लिए उपयोगकर्ता नाम / पासवर्ड छोड़ दें)।

यह प्रमाणित करता है और OAuth2 इम्प्लिसिट ग्रांट का उपयोग करके सर्वर से एक एक्सेस टोकन प्राप्त करता है, वही जो CF जैसे क्लाइंट द्वारा उपयोग किया जाता है।

एकीकरण परीक्षण

आप एकीकरण परीक्षण इस प्रकार चला सकते हैं

root@kitploit:~
$ ./gradlew integrationTest

यह स्थानीय Apache Tomcat इंस्टेंस में चल रहे uaa सर्वर के विरुद्ध एकीकरण परीक्षण चलाएगा, उदाहरण के लिए सेवा URL http://localhost:8080/uaa (डिफ़ॉल्ट रूप से) पर सेट है।

आप CLOUD_FOUNDRY_CONFIG_PATH को uaa.yml पकड़ने के लिए इंगित कर सकते हैं जहाँ URLs बदले जा सकते हैं और (यदि उपयुक्त हो) सर्वर चलाने के लिए कॉन्टेक्स्ट रूट सेट कर सकते हैं (इसके बारे में अधिक जानकारी के लिए नीचे देखें)।

कस्टम YAML कॉन्फ़िगरेशन

रनटाइम पैरामीटर संशोधित करने के लिए आप एक uaa.yml प्रदान कर सकते हैं, जैसे:

root@kitploit:~
$ cat > /tmp/config/uaa.yml
uaa:
  host: uaa.appcloud21.dev.mozycloud
  test:
    username: [email protected] # defaults to [email protected]
    password: changeme
    email: [email protected]

फिर uaa/uaa से

root@kitploit:~
$ CLOUD_FOUNDRY_CONFIG_PATH=/tmp/config ./gradlew test

वेबऐप शुरू होने पर निम्नलिखित स्थानों पर Yaml सामग्री की तलाश करता है (बाद की प्रविष्टियाँ पहले वाली को ओवरराइड करती हैं)।

root@kitploit:~
classpath:uaa.yml
file:${CLOUD_FOUNDRY_CONFIG_PATH}/uaa.yml
file:${UAA_CONFIG_FILE}
${UAA_CONFIG_URL}
System.getEnv('UAA_CONFIG_YAML') -> environment variable, if set must contain valid Yaml

उदाहरण के लिए, UAA को Cloud Foundry एप्लिकेशन के रूप में तैनात करने के लिए, आप एक एप्लिकेशन मैनिफेस्ट प्रदान कर सकते हैं जैसे

root@kitploit:~
---
  applications:
  - name: standalone-uaa-cf-war
    memory: 512M
    instances: 1
    host: standalone-uaa
    path: cloudfoundry-identity-uaa-3.0.0-SNAPSHOT.war
    env:
      JBP_CONFIG_SPRING_AUTO_RECONFIGURATION: '[enabled: false]'
      JBP_CONFIG_TOMCAT: '{tomcat: { version: 7.0.+ }}'
      SPRING_PROFILES_ACTIVE: hsqldb,default
      UAA_CONFIG_YAML: |
        uaa.url: http://standalone-uaa.cfapps.io
        login.url: http://standalone-uaa.cfapps.io
        smtp:
          host: mail.server.host
          port: 3535

या वैकल्पिक रूप से, set-env कमांड का उपयोग करके yaml कॉन्फ़िगरेशन को पर्यावरण चर के लिए एक स्ट्रिंग के रूप में सेट करें

root@kitploit:~
cf set-env sample-uaa-cf-war UAA_CONFIG_YAML '{ uaa.url: http://standalone-uaa.myapp.com, login.url: http://standalone-uaa.myapp.com, smtp: { host: mail.server.host, port: 3535 } }'

इसके अलावा, UAA द्वारा पढ़ी जाने वाली कोई भी सरल प्रकार की प्रॉपर्टी पूरी तरह से विस्तारित होकर सिस्टम पर्यावरण चर के रूप में भी पढ़ी जा सकती है। ध्यान दें कि uaa.url को UAA_URL नामक पर्यावरण चर में कैसे परिवर्तित किया जा सकता है

root@kitploit:~
---
  applications:
  - name: standalone-uaa-cf-war
    memory: 512M
    instances: 1
    host: standalone-uaa
    path: cloudfoundry-identity-uaa-3.0.0-SNAPSHOT.war
    env:
      JBP_CONFIG_SPRING_AUTO_RECONFIGURATION: '[enabled: false]'
      JBP_CONFIG_TOMCAT: '{tomcat: { version: 7.0.+ }}'
      SPRING_PROFILES_ACTIVE: hsqldb,default
      UAA_URL: http://standalone-uaa.cfapps.io
      LOGIN_URL: http://standalone-uaa.cfapps.io
      UAA_CONFIG_YAML: |
        smtp:
          host: mail.server.host
          port: 3535

PostgreSQL या MySQL के साथ परीक्षण के लिए Gradle का उपयोग करना

डिफ़ॉल्ट uaa इकाई परीक्षण (./gradlew test integrationTest) hsqldb का उपयोग करते हैं।

PostgreSQL का उपयोग करके इकाई परीक्षण चलाने के लिए:

root@kitploit:~
$ ./gradlew -Dspring.profiles.active=default,postgresql test integrationTest

वैकल्पिक रूप से, Spring प्रोफ़ाइल को uaa.yml फ़ाइल में कॉन्फ़िगर किया जा सकता है

root@kitploit:~
$ echo "spring_profiles: default,postgresql" > src/main/resources/uaa.yml

MySQL का उपयोग करके इकाई परीक्षण चलाने के लिए:

root@kitploit:~
$ ./gradlew -Dspring.profiles.active=default,mysql test integrationTest

common और scim मॉड्यूल के लिए डेटाबेस कॉन्फ़िगरेशन Spring XML कॉन्फ़िगरेशन फ़ाइलों में डिफ़ॉल्ट है। आप उन्हें uaa.yml में कॉन्फ़िगर करके बदल सकते हैं।

डिफ़ॉल्ट निम्न हैं

root@kitploit:~
PostgreSQL: User: root Password: changeme Database: uaa Host: localhost Port: 5432
MySQL:      User: root Password: changeme Database: uaa Host: localhost Port: 3306

इन्वेंटरी

यहाँ वास्तव में कई प्रोजेक्ट हैं, मुख्य uaa सर्वर एप्लिकेशन, एक क्लाइंट लाइब्रेरी और कुछ नमूने:

  1. uaa आसान परिनियोजन के लिए एक WAR प्रोजेक्ट

  2. server एक JAR प्रोजेक्ट जिसमें UAA के REST API (SCIM सहित) और UI का कार्यान्वयन है

  3. model एक JAR प्रोजेक्ट जिसका उपयोग क्लाइंट लाइब्रेरी और सर्वर दोनों करते हैं

  4. client-lib एक JAR प्रोजेक्ट जो Java क्लाइंट API प्रदान करता है

  5. api (नमूना) एक OAuth2 रिसोर्स सेवा है जो तैनात ऐप्स की एक मॉक सूची लौटाती है

  6. app (नमूना) एक उपयोगकर्ता एप्लिकेशन है जो उपरोक्त दोनों का उपयोग करता है

CloudFoundry शब्दों में

  • uaa प्रमाणीकरण सेवा के साथ-साथ बैक-एंड सेवाओं और ऐप्स के लिए अधिकृत प्रतिनिधिमंडल प्रदान करता है (OAuth2 एक्सेस टोकन जारी करके)।

  • api एक सेवा है जो संसाधन प्रदान करती है जिन्हें अन्य एप्लिकेशन संसाधन स्वामी (अंतिम उपयोगकर्ता) की ओर से एक्सेस करना चाह सकते हैं।

  • app एक वेबऐप है जिसे उपयोगकर्ताओं की ओर से सिंगल साइन ऑन और api सेवा तक पहुँच की आवश्यकता होती है।

कोड का संगठन

प्रोजेक्ट क्षैतिज परतों में व्यवस्थित हैं; क्लाइंट, मॉडल, सर्वर, आदि। इन सभी प्रोजेक्ट्स के भीतर java पैकेज हमारी आंतरिक सेवाओं के चारों ओर लंबवत रूप से व्यवस्थित हैं; zones, providers, clients, आदि।

UAA सर्वर

प्रमाणीकरण सेवा uaa है। यह एक सादा Spring MVC वेबऐप है। Tomcat या अपनी पसंद के कंटेनर में सामान्य रूप से तैनात करें, या सोर्स ट्री में uaa निर्देशिका से सीधे चलाने के लिए ./gradlew run निष्पादित करें। ग्रैडल के साथ चलने पर यह पोर्ट 8080 पर सुनता है और URL http://localhost:8080/uaa है।

UAA सर्वर UAA-APIs दस्तावेज़ में परिभाषित APIs का समर्थन करता है। संक्षेप में:

  1. OAuth2 /oauth/authorize और /oauth/token एंडपॉइंट्स

  2. आवश्यक लॉगिन प्रॉम्प्ट के लिए क्वेरी करने की अनुमति देने हेतु एक /login_info एंडपॉइंट

  3. एक /check_token एंडपॉइंट, जो रिसोर्स सर्वरों को OAuth2 क्लाइंट द्वारा प्रस्तुत एक्सेस टोकन के बारे में जानकारी प्राप्त करने की अनुमति देता है।

  4. एक /token_key एंडपॉइंट, जो रिसोर्स सर्वरों को टोकन हस्ताक्षर सत्यापित करने के लिए सत्यापन कुंजी प्राप्त करने की अनुमति देता है

  5. SCIM उपयोगकर्ता प्रोविज़निंग एंडपॉइंट

  6. प्रमाणीकरण /userinfo समर्थन के लिए OpenID कनेक्ट एंडपॉइंट्स। आंशिक OpenID समर्थन।

कमांड लाइन क्लाइंट /oauth/authorize एंडपॉइंट पर सीधे क्रेडेंशियल्स जमा करके प्रमाणीकरण कर सकते हैं (जैसा कि UAA-API दस्तावेज़ में वर्णित है)। Spring Security OAuth में एक ImplicitAccessTokenProvider है जो यदि आपका क्लाइंट Java है तो भारी काम कर सकता है।

डिफ़ॉल्ट रूप से uaa एक कॉन्टेक्स्ट रूट /uaa के साथ लॉन्च होगा।

उपयोग के मामले

  1. प्रमाणित करें

    root@kitploit:~
     GET /login
    

    एक बुनियादी फ़ॉर्म लॉगिन इंटरफ़ेस।

  2. OAuth2 टोकन ग्रांट स्वीकृत करें

    root@kitploit:~
     GET /oauth/authorize?client_id=app&response_type=code...
    

    मानक OAuth2 प्राधिकरण एंडपॉइंट।

  3. एक्सेस टोकन प्राप्त करें

    root@kitploit:~
     POST /oauth/token
    

    मानक OAuth2 प्राधिकरण एंडपॉइंट।

कॉन्फ़िगरेशन

एप्लिकेशन में दो कॉन्फ़िगरेशन फ़ाइलें हैं, uaa.yml और login.yml, जो Spring XML में प्लेसहोल्डर्स के लिए डिफ़ॉल्ट प्रदान करती हैं। XML में जहाँ भी आप ${placeholder.name} देखते हैं, वहाँ उसे ओवरराइड करने का अवसर होता है, या तो समान नाम के साथ एक सिस्टम प्रॉपर्टी (JVM के लिए -D) प्रदान करके, या एक कस्टम uaa.yml या login.yml (जैसा कि ऊपर वर्णित है) देकर।

uaa.yml और login.yml स्टार्टअप के दौरान एक कॉन्फ़िगरेशन में विलीन हो जाते हैं।

कॉन्फ़िग फ़ाइलों में सभी पासवर्ड और क्लाइंट सीक्रेट सादे पाठ में होते हैं, लेकिन वे BCrypt के साथ एन्क्रिप्टेड होकर UAA डेटाबेस में डाले जाएँगे।

भविष्य में, आप स्पष्ट पाठ पासवर्ड निर्दिष्ट करने से बचने के लिए bcrypt प्रारूप में पासवर्ड प्रदान कर सकेंगे।

उपयोगकर्ता खाता डेटा

डिफ़ॉल्ट एक इन-मेमोरी RDBMS उपयोगकर्ता स्टोर का उपयोग करना है जो एकल परीक्षण उपयोगकर्ता के साथ पूर्व-जनित है: marissa का पासवर्ड koala है।

उपयोगकर्ता डेटा के लिए PostgreSQL का उपयोग करने के लिए, Spring प्रोफ़ाइल postgresql सक्रिय करें।

सक्रिय प्रोफाइल को uaa.yml में निम्न का उपयोग करके कॉन्फ़िगर किया जा सकता है

root@kitploit:~
spring_profiles: postgresql,default

या PostgreSQL को कमांड लाइन पर निर्दिष्ट करें:

root@kitploit:~
 $ ./gradlew -Dspring.profiles.active=default,postgresql run
 

API नमूना एप्लिकेशन

UAA के साथ दो नमूना एप्लिकेशन शामिल हैं। /api और /app

इसे uaa रूट निर्देशिका से ./gradlew run का उपयोग करके चलाएँ। तीनों ऐप्स, /uaa, /api और /app एक साथ तैनात होते हैं।

ऐप नमूना एप्लिकेशन

यह एक उपयोगकर्ता इंटरफ़ेस ऐप है (मुख्य रूप से ब्राउज़रों के लिए) जो प्रमाणीकरण के लिए OpenId Connect (अर्थात SSO) और एक्सेस ग्रांट के लिए OAuth2 का उपयोग करता है। यह Auth सेवा के साथ प्रमाणित होता है, और फिर API सेवा में संसाधनों तक पहुँचता है। इसे uaa रूट निर्देशिका से ./gradlew run के साथ चलाएँ।

एप्लिकेशन UAA सर्वर और लॉगिन एप्लिकेशन के स्थान (और उपस्थिति) के अनुसार कई अलग-अलग प्रोफाइल में काम कर सकता है। डिफ़ॉल्ट रूप से यह localhost:8080/uaa पर UAA की तलाश करेगा, लेकिन आप UAA_PROFILE नामक पर्यावरण चर (या सिस्टम प्रॉपर्टी) सेट करके इसे बदल सकते हैं। एप्लिकेशन सोर्स कोड (samples/app/src/main/resources) में आपको उन सर्वरों के लिए विभिन्न संभावित स्थानों के साथ पहले से कॉन्फ़िगर कई प्रॉपर्टीज़ फ़ाइलें मिलेंगी। वे सभी application-<UAA_PROFILE>.properties के रूप में हैं और अपनाया गया नामकरण सम्मेलन यह है कि UAA_PROFILE localhost परिनियोजन के लिए local, vcap.me परिनियोजन के लिए vcap, स्टेजिंग परिनियोजन के लिए staging (VMware VPN के अंदर), आदि है। प्रोफाइल नाम दोहरे हैं (जैसे local-vcap जब लॉगिन सर्वर UAA सर्वर से भिन्न स्थान पर हो)।

उपयोग के मामले

  1. सभी ऐप्स देखें

    root@kitploit:~
     GET /app/apps
    

    ब्राउज़र प्रमाणीकरण और एक्सेस ग्रांट चरणों की एक श्रृंखला के माध्यम से पुनर्निर्देशित होता है (जिसे किसी बिंदु पर उपयोगकर्ता की आवश्यकता न होने वाले इम्प्लिसिट चरणों तक सीमित किया जा सकता है), और फिर ऐप्स की सूची दिखाई जाती है।

  2. वर्तमान में लॉग इन उपयोगकर्ता का विवरण देखें, open id प्रदाता से प्राप्त विशेषताओं का एक समूह

    root@kitploit:~
     GET /app
    

UAA में योगदान करना

समुदाय में शामिल होने के लिए यहाँ कुछ तरीके दिए गए हैं:

  • मेलिंग सूचियों पर Cloud Foundry समुदाय से जुड़ें। कृपया मेलिंग सूची पर सवालों के जवाब देकर और बहस में शामिल होकर मदद करें।
  • बग और नई सुविधाओं के लिए github टिकट बनाएँ और जिनमें आपकी रुचि है उन पर टिप्पणी करें और वोट करें।
  • Github सामाजिक कोडिंग के लिए है: यदि आप कोड लिखना चाहते हैं, तो हम इस रिपॉजिटरी के फोर्क्स से पुल रिक्वेस्ट के माध्यम से योगदान को प्रोत्साहित करते हैं। यदि आप इस तरह से कोड योगदान करना चाहते हैं, तो कृपया किसी मौजूदा मुद्दे का संदर्भ दें, यदि कोई है, जो आपके द्वारा संबोधित किए जा रहे विशिष्ट मुद्दे को भी कवर करता हो। पुल रिक्वेस्ट हमेशा "develop" शाखा में जमा करें।
  • cloudfoundry.org ब्लॉग को सब्सक्राइब करके Cloud Foundry पर आगामी लेख देखते रहें।

आभार

  • YourKit अपने पूर्ण-विशेषताओं वाले Java Profiler के साथ ओपन सोर्स प्रोजेक्ट्स का समर्थन करता है। YourKit, LLC YourKit Java Profiler और YourKit .NET Profiler का निर्माता है, जो Java और .NET अनुप्रयोगों के प्रोफाइलिंग के लिए नवीन और बुद्धिमान उपकरण हैं।
टूल डाउनलोड करें