উইন্ডোজ ভাষা নির্বিশেষে, আমি কীভাবে আইসিএসিএলএস কমান্ডটি প্রত্যেকের সম্পূর্ণ অ্যাক্সেস পেতে একটি ফোল্ডার সেট করতে পারি?


9

পটভূমি

বলুন আমি এই আদেশ আছে

icacls C:\FullyAccessibleFolder /grant Users:(OI)(CI)F

এটি উইন্ডোজের ইংরেজী সংস্করণগুলিতে দুর্দান্ত কাজ করে তবে ফ্রেঞ্চ সংস্করণে কাজ করে বলে মনে হচ্ছে না, নিম্নলিখিত ত্রুটিটি দেওয়া সম্ভবত Usersফরাসি ভাষায় আলাদা হওয়ার কারণে । উইন্ডোজ Everyoneহিসাবে অনুবাদ করা Tout le mondeহয়, যাতে এটি সমাধানও হয় না।

Users: Le mappage entre les noms de compte et les ID de sécurité n'a pas été effectué.

যা গুগল অনুবাদ করে

Users: The mapping between account names and security IDs was not performed.

প্রশ্ন

উইন্ডোজের বিভিন্ন ভাষা সংস্করণ জুড়ে কাজ করতে পারে এমন কোনও কমান্ডের সাহায্যে আমি কোনও ফোল্ডার সেট করতে এবং এর সমস্ত বিষয়বস্তুগুলির পুনরাবৃত্তভাবে সমস্ত ব্যবহারকারীর জন্য সম্পূর্ণ অনুমতি থাকতে পারি?

ওয়েব জুড়ে থেকে সামগ্রী

মূলত একইরকম সমস্যাযুক্ত এই পৃষ্ঠাটি কীভাবে জার্মান এবং ফরাসী ভাষায় Everyoneপরিণত Jederহয় সে সম্পর্কে আলোচনা করে Tout le monde


2
শুধু এসআইডি ব্যবহার করুন: icacls C:\FullyAccessibleFolder /grant S-1-5-32-545:(OI)(CI)F সর্বত্র কাজ করে।
বেন

2
@ বেন, এটি হওয়া উচিত icacls C:\folder /grant *S-1-5-32-545:(OI)(CI)F, আপনি নক্ষত্রটি ছেড়ে গেছেন।
হ্যারি জনস্টন

উত্তর:


10

ফরাসি সংস্করণগুলিতে কাজ করে না, সম্ভবত Usersপৃথক হওয়ার কারণে

আপনার কাছে নীচে বিস্তারিত তিনটি বিকল্প রয়েছে:

  1. অনুবাদকৃত নাম পেতে ল্যাঙ্গুয়েজ পোর্টালটি ব্যবহার করুন

  2. Usersএসআইডি থেকে স্থানীয়করণের নামটি পুনরুদ্ধার করুন

  3. Usersসাথে এসআইডি ব্যবহার করুনicacls


বিকল্প 1: ভাষা পোর্টাল ব্যবহার করুন (মাইক্রোসফ্ট টার্মিনোলজির জন্য প্রচলিত সংস্থান)

ব্যবহারকারীদের জন্য অনুসন্ধান ফিরে আসে:

স্থানীয়করণ মাইক্রোসফ্ট পণ্যগুলিতে অনুবাদ

    English Translation         Product
    Users   Utilisateurs        Windows 7
    Users   des utilisateurs    Windows 7
    Users   Utilisateurs        Windows 8 Modern Voice
    Users   Utilisateurs        Windows 8
    Users   Utilisateurs        Windows 8.1
    USERS   UTILISATEURS        Windows 8.1
    Users   Utilisateurs        Windows 10
    Users   des utilisateurs    Windows 10
    Users   Utilisateurs        Windows 10 Anniversary Update
    users   utilisateurs        Windows 10 Anniversary Update

এটি পরামর্শ দেয় যে নিম্নলিখিত কমান্ডটি কাজ করতে পারে:

icacls C:\FullyAccessibleFolder /grant Utilisateurs:(OI)(CI)F

বিকল্প 2: Usersএসআইডি ( S-1-5-32-545) থেকে স্থানীয়করণের নামটি পুনরুদ্ধার করুন

এসআইডি: এস -1-5-32-545

নাম: ব্যবহারকারী

বর্ণনা: একটি অন্তর্নির্মিত গ্রুপ অপারেটিং সিস্টেমের প্রাথমিক ইনস্টলেশন হওয়ার পরে একমাত্র সদস্য হলেন প্রামাণিক ব্যবহারকারী গ্রুপ Users যখন কোনও কম্পিউটার কোনও ডোমেনে যোগদান করে, তখন ডোমেন ব্যবহারকারী গ্রুপটি কম্পিউটারে ব্যবহারকারীদের গোষ্ঠীতে যুক্ত হয় added

