Chrome की नीतियों को Schema Service API की मदद से, नीति के स्कीमा के तौर पर दिखाया जाता है. नीति के हर स्कीमा की पहचान करने के लिए उसका एक यूनीक नाम होता है. साथ ही, सेटिंग फ़ील्ड और उनके टाइप की परिभाषा और अंग्रेज़ी में सेटिंग के बारे में ऐसी जानकारी होती है जिसे कोई भी व्यक्ति आसानी से पढ़ सकता है.
उदाहरण के लिए, नीचे बताया गया है कि Schema Service API में एक सेटिंग कैसे दिखती है. यह सेटिंग, Chrome के सिस्टम ट्रे में 'साइन आउट करें' बटन को दिखाने की अनुमति देती है. इस सेटिंग को आसानी से दिखाया जा सकता है. यह bool showLogoutButtonInTray
होगा. यह देखने के लिए कि Schema Service API, इस सेटिंग को कैसे दिखाता है, नीचे "उदाहरण दिखाएं" पर क्लिक करें.
एक उदाहरण दिखाएं
{ "name": "customers/C0202nabg/policySchemas/chrome.users.ShowLogoutButton", "policyDescription": "Show logout button in tray.", // description of the policy "definition": { // definition of the settings (fields names and types) "messageType": [ { "name": "ShowLogoutButton", "field": [ { "name": "showLogoutButtonInTray", // the setting showLogoutButtonInTray "number": 1, "label": "LABEL_OPTIONAL", "type": "TYPE_BOOL" // the setting showLogoutButtonInTray is of type boolean } ] } ] }, "fieldDescriptions": [ // human readable descriptions of the settings and their values { "field": "showLogoutButtonInTray", "knownValueDescriptions": [ { "value": "true", "description": "Show logout button in tray." // description for showLogoutButtonInTray=true }, { "value": "false", "description": "Do not show logout button in tray." // description for showLogoutButtonInTray=false } ] } ], "schemaName": "chrome.users.ShowLogoutButton" // unique name to identify the policy }
नीति स्कीमा के नाम
स्कीमा का name
, उसका यूनीक आइडेंटिफ़ायर होता है. इसका फ़ॉर्मैट यहां दिया गया है:
{namespace}.{leafName}
.
ऊपर दिए गए उदाहरण में, स्कीमा का पूरा नाम chrome.users.ShowLogoutButton
है.
नेमस्पेस chrome.users.
और लीफ़ का नाम ShowLogoutButton
है.
मिलते-जुलते स्कोप वाली नीतियों को एक ही नेमस्पेस के तहत ग्रुप किया जाता है. उदाहरण के लिए, उपयोगकर्ता नीति के सभी स्कीमा को chrome.users.
नेमस्पेस के शुरू में लगाया जाता है. साथ ही, प्रिंटर नीति के सभी स्कीमा के आगे chrome.printers.
नेमस्पेस होता है.
नाम स्थान
नाम-स्थान | सुरक्षा कुंजी | एडमिन की भूमिका के लिए अनुमति ज़रूरी है |
---|---|---|
chrome.users.LEAF_NAME |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > उपयोगकर्ता की सेटिंग मैनेज करें | |
chrome.users.apps.LEAF_NAME |
key="app_id" |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > उपयोगकर्ता सेटिंग मैनेज करें > ऐप्लिकेशन की सेटिंग मैनेज करें |
chrome.users.appsconfig.LEAF_NAME |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > उपयोगकर्ता सेटिंग मैनेज करें > ऐप्लिकेशन की सेटिंग मैनेज करें | |
chrome.devices.LEAF_NAME |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > ChromeOS डिवाइस की सेटिंग मैनेज करें | |
chrome.devices.managedguest.LEAF_NAME |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > ChromeOS डिवाइस की सेटिंग मैनेज करें | |
chrome.devices.managedguest.apps.LEAF_NAME |
key="app_id" |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > ChromeOS डिवाइस की सेटिंग मैनेज करें |
chrome.devices.kiosk.LEAF_NAME |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > ChromeOS डिवाइस की सेटिंग मैनेज करें | |
chrome.devices.kiosk.apps.LEAF_NAME |
key="app_id" |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > ChromeOS डिवाइस की सेटिंग मैनेज करें |
chrome.devices.kiosk.appsconfig.LEAF_NAME |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > ChromeOS डिवाइस की सेटिंग मैनेज करें | |
chrome.printers.LEAF_NAME |
key="printer_id" |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > प्रिंटर मैनेज करें |
chrome.printservers.LEAF_NAME |
key="print_server_id" |
सेवाएं > Chrome मैनेजमेंट > सेटिंग > प्रिंटर मैनेज करें |
chrome.networks.globalsettings.LEAF_NAME |
सेवाएं > शेयर किए गए डिवाइस की सेटिंग | |
chrome.networks.wifi.LEAF_NAME |
key="network_id" |
सेवाएं > शेयर किए गए डिवाइस की सेटिंग |
chrome.networks.ethernet.LEAF_NAME |
key="network_id" |
सेवाएं > शेयर किए गए डिवाइस की सेटिंग |
chrome.networks.vpn.LEAF_NAME |
key="network_id" |
सेवाएं > शेयर किए गए डिवाइस की सेटिंग |
chrome.networks.certificates.LEAF_NAME |
key="network_id" |
सेवाएं > शेयर किए गए डिवाइस की सेटिंग |
नीति स्कीमा कुंजियां
कुछ नीतियों को देखने या उनमें बदलाव करने के लिए, ज़्यादा जानकारी की ज़रूरत होती है. उदाहरण के लिए:
- किसी ऐप्लिकेशन की नीति में बदलाव करने के लिए, आपको
key="app_id"
की जानकारी अपने-आप चुननी होगी. - किसी संगठन की इकाई में प्रिंटर की सेटिंग की नीति में बदलाव करने के लिए, आपको
key="printer_id"
की जानकारी अपने-आप भरना होगा. इसके बाद, यह बताना होगा कि कौनसा प्रिंटर इस्तेमाल किया जा रहा है.
इन नीति स्कीमा में एक additionalTargetKeyNames
सेक्शन होता है. इसमें, आपके एपीआई अनुरोधों में पास की जाने वाली कुंजियों और वैल्यू की जानकारी होती है.
ज़्यादा जानकारी के लिए, कोड सैंपल पर जाएं.
एक उदाहरण दिखाएं
{ "name": "customers/C0202nabg/policySchemas/chrome.printers.AllowForUsers", "policyDescription": "Allows a printer for users in a given organization.", "additionalTargetKeyNames": [ { "key": "printer_id", "keyDescription": "Id of printer as visible in Admin SDK printers API." } ], "definition": { "messageType": [ { "name": "AllowForUsers", "field": [ { "name": "allowForUsers", "number": 1, "label": "LABEL_OPTIONAL", "type": "TYPE_BOOL" } ] } ] }, "fieldDescriptions": [ { "field": "allowForUsers", "description": "Controls whether a printer is allowed for users in a given organization." } ], "schemaName": "chrome.printers.AllowForUsers" }
ऐप्लिकेशन की नीतियां
ऊपर दिए गए कुछ नेमस्पेस, ऐप्लिकेशन नीति के लिए हैं. जैसे, उपयोगकर्ता के ऐप्लिकेशन, कीऑस्क ऐप्लिकेशन, मैनेज किए जा रहे गेस्ट सेशन ऐप्लिकेशन, और कीऑस्क ऐप्लिकेशन कॉन्फ़िगरेशन से जुड़ी नीतियां. ऐप्लिकेशन की नीतियों के लिए,
app_id
होना ज़रूरी है.
ऐप्लिकेशन टाइप और ऐप्लिकेशन आइडेंटिफ़ायर को जोड़कर app_id
बनाया जाता है. उदाहरण के लिए:
chrome:mkaakpdehdafacodkgkpghoibnmamcme
, "Google Drawings" Chrome ऐप्लिकेशन दिखाता हैandroid:com.google.android.calendar
, "Google Calendar" Android ऐप्लिकेशन को दिखाता हैweb:https://canvas.apps.chrome
, "कैनवस" वेब ऐप्लिकेशन दिखाता है
एक से ज़्यादा वैल्यू वाले फ़ील्ड
LABEL_REPEATED
लेबल वाले फ़ील्ड, कई वैल्यू वाले फ़ील्ड दिखाते हैं, जैसे कि सूचियां या अरे. इन फ़ील्ड के लिए कई वैल्यू दी जा सकती हैं. ज़्यादा जानकारी के लिए, कोड के सैंपल देखें.
नीति स्कीमा का स्टेटस
हर नीति का मौजूदा स्टेटस दिखाने के लिए, एक policyApiLifecycle
ऑब्जेक्ट होता है.
इस ऑब्जेक्ट में, नीति की स्थिति की जानकारी के साथ ये फ़ील्ड शामिल होते हैं:
policyApiLifecycleStage
फ़ील्ड से पता चलता है कि नीचे दी गई टेबल के कौनसे चरण, नीति की मौजूदा स्थिति के बारे में सबसे सही जानकारी देते हैं.description
फ़ील्ड में, इस नीति की मौजूदा स्थिति के बारे में ज़्यादा जानकारी मिलती है.- अगर नीति के लिए तय की गई आखिरी तारीख होती है, तो
endSupport
फ़ील्ड में इसकी जानकारी दी जाती है. deprecatedInFavorOf
को सिर्फ़ तब सेट किया जा सकता है, जब policyApiलाइफ़साइकलस्टेज, API_DEPRECATED. यह उन नई नीतियों के पूरी तरह क्वालिफ़ाइड नेमस्पेस को दिखाता है जिनके लिए मौजूदा नीति का इस्तेमाल बंद कर दिया गया है.scheduledToDeprecatePolicies
फ़ील्ड, DeprecatedInFavorOf से जुड़ा है. यह पुरानी नीतियों के पूरी तरह क्वालिफ़ाइड नेमस्पेस को दिखाता है, जिन्हें इस नीति के लागू होने की वजह से बंद कर दिया जाएगा.
लाइफ़साइकल के स्टेज
चरण | जानकारी |
---|---|
API_UNSPECIFIED |
नीति की मौजूदा स्थिति के बारे में जानकारी नहीं है. रिज़र्व किया गया है, इसका इस्तेमाल न करें. |
API_PREVIEW |
नीति अभी काम नहीं कर रही है. यह स्टेज API_CURRENT या API_DEVELOPMENT में ट्रांसफ़र हो सकता है. |
API_DEVELOPMENT |
नीति को अभी तक तय नहीं किया गया है और नुकसान पहुंचा सकने वाले बदलाव दिखाए जा सकते हैं. यह स्टेज API_CURRENT या API_DEPRECATED में ट्रांसफ़र हो सकता है. |
API_CURRENT |
नीति का आधिकारिक फ़ॉर्मैट उपलब्ध है. हालांकि, इसमें कोई उल्लंघन न करने वाले बदलाव किए जा सकते हैं. यह स्टेज API_DEPRECATED में ट्रांसफ़र हो सकता है. |
API_DEPRECATED |
इस नीति के इस्तेमाल पर रोक लगा दी गई है और इसे आने वाले समय में हटाया जा सकता है. एडमिन को इस नीति का इस्तेमाल बंद कर देना चाहिए. |
एक उदाहरण दिखाएं
{ "name": "customers/C0202nabg/policySchemas/chrome.users.OutdatedPolicy", "policyDescription": "Just for demo, this is an outdated policy.", "definition": { "messageType": [ { "name": "OutdatedPolicy", "field": [ { "name": "outdatedField", "number": 1, "label": "LABEL_OPTIONAL", "type": "TYPE_BOOL" } ] } ] }, "fieldDescriptions": [ { "field": "outdatedField", "description": "This is an outdated field" } ], "schemaName": "chrome.users.OutdatedPolicy", "policyApiLifecycle": { // policy's current lifecycle status "policyApiLifecycleStage": "API_DEPRECATED", "description": "This policy is deprecated. Please stop using it", "endSupport": { "year": 2021, "month": 2, "day": 29 } "deprecatedInFavorOf": "chrome.users.NewPolicy" } } { "name": "customers/C0202nabg/policySchemas/chrome.users.NewPolicy", "policyDescription": "Just for demo, this is a new policy.", "definition": { "messageType": [ { "name": "NewPolicy", "field": [ { "name": "newField", "number": 1, "label": "LABEL_OPTIONAL", "type": "TYPE_BOOL" } ] } ] }, "fieldDescriptions": [ { "field": "newField", "description": "This is an new field" } ], "schemaName": "chrome.users.NewPolicy", "policyApiLifecycle": { // policy's current lifecycle status "policyApiLifecycleStage": "API_CURRENT, "scheduledToDeprecatePolicies": "chrome.users.OutdatedPolicy" } }
नीति स्कीमा से जुड़ी सूचनाएं
कुछ नीतियों से जुड़ी notices
नीति है. इनमें, नीति वाले फ़ील्ड की कुछ वैल्यू के लिए, acknowledgement_required
को true
पर सेट किया गया है. इन नीतियों के लिए, आपको true
पर एक खास सहमति फ़ील्ड सेट करना होगा. इसके बाद ही वैल्यू सेट की जा सकती है.
ज़्यादा जानकारी के लिए, कोड सैंपल देखें.
इन प्लैटफ़ॉर्म पर चलाया जा सकता है
supportedPlatforms
एक ऐसी सूची है जिससे पता चलता है कि यह नीति सिर्फ़
इन प्लैटफ़ॉर्म के डिवाइसों या उपयोगकर्ताओं पर लागू होगी. इस टेबल में, इस्तेमाल किए जा सकने वाले सभी प्लैटफ़ॉर्म की सूची दी गई है.
YouTube के साथ काम करने वाला प्लैटफ़ॉर्म
प्लैटफ़ॉर्म | जानकारी |
---|---|
PLATFORM_UNSPECIFIED |
तय नहीं किया गया प्लैटफ़ॉर्म. रिज़र्व किया गया है, इसका इस्तेमाल न करें. |
CHROME_OS |
ChromeOS |
CHROME_BROWSER |
macOS/Windows/Linux के लिए Chrome ब्राउज़र |
CHROME_BROWSER_FOR_ANDROID |
Android के लिए Chrome ब्राउज़र |
CHROME_BROWSER_FOR_IOS |
iOS के लिए Chrome ब्राउज़र |