खाते और साइन इन
साइन इन, सत्र, व्यक्तिगत एक्सेस टोकन, उपयोगकर्ता, समूह और सुरक्षा ऑडिट।
इस समूह के ऑपरेशन, उनके एक्सेस नियम, पुनः प्रयास नियम, पैरामीटर और जवाबों के साथ। हर अनुरोध में एक कुंजी होती है: Authorization: Bearer <कुंजी> (“प्रमाणीकरण” देखें)।
ऑपरेशन
साइन इन करें
POST /api/v1/auth/login
एक्सेस: कोई भी, बिना कुंजी के · पुनः प्रयास: अपने-आप न दोहराएँ
खाते के name और password के बदले 12 घंटे के लिए वैध बियरर सत्र token, उसके expiresAt और खाते के साथ देता है; इसे Authorization: Bearer के रूप में भेजें। अज्ञात नाम, गलत पासवर्ड और अक्षम खाता, तीनों पर एक ही 401 invalid_credentials मिलता है। प्रयास क्लाइंट पते और खाते के अनुसार थ्रॉटल होते हैं (Retry-After के साथ 429 rate_limited), और एक खाते के अधिकतम 32 सत्र रहते हैं: नया सत्र सबसे पुराने को समाप्त कर देता है।
अनुरोध बॉडी (application/json)
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
name | string | हाँ | — |
password | string (password) | हाँ | — |
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
token | string | हाँ | — |
expiresAt | string (date-time) | हाँ | — |
account | object | हाँ | — |
account.id | string (uuid) | हाँ | — |
account.name | string | हाँ | — |
account.administrator | boolean | हाँ | — |
account.enabled | boolean | हाँ | — |
प्रतिक्रियाएँ: 200, 400, 401, 403, 405, 413, 415, 429, 503
उदाहरण
curl -X POST "$ARKVORY_URL/api/v1/auth/login" \
-H "Content-Type: application/json" \
-d '{"name":"<name>","password":"<password>"}'खाता पंजीकृत करें
POST /api/v1/auth/register
एक्सेस: कोई भी, बिना कुंजी के · पुनः प्रयास: अपने-आप न दोहराएँ
name (3–64 अक्षर, अंक या _.-) और password (12–128 वर्ण) के साथ साधारण खाता बनाता है (कभी व्यवस्थापक नहीं) और उसे साइन इन करता है, login की तरह 12 घंटे के सत्र के साथ 201 लौटाता है। केवल तभी काम करता है जब सर्वर स्व-पंजीकरण की अनुमति देता है (देखें getAuthOptions), अन्यथा 403 registration_disabled; लिया जा चुका नाम 409 already_exists है। प्रयास क्लाइंट पते के अनुसार थ्रॉटल होते हैं (Retry-After के साथ 429), और स्व-पंजीकरण 900 खातों पर रुक जाता है।
अनुरोध बॉडी (application/json)
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
name | string | हाँ | — |
password | string (password) | हाँ | — |
प्रतिक्रिया 201
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
token | string | हाँ | — |
expiresAt | string (date-time) | हाँ | — |
account | object | हाँ | — |
account.id | string (uuid) | हाँ | — |
account.name | string | हाँ | — |
account.administrator | boolean | हाँ | — |
account.enabled | boolean | हाँ | — |
प्रतिक्रियाएँ: 201, 400, 403, 405, 413, 415, 429, 503
उदाहरण
curl -X POST "$ARKVORY_URL/api/v1/auth/register" \
-H "Content-Type: application/json" \
-d '{"name":"<name>","password":"<password>"}'साइन-इन विकल्प प्राप्त करें
GET HEAD /api/v1/auth/options
एक्सेस: कोई भी, बिना कुंजी के · पुनः प्रयास: दोहराना सुरक्षित है (पढ़ना)
कंसोल को साइन-इन से पहले बताता है कि कौन-से फ़ॉर्म दिखाने हैं: जब इस सर्वर पर registerAccount खुला हो तो selfRegistration true होता है।
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
selfRegistration | boolean | हाँ | — |
प्रतिक्रियाएँ: 200, 400, 403, 503
उदाहरण
curl -X GET "$ARKVORY_URL/api/v1/auth/options"अपने व्यक्तिगत एक्सेस टोकन सूचीबद्ध करें
GET HEAD /api/v1/auth/tokens
एक्सेस: साइन इन किए गए खाते का सत्र (कुंजी नहीं) · पुनः प्रयास: दोहराना सुरक्षित है (पढ़ना)
साइन-इन किए हुए खाते के व्यक्तिगत एक्सेस टोकन सूचीबद्ध करता है, सक्रिय पहले, प्रत्येक के नाम, उपसर्ग, स्कोप, निर्माण, समाप्ति, अंतिम उपयोग और यह कि वह निरस्त है या नहीं के साथ; गोपनीय मान फिर कभी नहीं दिखाए जाते।
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
items | object का ऐरे | हाँ | अधिकतम 100 आइटम |
items[].id | string (uuid) | हाँ | — |
items[].name | string | हाँ | — |
items[].prefix | string | हाँ | — |
items[].scope | string | हाँ | इनमें से एक: read, read-write |
items[].createdAt | string (date-time) | हाँ | — |
items[].expiresAt | string (date-time) | नहीं | null हो सकता है |
items[].lastUsedAt | string (date-time) | नहीं | null हो सकता है |
items[].revoked | boolean | हाँ | — |
प्रतिक्रियाएँ: 200, 400, 401, 403, 404, 409, 422, 503, 507
उदाहरण
curl -X GET "$ARKVORY_URL/api/v1/auth/tokens" \
-H "Authorization: Bearer $ARKVORY_TOKEN"व्यक्तिगत एक्सेस टोकन बनाएँ
POST /api/v1/auth/tokens
एक्सेस: साइन इन किए गए खाते का सत्र (कुंजी नहीं) · पुनः प्रयास: अपने-आप न दोहराएँ
स्क्रिप्ट और टूल के लिए टोकन बनाता है जो साइन-इन किए हुए खाते के रूप में कार्य करता है; गोपनीय मान केवल इसी उत्तर में होता है। name में 1–64 वर्ण होते हैं, expiresAt डिफ़ॉल्ट रूप से 90 दिन है और भविष्य में तथा 365 दिनों के भीतर होना चाहिए, और scope read-write (डिफ़ॉल्ट) या read है, जो कभी कुछ नहीं बदल सकता। टोकन कभी व्यवस्थापक अधिकार नहीं रखते, टोकन नहीं बना सकते, और एक खाते के अधिकतम 50 सक्रिय टोकन हो सकते हैं (507 token_limit)।
अनुरोध बॉडी (application/json)
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
name | string | हाँ | — |
expiresAt | string (date-time) | नहीं | — |
scope | string | नहीं | इनमें से एक: read, read-write |
प्रतिक्रिया 201
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
id | string (uuid) | हाँ | — |
name | string | हाँ | — |
prefix | string | हाँ | — |
scope | string | हाँ | इनमें से एक: read, read-write |
createdAt | string (date-time) | हाँ | — |
expiresAt | string (date-time) | नहीं | null हो सकता है |
lastUsedAt | string (date-time) | नहीं | null हो सकता है |
revoked | boolean | हाँ | — |
token | string | हाँ | — |
प्रतिक्रियाएँ: 201, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
उदाहरण
curl -X POST "$ARKVORY_URL/api/v1/auth/tokens" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"<name>"}'अपना व्यक्तिगत एक्सेस टोकन निरस्त करें
DELETE /api/v1/auth/tokens/{id}
एक्सेस: साइन इन किए गए खाते का सत्र (कुंजी नहीं) · पुनः प्रयास: दोहराना सुरक्षित है: एक जैसे अनुरोध का प्रभाव एक जैसा होता है
साइन-इन किए हुए खाते का एक व्यक्तिगत एक्सेस टोकन निरस्त करता है; उसके साथ किए गए अनुरोध अब से विफल होंगे। पहले से निरस्त टोकन को निरस्त करना भी सफल होता है।
पैरामीटर
| नाम | स्थान | प्रकार | आवश्यक | नियम |
|---|---|---|---|---|
id | पथ | string (uuid) | हाँ | — |
प्रतिक्रियाएँ: 204, 400, 401, 403, 404, 405, 409, 422, 503, 507
उदाहरण
curl -X DELETE "$ARKVORY_URL/api/v1/auth/tokens/$ID" \
-H "Authorization: Bearer $ARKVORY_TOKEN"साइन आउट करें
POST /api/v1/auth/logout
एक्सेस: कोई भी मान्य कुंजी या सत्र · पुनः प्रयास: दोहराना सुरक्षित है: एक जैसे अनुरोध का प्रभाव एक जैसा होता है
Authorization में भेजे गए खाते के सत्र को समाप्त करता है; उसका टोकन तुरंत काम करना बंद कर देता है। किसी अन्य क्रेडेंशियल (व्यक्तिगत टोकन या सेवा कुंजी) के साथ यह 204 लौटाता है और कुछ निरस्त नहीं करता।
प्रतिक्रियाएँ: 204, 400, 401, 403, 404, 405, 409, 422, 503, 507
उदाहरण
curl -X POST "$ARKVORY_URL/api/v1/auth/logout" \
-H "Authorization: Bearer $ARKVORY_TOKEN"अपना पासवर्ड बदलें
POST /api/v1/auth/password
एक्सेस: साइन इन किए गए खाते का सत्र (कुंजी नहीं) · पुनः प्रयास: अपने-आप न दोहराएँ
currentPassword जाँचने के बाद newPassword (12–128 वर्ण) सेट करता है; गलत वर्तमान पासवर्ड 401 current_password_invalid है और साइन-इन बैकऑफ़ में गिना जाता है। सफल होने पर खाते का हर सत्र और हर व्यक्तिगत एक्सेस टोकन निरस्त हो जाता है, वर्तमान सत्र सहित, इसलिए फिर से साइन इन करें।
अनुरोध बॉडी (application/json)
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
currentPassword | string (password) | हाँ | — |
newPassword | string (password) | हाँ | — |
प्रतिक्रियाएँ: 204, 400, 401, 403, 404, 405, 409, 413, 415, 422, 429, 503, 507
उदाहरण
curl -X POST "$ARKVORY_URL/api/v1/auth/password" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"currentPassword":"<currentPassword>","newPassword":"<newPassword>"}'वर्तमान पहचान प्राप्त करें
GET HEAD /api/v1/auth/me
एक्सेस: कोई भी मान्य कुंजी या सत्र · पुनः प्रयास: दोहराना सुरक्षित है (पढ़ना)
बताता है कि क्रेडेंशियल किसका है: उसकी id, वह व्यवस्थापक है या नहीं, क्रेडेंशियल का प्रकार (session, personal-token, service-key या file-key), व्यक्तिगत टोकन का स्कोप, और वे रिपॉज़िटरी जिनमें उसकी read या write पहुँच है। इसे साइन-इन किए हुए उपयोगकर्ता को दिखाने और रिपॉज़िटरी चुनने के लिए उपयोग करें; प्रबंधित सेवा कुंजी की सटीक अनुमतियों के लिए getOwnPermissions का उपयोग करें।
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
id | string | हाँ | — |
administrator | boolean | हाँ | — |
credential | string | नहीं | इनमें से एक: session, personal-token, service-key, file-key |
tokenScope | string | नहीं | इनमें से एक: read, read-write |
grants | object का ऐरे | हाँ | — |
grants[].repository | string | हाँ | — |
grants[].permissions | string का ऐरे | हाँ | हर आइटम: इनमें से एक: read, write |
प्रतिक्रियाएँ: 200, 400, 401, 403, 404, 409, 422, 503, 507
उदाहरण
curl -X GET "$ARKVORY_URL/api/v1/auth/me" \
-H "Authorization: Bearer $ARKVORY_TOKEN"खाते सूचीबद्ध करें
GET HEAD /api/v1/users
एक्सेस: व्यवस्थापक · पुनः प्रयास: दोहराना सुरक्षित है (पढ़ना)
सभी उपयोगकर्ता खाते नाम के क्रम में सूचीबद्ध करता है, ID, नाम, व्यवस्थापक फ़्लैग और सक्षम हैं या नहीं के साथ। सर्वर अधिकतम 1000 खाते रखता है।
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
items | object का ऐरे | नहीं | — |
items[].id | string (uuid) | हाँ | — |
items[].name | string | हाँ | — |
items[].administrator | boolean | हाँ | — |
items[].enabled | boolean | हाँ | — |
प्रतिक्रियाएँ: 200, 400, 401, 403, 404, 409, 422, 503, 507
उदाहरण
curl -X GET "$ARKVORY_URL/api/v1/users" \
-H "Authorization: Bearer $ARKVORY_TOKEN"खाता बनाएँ
POST /api/v1/users
एक्सेस: व्यवस्थापक · पुनः प्रयास: अपने-आप न दोहराएँ
name (3–64 अक्षर, अंक या _.-), password (12–128 वर्ण) और administrator (डिफ़ॉल्ट false) के साथ खाता बनाता है और उसे 201 के साथ लौटाता है। लिया जा चुका नाम 409 already_exists है; सर्वर अधिकतम 1000 खाते रखता है (507 account_limit)।
अनुरोध बॉडी (application/json)
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
name | string | हाँ | — |
password | string (password) | हाँ | — |
administrator | boolean | नहीं | — |
प्रतिक्रिया 201
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
id | string (uuid) | हाँ | — |
name | string | हाँ | — |
administrator | boolean | हाँ | — |
enabled | boolean | हाँ | — |
प्रतिक्रियाएँ: 201, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
उदाहरण
curl -X POST "$ARKVORY_URL/api/v1/users" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"<name>","password":"<password>"}'खाता सक्षम, अक्षम या रीसेट करें
PATCH /api/v1/users/{id}
एक्सेस: व्यवस्थापक · पुनः प्रयास: अपने-आप न दोहराएँ
किसी खाते का enabled बदलता है और/या नया password सेट करता है; व्यवस्थापक फ़्लैग यहाँ नहीं बदला जा सकता। अक्षम करने से खाते के सभी सत्र समाप्त हो जाते हैं और जब तक वह अक्षम रहता है उसके व्यक्तिगत टोकन काम नहीं करते; पासवर्ड रीसेट सभी सत्र समाप्त करता है और हर व्यक्तिगत टोकन निरस्त करता है।
पैरामीटर
| नाम | स्थान | प्रकार | आवश्यक | नियम |
|---|---|---|---|---|
id | पथ | string (uuid) | हाँ | — |
अनुरोध बॉडी (application/json)
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
enabled | boolean | नहीं | — |
password | string (password) | नहीं | — |
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
id | string (uuid) | हाँ | — |
name | string | हाँ | — |
administrator | boolean | हाँ | — |
enabled | boolean | हाँ | — |
प्रतिक्रियाएँ: 200, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
उदाहरण
curl -X PATCH "$ARKVORY_URL/api/v1/users/$ID" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{}'किसी खाते के व्यक्तिगत एक्सेस टोकन सूचीबद्ध करें
GET HEAD /api/v1/users/{id}/tokens
एक्सेस: व्यवस्थापक · पुनः प्रयास: दोहराना सुरक्षित है (पढ़ना)
किसी भी खाते के व्यक्तिगत एक्सेस टोकन सूचीबद्ध करता है, सक्रिय पहले, प्रत्येक के नाम, उपसर्ग, स्कोप, निर्माण, समाप्ति, अंतिम उपयोग और निरस्तीकरण के साथ; गोपनीय मान कभी नहीं। खाते को अक्षम या रीसेट करने से पहले ऑटोमेशन की समीक्षा के लिए इसका उपयोग करें।
पैरामीटर
| नाम | स्थान | प्रकार | आवश्यक | नियम |
|---|---|---|---|---|
id | पथ | string (uuid) | हाँ | — |
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
items | object का ऐरे | हाँ | अधिकतम 100 आइटम |
items[].id | string (uuid) | हाँ | — |
items[].name | string | हाँ | — |
items[].prefix | string | हाँ | — |
items[].scope | string | हाँ | इनमें से एक: read, read-write |
items[].createdAt | string (date-time) | हाँ | — |
items[].expiresAt | string (date-time) | नहीं | null हो सकता है |
items[].lastUsedAt | string (date-time) | नहीं | null हो सकता है |
items[].revoked | boolean | हाँ | — |
प्रतिक्रियाएँ: 200, 400, 401, 403, 404, 409, 422, 503, 507
उदाहरण
curl -X GET "$ARKVORY_URL/api/v1/users/$ID/tokens" \
-H "Authorization: Bearer $ARKVORY_TOKEN"किसी खाते का व्यक्तिगत एक्सेस टोकन निरस्त करें
DELETE /api/v1/users/{id}/tokens/{tokenId}
एक्सेस: व्यवस्थापक · पुनः प्रयास: दोहराना सुरक्षित है: एक जैसे अनुरोध का प्रभाव एक जैसा होता है
खाते id का एक व्यक्तिगत एक्सेस टोकन निरस्त करता है; उसके साथ किए गए अनुरोध अब से विफल होंगे, और घटना सुरक्षा ऑडिट में दर्ज की जाती है। पहले से निरस्त टोकन को निरस्त करना भी सफल होता है।
पैरामीटर
| नाम | स्थान | प्रकार | आवश्यक | नियम |
|---|---|---|---|---|
id | पथ | string (uuid) | हाँ | — |
tokenId | पथ | string (uuid) | हाँ | — |
प्रतिक्रियाएँ: 204, 400, 401, 403, 404, 405, 409, 422, 503, 507
उदाहरण
curl -X DELETE "$ARKVORY_URL/api/v1/users/$ID/tokens/$TOKENID" \
-H "Authorization: Bearer $ARKVORY_TOKEN"एक्सेस समूह सूचीबद्ध करें
GET HEAD /api/v1/access-groups
एक्सेस: व्यवस्थापक · पुनः प्रयास: दोहराना सुरक्षित है (पढ़ना)
सभी एक्सेस समूह उनके सदस्य खातों की ID और रिपॉज़िटरी अनुदानों (read या write) के साथ सूचीबद्ध करता है। सर्वर अधिकतम 100 समूह, 10 000 सदस्यताएँ और 10 000 अनुदान रखता है।
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
items | object का ऐरे | नहीं | — |
items[].id | string (uuid) | हाँ | — |
items[].name | string | हाँ | — |
items[].members | string (uuid) का ऐरे | हाँ | — |
items[].grants | object का ऐरे | हाँ | — |
items[].grants[].repository | string | हाँ | — |
items[].grants[].access | string | हाँ | इनमें से एक: read, write |
प्रतिक्रियाएँ: 200, 400, 401, 403, 404, 409, 422, 503, 507
उदाहरण
curl -X GET "$ARKVORY_URL/api/v1/access-groups" \
-H "Authorization: Bearer $ARKVORY_TOKEN"एक्सेस समूह बनाएँ
POST /api/v1/access-groups
एक्सेस: व्यवस्थापक · पुनः प्रयास: अपने-आप न दोहराएँ
name (2–64 अक्षर, अंक या _.-) के साथ खाली समूह बनाता है और उसे 201 के साथ लौटाता है; लिया जा चुका नाम 409 already_exists है। सदस्य addGroupMember से और रिपॉज़िटरी setGroupGrant से जोड़ें।
अनुरोध बॉडी (application/json)
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
name | string | हाँ | — |
प्रतिक्रिया 201
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
id | string (uuid) | हाँ | — |
name | string | हाँ | — |
members | string (uuid) का ऐरे | हाँ | — |
grants | object का ऐरे | हाँ | — |
grants[].repository | string | हाँ | — |
grants[].access | string | हाँ | इनमें से एक: read, write |
प्रतिक्रियाएँ: 201, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
उदाहरण
curl -X POST "$ARKVORY_URL/api/v1/access-groups" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"<name>"}'समूह में खाता जोड़ें
PUT /api/v1/access-groups/{id}/members/{userId}
एक्सेस: व्यवस्थापक · पुनः प्रयास: दोहराना सुरक्षित है: एक जैसे अनुरोध का प्रभाव एक जैसा होता है
खाते userId को समूह का सदस्य बनाता है; उसे समूह की रिपॉज़िटरी पहुँच अपने अगले अनुरोध से मिल जाती है। मौजूदा सदस्य को जोड़ने पर कुछ नहीं बदलता; कुल मिलाकर अधिकतम 10 000 सदस्यताएँ (507 membership_limit)।
पैरामीटर
| नाम | स्थान | प्रकार | आवश्यक | नियम |
|---|---|---|---|---|
id | पथ | string (uuid) | हाँ | — |
userId | पथ | string (uuid) | हाँ | — |
प्रतिक्रियाएँ: 204, 400, 401, 403, 404, 405, 409, 422, 503, 507
उदाहरण
curl -X PUT "$ARKVORY_URL/api/v1/access-groups/$ID/members/$USERID" \
-H "Authorization: Bearer $ARKVORY_TOKEN"समूह से खाता हटाएँ
DELETE /api/v1/access-groups/{id}/members/{userId}
एक्सेस: व्यवस्थापक · पुनः प्रयास: दोहराना सुरक्षित है: एक जैसे अनुरोध का प्रभाव एक जैसा होता है
खाते userId को समूह से हटाता है; समूह के माध्यम से उसकी पहुँच उसके अगले अनुरोध से समाप्त हो जाती है। जो खाता सदस्य नहीं है उसे हटाना भी सफल होता है।
पैरामीटर
| नाम | स्थान | प्रकार | आवश्यक | नियम |
|---|---|---|---|---|
id | पथ | string (uuid) | हाँ | — |
userId | पथ | string (uuid) | हाँ | — |
प्रतिक्रियाएँ: 204, 400, 401, 403, 404, 405, 409, 422, 503, 507
उदाहरण
curl -X DELETE "$ARKVORY_URL/api/v1/access-groups/$ID/members/$USERID" \
-H "Authorization: Bearer $ARKVORY_TOKEN"समूह को रिपॉज़िटरी तक पहुँच दें
PUT /api/v1/access-groups/{id}/grants/{repository}
एक्सेस: व्यवस्थापक · पुनः प्रयास: दोहराना सुरक्षित है: एक जैसे अनुरोध का प्रभाव एक जैसा होता है
समूह के सदस्यों को repository की read या write access देता है, वहाँ समूह के पहले के अनुदान को प्रतिस्थापित करते हुए; यह उनके अगले अनुरोध से लागू होता है। रिपॉज़िटरी के लिए अलग से निर्माण की ज़रूरत नहीं: अनुदान उसे उनके लिए दृश्य बना देता है। कुल मिलाकर अधिकतम 10 000 अनुदान (507 grant_limit)।
पैरामीटर
| नाम | स्थान | प्रकार | आवश्यक | नियम |
|---|---|---|---|---|
id | पथ | string (uuid) | हाँ | — |
repository | पथ | string | हाँ | — |
अनुरोध बॉडी (application/json)
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
access | string | हाँ | इनमें से एक: read, write |
प्रतिक्रियाएँ: 204, 400, 401, 403, 404, 405, 409, 413, 415, 422, 503, 507
उदाहरण
curl -X PUT "$ARKVORY_URL/api/v1/access-groups/$ID/grants/$REPOSITORY" \
-H "Authorization: Bearer $ARKVORY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"access":"read"}'समूह की रिपॉज़िटरी पहुँच हटाएँ
DELETE /api/v1/access-groups/{id}/grants/{repository}
एक्सेस: व्यवस्थापक · पुनः प्रयास: दोहराना सुरक्षित है: एक जैसे अनुरोध का प्रभाव एक जैसा होता है
repository के लिए समूह का अनुदान हटाता है; उसके सदस्यों के पास केवल वही पहुँच रहती है जो उन्हें अन्य समूहों से मिलती है। जो अनुदान मौजूद नहीं है उसे हटाना भी सफल होता है।
पैरामीटर
| नाम | स्थान | प्रकार | आवश्यक | नियम |
|---|---|---|---|---|
id | पथ | string (uuid) | हाँ | — |
repository | पथ | string | हाँ | — |
प्रतिक्रियाएँ: 204, 400, 401, 403, 404, 405, 409, 422, 503, 507
उदाहरण
curl -X DELETE "$ARKVORY_URL/api/v1/access-groups/$ID/grants/$REPOSITORY" \
-H "Authorization: Bearer $ARKVORY_TOKEN"सुरक्षा ऑडिट पढ़ें
GET HEAD /api/v1/security/audit
एक्सेस: व्यवस्थापक · पुनः प्रयास: दोहराना सुरक्षित है (पढ़ना)
साइन-इन, पंजीकरण, खाते, समूह, अनुदान, पासवर्ड और व्यक्तिगत टोकन के परिवर्तनों का केवल-जोड़ने वाला जर्नल, सबसे नया पहले, लौटाता है; प्रत्येक के साथ कर्ता, क्रेडेंशियल का प्रकार, लक्ष्य, परिणाम और क्लाइंट पता है; थ्रॉटल किए गए प्रयास जर्नल में दर्ज नहीं होते। प्रत्येक पृष्ठ में limit प्रविष्टियाँ होती हैं (1–100, डिफ़ॉल्ट 50); after में next देकर आगे बढ़ें।
पैरामीटर
| नाम | स्थान | प्रकार | आवश्यक | नियम |
|---|---|---|---|---|
after | क्वेरी | string | नहीं | दशमलव अंकों में पूर्णांक, स्ट्रिंग के रूप में भेजा जाता है |
limit | क्वेरी | integer | नहीं | 1–100 |
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
items | object का ऐरे | हाँ | अधिकतम 100 आइटम |
items[].id | string | हाँ | दशमलव अंकों में पूर्णांक, स्ट्रिंग के रूप में भेजा जाता है |
items[].occurredAt | string (date-time) | हाँ | — |
items[].actor | string | हाँ | null हो सकता है |
items[].credential | string | हाँ | इनमें से एक: session, personal-token, service-key, file-key; null हो सकता है |
items[].clientIp | string | हाँ | null हो सकता है |
items[].action | string | हाँ | — |
items[].target | string | हाँ | null हो सकता है |
items[].outcome | string | हाँ | इनमें से एक: success, failure, denied |
items[].code | string | हाँ | null हो सकता है |
items[].details | object | हाँ | — |
next | string | हाँ | null हो सकता है |
प्रतिक्रियाएँ: 200, 400, 401, 403, 404, 409, 422, 503, 507
उदाहरण
curl -X GET "$ARKVORY_URL/api/v1/security/audit" \
-H "Authorization: Bearer $ARKVORY_TOKEN"अपनी प्रभावी अनुमतियाँ प्राप्त करें
GET HEAD /api/v1/auth/permissions
एक्सेस: कोई भी मान्य कुंजी या सत्र · पुनः प्रयास: दोहराना सुरक्षित है (पढ़ना)
कॉलर का profile (प्रबंधित सेवा कुंजी के लिए managed, अन्यथा legacy), उसकी कुंजी की ID, उसकी प्रभावी बाइंडिंग (हर रिपॉज़िटरी और वहाँ अनुमत सटीक क्रियाएँ) और यह कि वह बूटस्ट्रैप सेवा व्यवस्थापक है या नहीं, लौटाता है। क्लाइंट को ढालने के लिए इसका उपयोग करें; सर्वर फिर भी हर अनुरोध जाँचता है, इसलिए अनुमतियों का परिवर्तन तुरंत लागू होता है।
प्रतिक्रिया 200
| फ़ील्ड | प्रकार | आवश्यक | नियम |
|---|---|---|---|
id | string | हाँ | — |
profile | string | हाँ | इनमें से एक: legacy, managed |
bindings | object का ऐरे | हाँ | अधिकतम 10000 आइटम |
bindings[].resource | object | हाँ | — |
bindings[].resource.kind | string | हाँ | इनमें से एक: repository |
bindings[].resource.id | string | हाँ | पैटर्न: ^[a-z0-9][a-z0-9_-]{0,63}$ |
bindings[].actions | string का ऐरे | हाँ | 1–24 आइटम; कोई आइटम दोहराया न जाए; हर आइटम: इनमें से एक: repository.read, storage.read, storage.manage, diagnostics.read, artifact.read, artifact.list, artifact.delete, artifact.promote, content.read, upload.create, upload.read, upload.write, upload.complete, upload.cancel, job.read, package.read, package.publish, asset.read, asset.write, asset.restore, annotation.read, annotation.write, reference.write, audit.read |
serviceAdministration | boolean | हाँ | — |
credentialId | string (uuid) | नहीं | null हो सकता है |
प्रतिक्रियाएँ: 200, 400, 401, 403, 404, 409, 422, 503, 507
उदाहरण
curl -X GET "$ARKVORY_URL/api/v1/auth/permissions" \
-H "Authorization: Bearer $ARKVORY_TOKEN"