উত্স উইন্ডোজ অপারেটিং সিস্টেমের সুপরিচিত সুরক্ষা শনাক্তকারী

স্থানীয়করণ করা Usersগোষ্ঠীর নাম পুনরুদ্ধার করতে :

এই সাধারণ স্ক্রিপ্ট আপনাকে (S-1-5-32-545)প্রদত্ত পিসিতে 'ব্যবহারকারী' গোষ্ঠীর প্রকৃত নাম দেবে :

    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
    Set objAccount = objWMIService.Get ("Win32_SID.SID='S-1-5-32-545'")
    Wscript.Echo objAccount.AccountName

এটি ভিবিএস এক্সটেনশন সহ একটি ফাইলে রাখুন (আসুন ধরে নেওয়া যাক usersName.vbs)।

এখন চালান:

echo Y|for /f "delims=" %i in ('cscript -Nologo usersName.vbs') do cacls foldername /G "%i":F

উত্স Cacls, উইন্ডোজ 7, পূর্ণ অনুমতি, স্থানীয় নাম দ্বারা wmz


বিকল্প 3: Usersসাথে এসআইডি ব্যবহার করুনicacls

নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

icacls C:\FullyAccessibleFolder /grant *S-1-5-32-545:(OI)(CI)F

উত্স মন্তব্য হ্যারি জনস্টন দ্বারা


আমি ডেভিডপস্টিলের কাছ থেকে উত্তরটি গ্রহণ করেছি কারণ এটি সত্যিকারের কমান্ড লাইন পদ্ধতিতে করে, যা ব্যাচ বা পিএস স্ক্রিপ্টগুলি ব্যবহার করার সময় দুর্দান্ত। শেষ পর্যন্ত আমি আসলে সি # তে একটু এক্সিকিউটেবল তৈরি করেছিলাম যা কেবল একটি পথ নেয় এবং আমার যা প্রয়োজন তা ঠিক করে দেয়। এটি এখানে উত্তরগুলির মতো কাস্টমাইজযোগ্য নয় এবং এর জন্য নেট নেট ফ্রেমওয়ার্ক প্রয়োজন, তবে এটি আমার নির্দিষ্ট উদ্দেশ্যটির সাথে খুব ভাল মানায়। যদি কেউ আগ্রহী হন তবে আমি এখানে সি # কোডটির ভিত্তি দিয়ে শেষ করছি। stackoverflow.com/a/35461832/1639615
Geesh_SO

xcaclsআপনি ডাউনলোড করতে পারেন এমন একটি স্ক্রিপ্ট বলে মনে হচ্ছে। কোন দরকার নাই; icaclsউইন্ডোজ মধ্যে নির্মিত এবং একই কাজ করতে পারেন।
হ্যারি জনস্টন

@ হ্যারি জোনস্টন সঠিক, তবে আমার উত্তরটি দেখিয়েছে যে কীভাবে স্থানীয় বর্ণিত সংস্করণটি পুনরুদ্ধার করা যায় Users... আমি উত্তরটি পরিষ্কার করেছি কারণ আমাদের xaclsউদ্ধৃত সমাধানের অংশটির প্রয়োজন নেই ।
ডেভিডপস্টিল

@ হারি জোনস্টন আমি আপনাকে icaclsসরাসরি credit ণ দিয়ে ব্যবহার করে যুক্ত করেছি ।
DavidPostill

7

আপনাকে এডি-গ্রুপটির নাম দ্বারা নয়, এসআইডি নম্বর দ্বারা নির্দিষ্ট করতে হবে।
"EveryOne", "ডোমেন ব্যবহারকারী" ইত্যাদির মতো স্ট্যান্ডার্ড গ্রুপগুলির জন্য এখানে স্ট্যান্ডার্ডযুক্ত এসআইডি নম্বর রয়েছে, যা এমএসডিএন পৃষ্ঠায় সুপরিচিত সুরক্ষা সনাক্তকারী (এসআইডি) পাওয়া যাবে

নিম্নলিখিত সবচেয়ে সাধারণ আপেক্ষিক সনাক্তকারী হয়।

এখানে চিত্র বর্ণনা লিখুন

একটি এসআইডি এর কাঠামো নিম্নলিখিত হিসাবে বর্ণনা করা হয়:

স্ট্যান্ডার্ড স্বরলিপি ব্যবহার করে এসআইডিগুলি বাইনারি থেকে স্ট্রিং ফর্ম্যাটে রূপান্তরিত করার সময় একটি এসআইডি এর উপাদানগুলি ভিজ্যুয়ালাইজ করা সহজ:

SRX-Y1-Y2-yn-1-yn

    Component                   Definition

    S                         Indicates that the string is a SID
    R                         Revision level
    X                         Identifier authority value
    Y            A series of subauthority values, where n is the number of values

উদাহরণস্বরূপ, অন্তর্নির্মিত প্রশাসক গোষ্ঠীর জন্য এসআইডিটি নিম্নোক্ত স্ট্রিং হিসাবে মানকযুক্ত এসআইডি নোটেশনে উপস্থাপিত হয়:

এস-1-5-32-544

এই এসআইডিটির চারটি উপাদান রয়েছে:

  • একটি পুনর্বিবেচনা স্তর (1)

  • একটি সনাক্তকারী কর্তৃপক্ষের মান (5, এনটি কর্তৃপক্ষ)

  • একটি ডোমেন সনাক্তকারী (32, বিল্টিন)

  • আপেক্ষিক শনাক্তকারী (544, প্রশাসক)

সুরক্ষা সনাক্তকারীরা কীভাবে কাজ করে


এটি উল্লেখযোগ্য যে সমস্ত ব্যবহারকারীরা ডিফল্টরূপে ব্যবহারকারী গোষ্ঠীর অংশ। সুতরাং আপনি যদি সমস্ত ব্যবহারকারীর অ্যাকাউন্টগুলিতে "সম্পূর্ণ অ্যাক্সেস" দিতে চান, কেবল এসআইডি ব্যবহার করুন S-1-5-32-544এবং তারপরে প্রশ্নে থাকা ফাইল বা ফোল্ডারের জন্য গ্রুপটিকে সমস্ত অনুমতি দেওয়ার জন্য এসিএল সংশোধন করুন
রামহাউন্ড

@ রামহাউন্ড 544প্রশাসক, 545ব্যবহারকারীরা is
DavidPostill

@ ডেভিডপস্টিল - হ্যাঁ; অনুলিপি অনুলিপি করুন
রামহাউন্ড

@ রামহাউন্ড আরও ভাল। ফোনে থাকাকালীন আমি সবচেয়ে ভাল করতে পেরেছিলাম। সম্পাদনার জন্য ধন্যবাদ।
টনি

3

আপনি যদি পাওয়ারশেল স্ক্রিপ্টগুলি পছন্দ করেন তবে এসআইডিগুলির জন্য নম্বর মনে রাখতে সমস্যা হয়:

$acl = Get-Acl .\myfolder
$sid = New-Object System.Security.Principal.SecurityIdentifier ([System.Security.Principal.WellKnownSidType]::BuiltinUsersSid, $null)
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule ($sid, 'FullControl', 'ObjectInherit,ContainerInherit', 'None', 'Allow')
$acl.AddAccessRule($rule)
Set-Acl .\myfolder $acl

আমি জানি যে দেখতে অনেকটা টাইপিংয়ের মতো, তবে এই দীর্ঘ শনাক্তকারীগুলি ট্যাব সমাপ্ত:

  • System.Security.Principal.SecurityIdentifier থেকে securityi
  • System.Security.Principal.WellKnownSidType থেকে wellknownsi
  • System.Security.AccessControl.FileSystemAccessRule থেকে filesystem

এই সমস্ত স্ট্রিংগুলি। নেট সনাক্তকারী, সুতরাং সেগুলি স্থানীয়করণ হয় না।

আপনি যদি Everyoneপরিবর্তে এসআইডি চান তবে তার WorldSidজায়গায় ব্যবহার করুন BuiltinUsersSid। সমস্ত WellKnownSidTypeবিকল্পের তালিকা পেতে , এমএসডিএন দেখুন বা এই আদেশটি চালান:

[System.Security.Principal.WellKnownSidType].DeclaredFields | select Name

সিড ছাড়াই এবং ব্যবহার না করেই ফাইলসিস্টেমএ্যাকসেসরুলgroup names ?
কিকিনেট

@ কিকিনেট আপনি যা জিজ্ঞাসা করছেন তা আমি পুরোপুরি নিশ্চিত নই, তবে আপনি যদি কোনও মানব-পঠনযোগ্য গ্রুপের নাম নির্দিষ্ট করতে পছন্দ করেন তবে সেটি আর ভাষা-স্বতন্ত্র হবে না। আপনি যদি সাথে এসেছেন ঠিক আছে, আপনি অপসারণ করতে পারেন $sid =লাইন এবং প্রতিস্থাপন $sidমধ্যে $rule =একটি স্ট্রিং গ্রুপ চিহ্নিতকরণের সঙ্গে সঙ্গতিপূর্ণ।
বেন এন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.